$_val) { if ($_val=="Y") array_push($aval, str_replace("_",".",$_key)); } $tsql = (count($aval)==0) ? "FALSE" : "No_Pajak IN ('".implode("','",$aval)."')"; $pre = new CSV(); $pre->add_field("FK"); $pre->add_field("KD_JENIS_TRANSAKSI"); $pre->add_field("FG_PENGGANTI"); $pre->add_field("NOMOR_FAKTUR"); $pre->add_field("MASA_PAJAK"); $pre->add_field("TAHUN_PAJAK"); $pre->add_field("TANGGAL_FAKTUR"); $pre->add_field("NPWP"); $pre->add_field("NAMA"); $pre->add_field("ALAMAT_LENGKAP"); $pre->add_field("JUMLAH_DPP"); $pre->add_field("JUMLAH_PPN"); $pre->add_field("JUMLAH_PPNBM"); $pre->add_field("ID_KETERANGAN_TAMBAHAN"); $pre->add_field("FG_UANG_MUKA"); $pre->add_field("UANG_MUKA_DPP"); $pre->add_field("UANG_MUKA_PPN"); $pre->add_field("UANG_MUKA_PPNBM"); $pre->add_field("REFERENSI"); $pre->add_field("KODE_DOKUMEN_PENDUKUNG"); $pre->add_value("LT","NPWP","NAMA","JALAN","BLOK","NOMOR","RT","RW","KECAMATAN","KELURAHAN","KABUPATEN","PROPINSI","KODE_POS","NOMOR_TELEPON","","","","","",""); $pre->add_value("OF","KODE_OBJEK","NAMA","HARGA_SATUAN","JUMLAH_BARANG","HARGA_TOTAL","DISKON","DPP","PPN","TARIF_PPNBM","PPNBM","","","","","","","","",""); $db->Query("SELECT P.*,DATE_FORMAT(P.Tgl_Pajak,'%Y') Tahun_Pajak,DATE_FORMAT(P.Tgl_Pajak,'%c') Bulan_Pajak,DATE_FORMAT(P.Tgl_Pajak,'%d/%m/%Y') Tgl_Faktur,IF(P.OutletID=0,P.Alamat_NPWP,O.Alamat_NPWP) Alamat_NPWP2 FROM (SELECT * FROM inv_jual_pajak WHERE ".$tsql.") P LEFT JOIN para_outlet O ON (P.OutletID=O.OutletID) ORDER BY P.No_Pajak"); while ($db->Next()) { $pre->add_value("FK", "01", $jenis_fp, rapi_fp($db->Row("No_Pajak")), $db->Row("Bulan_Pajak"), $db->Row("Tahun_Pajak"), $db->Row("Tgl_Faktur"), $db->Row("No_NPWP"), $db->Row("Nama_NPWP"), rapi_alamat($db->Row("Alamat_NPWP2")), $db->Row("Jumlah_DPP"), $db->Row("Jumlah_PPN"), 0, "", 0, 0, 0, 0, "", ""); $db2->Query("SELECT P.*,R.Nama_Rasa,D.Qty,D.Harga,D.Total_Jual,D.Total_Diskon,ROUND((D.Total_Jual-D.Total_Diskon)*D.PPN,4) Total_PPN FROM (SELECT InvID,RasaID,SUM(-Qty) Qty,ROUND(Harga_Jual/(1+PPN),2) Harga,SUM(-Qty*ROUND(Harga_Jual/(1+PPN),2)) Total_Jual,SUM(IF(Total_Diskon=(-Qty*Harga_Jual),-Qty*ROUND(Harga_Jual/(1+PPN),2),ROUND(Total_Diskon/(1+PPN),2))) Total_Diskon,PPN FROM inv_detail WHERE No_Ref IN (SELECT No_Jual FROM inv_jual WHERE No_Pajak='".$db->Row("No_Pajak")."') AND Qty<>0 GROUP BY InvID, RasaID, SatuanID ORDER BY InvID, RasaID, SatuanID) D LEFT JOIN inv_produk P ON (D.InvID=P.InvID) LEFT JOIN para_rasa R ON (D.RasaID=R.RasaID) WHERE P.Pajak=1 ORDER BY P.Nama_Produk"); while ($db2->Next()) { $pre->add_value("OF", $db2->Row("Kode_Produk"), $db2->Row("Nama_Produk").data_rasafp($db2->Row("Nama_Rasa")), $db2->Row("Harga"), $db2->Row("Qty"), $db2->Row("Total_Jual"), $db2->Row("Total_Diskon"), $db2->Row("Total_Jual")-$db2->Row("Total_Diskon"), $db2->Row("Total_PPN"), "0", "0", "", "", "", "", "", "", "", "", ""); } $db2->Query("UPDATE inv_jual_pajak SET XFP=XFP+1 WHERE No_Pajak='".$db->Row("No_Pajak")."' LIMIT 1"); } $pre->download("FP-".Param::Get("Tgl_From").".csv"); } else if ( $data == "detail" ) { $tcari = trim(Param::Get("Cari_FP")); $tsql = ($tcari=="") ? "" : " AND CONCAT(No_Pajak,No_NPWP,Nama_NPWP,DATE_FORMAT(Tgl_Pajak,'%d-%m-%Y')) LIKE '%".$tcari."%'"; $tot_fp = 50; $db->Query("SELECT COUNT(*) FP FROM inv_jual_pajak P WHERE P.Tgl_Pajak BETWEEN '".$tgl_from."' AND '".$tgl_to."'".$tsql); if ($db->Next()) $tot_fp = $db->RowFloat("FP", 50); $obj = new Table($db); $obj->set_query("SELECT *,'N' Nota FROM inv_jual_pajak WHERE Tgl_Pajak BETWEEN '".$tgl_from."' AND '".$tgl_to."'".$tsql); $obj->set_query_footer("SELECT SUM(Jumlah_DPP) Jumlah_DPP,SUM(Jumlah_PPN) Jumlah_PPN FROM inv_jual_pajak WHERE Tgl_Pajak BETWEEN '".$tgl_from."' AND '".$tgl_to."'".$tsql); $obj->add_field("No_Pajak", "NSFP", "c"); $obj->add_field("Tgl_Pajak", "Tgl. FP", "c", "sqltgl"); $obj->add_field("No_NPWP", "NPWP", "l"); $obj->add_field("Nama_NPWP", "Nama NPWP", "awr"); $obj->add_field("Jumlah_DPP", "Jumlah DPP", "r", "rupiah", "rupiah"); $obj->add_field("Jumlah_PPN", "Jumlah PPN", "r", "rupiah", "rupiah"); $obj->add_field("XFP", "CSV", "c"); $obj->set_field_order("No_Pajak", "A"); $obj->add_row_checkbox("No_Pajak", "Nota", ["Y","N"]); $obj->set_func_navi("CSVFPJS.data_query('detail')"); $ajson[] = $obj->json_table("divDetail", $tot_fp); } else if ( $data == "default") { $form = new Form($db); $tdari = $form->datebox("_", "Tgl_From", tgl_ymd(), true, false); $tsamp = $form->datebox("_", "Tgl_To", tgl_ymd(), true, false); echo '