예제 #1
0
 public function actionMutasiKasPerBank()
 {
     if (Yii::app()->request->isAjaxRequest) {
         return;
     }
     if (isset($_POST) && !empty($_POST)) {
         $format = $_POST['format'];
         $start_date = $_POST['trans_date_mulai'];
         $end_date = $_POST['trans_date_sampai'];
         $bank = $this->loadModel($_POST['bank_act'], 'MtBankAccounts');
         $nama_bank = $bank->bank_account_name;
         $start = 1;
         $file_name = 'MutasiKasPerBank';
         $worksheet_name = 'Mutasi Kas Per Bank';
         $objPHPExcel = new PHPExcel();
         $this->header($objPHPExcel, $start, $worksheet_name, "MUTASI KAS PER BANK");
         $objPHPExcel->setActiveSheetIndex(0)->mergeCells("A{$start}:F{$start}")->setCellValue("A{$start}", "Kas/Bank : " . $nama_bank)->getStyle("A{$start}")->getFont()->setSize(12)->setBold(true);
         $start++;
         $objPHPExcel->setActiveSheetIndex(0)->mergeCells("A{$start}:F{$start}")->setCellValue("A{$start}", "Dari tanggal " . sql2long_date($start_date) . " sampai tanggal " . sql2long_date($end_date))->getStyle("A{$start}")->getFont()->setSize(12)->setBold(true);
         $objPHPExcel->getActiveSheet()->setTitle($worksheet_name);
         $start++;
         $start++;
         $start_body = $start;
         $objPHPExcel->setActiveSheetIndex(0)->setCellValue("A{$start}", "Type")->setCellValue("B{$start}", "Ref. Dokumen")->setCellValue("C{$start}", "Tanggal")->setCellValue("D{$start}", "Debit")->setCellValue("E{$start}", "Kredit")->setCellValue("F{$start}", "Saldo")->getStyle("A{$start}:F{$start}")->getFont()->setBold(true);
         $start++;
         $arr = Mt::get_bank_trans_view();
         foreach ($arr['data'] as $row) {
             $objPHPExcel->setActiveSheetIndex(0)->setCellValue("A{$start}", $row['type'])->setCellValue("B{$start}", $row['ref'])->setCellValue("C{$start}", sql2date($row['tgl']))->setCellValue("D{$start}", $row['debit'])->setCellValue("E{$start}", $row['kredit'])->setCellValue("F{$start}", $row['neraca']);
             $start++;
         }
         $end_body = $start - 1;
         $styleArray = array('borders' => array('allborders' => array('style' => PHPExcel_Style_Border::BORDER_THIN)));
         $objPHPExcel->setActiveSheetIndex(0)->getStyle("A{$start_body}:F{$end_body}")->applyFromArray($styleArray);
         $start_row = $start_body + 1;
         if ($format == 'excel') {
             $objPHPExcel->setActiveSheetIndex(0)->getStyle("D{$start_row}:F{$end_body}")->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_ACCOUNTING);
         } else {
             $objPHPExcel->setActiveSheetIndex(0)->getStyle("D{$start_body}:F{$end_body}")->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
         }
         $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension("A")->setAutoSize(true);
         $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension("B")->setAutoSize(true);
         $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension("C")->setAutoSize(true);
         $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension("D")->setAutoSize(true);
         $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension("E")->setAutoSize(true);
         $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension("F")->setAutoSize(true);
         $this->footer($objPHPExcel, $start, $file_name, $format, "Mutasi Kas Per Bank");
         Yii::app()->end();
     }
 }
 public function actionView()
 {
     echo CJSON::encode(Mt::get_bank_trans_view());
     Yii::app()->end();
 }