Example #1
0
 function ExportData()
 {
     $utf8 = strtolower(EW_CHARSET) == "utf-8";
     $bSelectLimit = FALSE;
     // Load recordset
     if ($bSelectLimit) {
         $this->TotalRecs = $this->SelectRecordCount();
     } else {
         if ($rs = $this->LoadRecordset()) {
             $this->TotalRecs = $rs->RecordCount();
         }
     }
     $this->StartRec = 1;
     $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 (!$rs) {
         header("Content-Type:");
         // Remove header
         header("Content-Disposition:");
         $this->ShowMessage();
         return;
     }
     $this->ExportDoc = ew_ExportDocument($this, "v");
     $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 = "";
     $sHeader = $this->PageHeader;
     $this->Page_DataRendering($sHeader);
     $Doc->Text .= $sHeader;
     $this->ExportDocument($Doc, $rs, $this->StartRec, $this->StopRec, "view");
     // Export detail records (detalle_deudas)
     if (EW_EXPORT_DETAIL_RECORDS && in_array("detalle_deudas", explode(",", $this->getCurrentDetailTable()))) {
         global $detalle_deudas;
         if (!isset($detalle_deudas)) {
             $detalle_deudas = new cdetalle_deudas();
         }
         $rsdetail = $detalle_deudas->LoadRs($detalle_deudas->GetDetailFilter());
         // Load detail records
         if ($rsdetail && !$rsdetail->EOF) {
             $ExportStyle = $Doc->Style;
             $Doc->SetStyle("h");
             // Change to horizontal
             if ($this->Export != "csv" || EW_EXPORT_DETAIL_RECORDS_FOR_CSV) {
                 $Doc->ExportEmptyRow();
                 $detailcnt = $rsdetail->RecordCount();
                 $detalle_deudas->ExportDocument($Doc, $rsdetail, 1, $detailcnt);
             }
             $Doc->SetStyle($ExportStyle);
             // Restore
             $rsdetail->Close();
         }
     }
     // Export detail records (pagos)
     if (EW_EXPORT_DETAIL_RECORDS && in_array("pagos", explode(",", $this->getCurrentDetailTable()))) {
         global $pagos;
         if (!isset($pagos)) {
             $pagos = new cpagos();
         }
         $rsdetail = $pagos->LoadRs($pagos->GetDetailFilter());
         // Load detail records
         if ($rsdetail && !$rsdetail->EOF) {
             $ExportStyle = $Doc->Style;
             $Doc->SetStyle("h");
             // Change to horizontal
             if ($this->Export != "csv" || EW_EXPORT_DETAIL_RECORDS_FOR_CSV) {
                 $Doc->ExportEmptyRow();
                 $detailcnt = $rsdetail->RecordCount();
                 $pagos->ExportDocument($Doc, $rsdetail, 1, $detailcnt);
             }
             $Doc->SetStyle($ExportStyle);
             // Restore
             $rsdetail->Close();
         }
     }
     $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
     if ($this->Export == "email") {
         echo $this->ExportEmail($Doc->Text);
     } else {
         $Doc->Export();
     }
 }