public function genDataReport($httpData)
 {
     G::loadClass('pmTable');
     require_once 'classes/model/AdditionalTables.php';
     $result->message = '';
     $result->success = true;
     $additionalTables = new AdditionalTables();
     $table = $additionalTables->load($httpData->id);
     if ($table['PRO_UID'] != '') {
         $additionalTables->populateReportTable($table['ADD_TAB_NAME'], pmTable::resolveDbSource($table['DBS_UID']), $table['ADD_TAB_TYPE'], $table['PRO_UID'], $table['ADD_TAB_GRID'], $table['ADD_TAB_UID']);
         $result->message = 'generated for table ' . $table['ADD_TAB_NAME'];
     }
     return $result;
 }
             } else {
                 //editing
                 $field['FLD_UID'] = $fieldUid;
                 $aFields[$fieldUid] = $field;
             }
         }
         if ($data['REP_TAB_UID'] == '') {
             //create a new report table
             $oAdditionalTables->createTable($data['REP_TAB_NAME'], $data['REP_TAB_CONNECTION'], $aFields);
         } else {
             //editing
             //print_R($aFields);
             $oAdditionalTables->updateTable($data['REP_TAB_NAME'], $data['REP_TAB_CONNECTION'], $aFields, $oldFields);
         }
         $oAdditionalTables->createPropelClasses($data['REP_TAB_NAME'], $repTabClassName, $fieldsList, $addTabUid);
         $oAdditionalTables->populateReportTable($data['REP_TAB_NAME'], $data['REP_TAB_CONNECTION'], $data['REP_TAB_TYPE'], $fieldsList, $data['PRO_UID'], $data['REP_TAB_GRID']);
         $result->success = true;
     } catch (Exception $e) {
         $result->success = false;
         $result->msg = $e->getMessage();
         $result->trace = $e->getTraceAsString();
     }
     echo G::json_encode($result);
     break;
 case 'delete':
     require_once 'classes/model/AdditionalTables.php';
     G::LoadClass('reportTables');
     $rows = G::json_decode($_REQUEST['rows']);
     $rp = new reportTables();
     $at = new AdditionalTables();
     try {