Example #1
0
 function ExportData()
 {
     $utf8 = strtolower(EW_CHARSET) == "utf-8";
     $bSelectLimit = EW_SELECT_LIMIT;
     // Load recordset
     if ($bSelectLimit) {
         $this->TotalRecs = $this->SelectRecordCount();
     } else {
         if (!$this->Recordset) {
             $this->Recordset = $this->LoadRecordset();
         }
         $rs =& $this->Recordset;
         if ($rs) {
             $this->TotalRecs = $rs->RecordCount();
         }
     }
     $this->StartRec = 1;
     // Export all
     if ($this->ExportAll) {
         set_time_limit(EW_EXPORT_ALL_TIME_LIMIT);
         $this->DisplayRecs = $this->TotalRecs;
         $this->StopRec = $this->TotalRecs;
     } else {
         // Export one page only
         $this->SetUpStartRec();
         // Set up start record position
         // Set the last record to display
         if ($this->DisplayRecs <= 0) {
             $this->StopRec = $this->TotalRecs;
         } else {
             $this->StopRec = $this->StartRec + $this->DisplayRecs - 1;
         }
     }
     if ($bSelectLimit) {
         $rs = $this->LoadRecordset($this->StartRec - 1, $this->DisplayRecs <= 0 ? $this->TotalRecs : $this->DisplayRecs);
     }
     if (!$rs) {
         header("Content-Type:");
         // Remove header
         header("Content-Disposition:");
         $this->ShowMessage();
         return;
     }
     $this->ExportDoc = ew_ExportDocument($this, "h");
     $Doc =& $this->ExportDoc;
     if ($bSelectLimit) {
         $this->StartRec = 1;
         $this->StopRec = $this->DisplayRecs <= 0 ? $this->TotalRecs : $this->DisplayRecs;
     } else {
         //$this->StartRec = $this->StartRec;
         //$this->StopRec = $this->StopRec;
     }
     // Call Page Exporting server event
     $this->ExportDoc->ExportCustom = !$this->Page_Exporting();
     $ParentTable = "";
     // Export master record
     if (EW_EXPORT_MASTER_RECORD && $this->GetMasterFilter() != "" && $this->getCurrentMasterTable() == "hoja_rutas") {
         global $hoja_rutas;
         if (!isset($hoja_rutas)) {
             $hoja_rutas = new choja_rutas();
         }
         $rsmaster = $hoja_rutas->LoadRs($this->DbMasterFilter);
         // Load master record
         if ($rsmaster && !$rsmaster->EOF) {
             $ExportStyle = $Doc->Style;
             $Doc->SetStyle("v");
             // Change to vertical
             if ($this->Export != "csv" || EW_EXPORT_MASTER_RECORD_FOR_CSV) {
                 $Doc->Table =& $hoja_rutas;
                 $hoja_rutas->ExportDocument($Doc, $rsmaster, 1, 1);
                 $Doc->ExportEmptyRow();
                 $Doc->Table =& $this;
             }
             $Doc->SetStyle($ExportStyle);
             // Restore
             $rsmaster->Close();
         }
     }
     // Export master record
     if (EW_EXPORT_MASTER_RECORD && $this->GetMasterFilter() != "" && $this->getCurrentMasterTable() == "tipo_gastos") {
         global $tipo_gastos;
         if (!isset($tipo_gastos)) {
             $tipo_gastos = new ctipo_gastos();
         }
         $rsmaster = $tipo_gastos->LoadRs($this->DbMasterFilter);
         // Load master record
         if ($rsmaster && !$rsmaster->EOF) {
             $ExportStyle = $Doc->Style;
             $Doc->SetStyle("v");
             // Change to vertical
             if ($this->Export != "csv" || EW_EXPORT_MASTER_RECORD_FOR_CSV) {
                 $Doc->Table =& $tipo_gastos;
                 $tipo_gastos->ExportDocument($Doc, $rsmaster, 1, 1);
                 $Doc->ExportEmptyRow();
                 $Doc->Table =& $this;
             }
             $Doc->SetStyle($ExportStyle);
             // Restore
             $rsmaster->Close();
         }
     }
     $sHeader = $this->PageHeader;
     $this->Page_DataRendering($sHeader);
     $Doc->Text .= $sHeader;
     $this->ExportDocument($Doc, $rs, $this->StartRec, $this->StopRec, "");
     $sFooter = $this->PageFooter;
     $this->Page_DataRendered($sFooter);
     $Doc->Text .= $sFooter;
     // Close recordset
     $rs->Close();
     // Export header and footer
     $Doc->ExportHeaderAndFooter();
     // Call Page Exported server event
     $this->Page_Exported();
     // Clean output buffer
     if (!EW_DEBUG_ENABLED && ob_get_length()) {
         ob_end_clean();
     }
     // Write debug message if enabled
     if (EW_DEBUG_ENABLED) {
         echo ew_DebugMsg();
     }
     // Output data
     $Doc->Export();
 }