getDefaultStyle()->getFont()->setName('Arial'); $objPHPExcel->getDefaultStyle()->getFont()->setSize(10); $objPHPExcel->getDefaultStyle()->getAlignment()->setWrapText(true); $objPHPExcel->getSheet(0)->getColumnDimension('A')->setWidth(5); $objPHPExcel->getSheet(0)->getColumnDimension('B')->setWidth(30); $objPHPExcel->getSheet(0)->getColumnDimension('C')->setWidth(25); $objPHPExcel->getSheet(0)->getColumnDimension('D')->setWidth(26); $objPHPExcel->getSheet(0)->getColumnDimension('E')->setWidth(33); $objPHPExcel->getSheet(0)->getColumnDimension('F')->setWidth(75); $objPHPExcel->getSheet(0)->getColumnDimension('G')->setWidth(20); $objPHPExcel->getSheet(0)->getColumnDimension('H')->setWidth(20); $objPHPExcel->getSheet(0)->getColumnDimension('I')->setWidth(20); $objPHPExcel->getSheet(0)->getColumnDimension('J')->setWidth(20); $objPHPExcel->getSheet(0)->getColumnDimension('K')->setWidth(11); $objPHPExcel->getSheet(0)->getColumnDimension('L')->setWidth(11); $objPHPExcel->getSheet(0)->getColumnDimension('M')->setWidth(29); $objPHPExcel->getSheet(0)->getColumnDimension('N')->setWidth(11); $styleBold = array('font' => array('bold' => true)); $objPHPExcel->getSheet(0)->getStyle('A1:N1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->getSheet(0)->getStyle('A1:N1')->applyFromArray($styleBold); $objPHPExcel->getSheet(0)->getRowDimension('1')->setRowHeight(25); $objPHPExcel->getSheet(0)->setTitle('Proses Pembuatan Berkas'); $objPHPExcel->getSheet(0) ->setCellValue('A1', 'No') ->setCellValue('B1', 'Penyedia') ->setCellValue('C1', 'No SP/SPK/Kwi') ->setCellValue('D1', 'Berlaku') ->setCellValue('E1', 'Kegiatan') ->setCellValue('F1', 'Pengadaan') ->setCellValue('G1', 'Jenis') ->setCellValue('H1', 'Nilai Pekerjaan') ->setCellValue('I1', 'Termin Terbayar') ->setCellValue('J1', 'Penyerapan') ->setCellValue('K1', 'Adminers') ->setCellValue('L1', 'Nota dinas') ->setCellValue('M1', 'No Nota dinas') ->setCellValue('N1', 'TKDN'); $query = " SELECT p.id,p.no_sp,p.nilai_sp,r.st_termin,STRING_AGG(CAST (l.data_ke AS TEXT),',') as datake,SUM(l.nilai_pelunasan),COALESCE(n.nama,p.cad1) as rekanan,p.tgl_mulai_sp,p.tgl_selesai_sp, s.sub_kegiatan,s.kegiatan,p.kegiatan_pengadaan, COALESCE(u.nama,p.user_nama) as adminers, (SELECT COUNT(*) FROM nota_dinas n LEFT OUTER JOIN list_relasi p1 ON (p1.nota_dinas_id=n.id) WHERE p1.pekerjaan_id=p.id) as jml_nodin, (SELECT STRING_AGG(n.no_surat,', ') FROM nota_dinas n LEFT OUTER JOIN list_relasi p1 ON (p1.nota_dinas_id=n.id) WHERE p1.pekerjaan_id=p.id) as no_nodin,COALESCE(l2.tot,0) as termin_terbayar,p.user_nama,p.tkdn FROM pekerjaan p INNER JOIN sub_kegiatan s ON (s.id=p.sub_kegiatan_id) LEFT OUTER JOIN vr_realisasi r ON (p.id=r.pekerjaan_id) LEFT OUTER JOIN vr_pelunasan l ON (r.id=l.vr_realisasi_id) LEFT OUTER JOIN rekanan n ON (n.id=p.rekanan_id) LEFT OUTER JOIN data_user u ON (u.id=p.adminers_id) LEFT OUTER JOIN ( SELECT p1.no_sp,SUM(l1.nilai_pelunasan) as tot FROM pekerjaan p1 INNER JOIN sub_kegiatan s1 ON (s1.id=p1.sub_kegiatan_id) INNER JOIN vr_realisasi r1 ON (p1.id=r1.pekerjaan_id) INNER JOIN vr_pelunasan l1 ON (r1.id=l1.vr_realisasi_id) WHERE s1.thn<>'$thn' AND p1.status_setor IS NULL AND l1.id IS NOT NULL AND COALESCE(p1.no_sp,'')<>'' GROUP BY p1.no_sp ) l2 ON (l2.no_sp=p.no_sp) WHERE s.thn='$thn' AND p.status_setor IS NULL AND l.id IS NULL ".($sub_kegiatan == null ? "" : "AND s.sub_kegiatan='$sub_kegiatan'")." ".($pejabat_pengadaan_id == null ? "" : "AND s.pejabat_pengadaan_id='$pejabat_pengadaan_id'")." ".($kegiatan == null ? "" : "AND s.kegiatan='$kegiatan' AND s.rh='$rh'")." ".($kpa == null ? "" : "AND s.kpa_id='$kpa'")." ".($pptk == null ? "" : "AND s.pptk_id='$pptk'")." ".($pgn == null ? "" : "AND s.pejabat_pengadaan_id='$pgn'")." ".($kom == null ? "" : "AND s.ppkom_id='$kom'")." ".($pelaksana_kegiatan == null ? "" : "AND s.pelaksana_kegiatan_id='$pelaksana_kegiatan'")." GROUP BY p.id,r.st_termin,n.nama,s.sub_kegiatan,s.kegiatan,p.kegiatan_pengadaan,u.nama,l2.tot,p.tkdn ORDER BY p.id ASC "; $hasil = pg_query($query); $baris = 2; $a=1; while ($r = pg_fetch_array($hasil)) { if (($r['tgl_mulai_sp']==null) || ($r['tgl_mulai_sp']=='1970-01-01 00:00:00')) {$vv='';} else { $vv=date('d-m-Y',strtotime($r['tgl_mulai_sp'])).' s/d '.date('d-m-Y',strtotime($r['tgl_selesai_sp'])); } if (($r['st_termin']=='non-termin') || ($r['st_termin']==NULL)) {$trm='';} else {$trm='TERMIN '.$r['datake'];} if ($r['user_nama']=='HUTANG TERMIN') {$ktmu='PEKERJAAN TERMIN TAHUN LALU';} else {$ktmu='';} $objPHPExcel->getSheet(0) ->setCellValue('A'.$baris, $a) ->setCellValue('B'.$baris, $r['rekanan']) ->setCellValueExplicit('C'.$baris, $r['no_sp'], PHPExcel_Cell_DataType::TYPE_STRING) ->setCellValue('D'.$baris, $vv) ->setCellValue('E'.$baris, $r['sub_kegiatan']."\n".$r['kegiatan']) ->setCellValue('F'.$baris, $r['kegiatan_pengadaan']."\n".$trm) ->setCellValue('G'.$baris, $ktmu) ->setCellValueExplicit('H'.$baris, $r['nilai_sp'], PHPExcel_Cell_DataType::TYPE_NUMERIC) ->setCellValueExplicit('I'.$baris, $r['termin_terbayar'], PHPExcel_Cell_DataType::TYPE_NUMERIC) ->setCellValueExplicit('J'.$baris, $r['nilai_sp']-$r['termin_terbayar'], PHPExcel_Cell_DataType::TYPE_NUMERIC) ->setCellValue('K'.$baris, $r['adminers']) ->setCellValue('L'.$baris, $r['jml_nodin']) ->setCellValue('M'.$baris, $r['no_nodin']) ->setCellValue('N'.$baris, $r['tkdn']); /* $objPHPExcel->getSheet(0)->getStyle('F'.$baris)->getNumberFormat()->setFormatCode('#,##0'); $objPHPExcel->getSheet(0)->getStyle('D'.$baris)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->getSheet(0)->getStyle('J'.$baris)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->getSheet(0)->getStyle('K'.$baris)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->getSheet(0)->getStyle('A1:K'.$baris)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER); */ $a++; $baris++; } $objPHPExcel->getSheet(0)->getStyle('H2:H'.$baris)->getNumberFormat()->setFormatCode('#,##0'); $objPHPExcel->getSheet(0)->getStyle('I2:I'.$baris)->getNumberFormat()->setFormatCode('#,##0'); $objPHPExcel->getSheet(0)->getStyle('J2:J'.$baris)->getNumberFormat()->setFormatCode('#,##0'); $objPHPExcel->getSheet(0)->getStyle('A2:A'.$baris)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->getSheet(0)->getStyle('C2:C'.$baris)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->getSheet(0)->getStyle('D2:D'.$baris)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->getSheet(0)->getStyle('K2:K'.$baris)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->getSheet(0)->getStyle('L2:L'.$baris)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->getSheet(0)->getStyle('M2:M'.$baris)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->getSheet(0)->getStyle('A1:N'.$baris)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER); $objPHPExcel->getSheet(0)->getStyle('J2:J'.$baris)->applyFromArray($styleBold); $objPHPExcel->getSheet(0)->getStyle('G2:G'.$baris)->applyFromArray($styleBold); $objPHPExcel->getSheet(0)->getStyle('G2:G'.$baris)->getFont()->getColor()->setRGB("FE0000"); $objPHPExcel->getSheet(0)->getStyle('G2:G'.$baris)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->setActiveSheetIndex(0); header('Content-Type: application/vnd.ms-excel'); header('Content-Disposition: attachment;filename="proses_pembuatan_berkas.xls"'); header('Cache-Control: max-age=0'); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); $objWriter->save('php://output'); exit; ?>