0) { $db->Query("SELECT * FROM para_outlet WHERE OutletID='".$id_outlet."' LIMIT 1"); if ($db->Next()) $aoutlet = $db->AllRow(); } if ($id_gout > 0) { $db->Query("SELECT Nama_Grup FROM para_outlet_grup WHERE Grup_OutletID='".$id_gout."' LIMIT 1"); if ($db->Next()) $nama_gout = $db->Row("Nama_Grup"); } if ($id_grup > 0) { $db->Query("SELECT Nama_Grup FROM inv_produk_grup WHERE Grup_InvID='".$id_grup."' LIMIT 1"); if ($db->Next()) $nama_grup = $db->Row("Nama_Grup"); } if ($id_sales>0 && $id_sales<>"NON" && $id_sales<>"SEMUA") { $db->Query("SELECT Nama_Pegawai FROM para_pegawai WHERE PegID='".$id_sales."' LIMIT 1"); $nama_sales = $db->Row("Nama_Pegawai"); } if ($id_sales=="SEMUA") $nama_sales = ""; $nama_dt = ($tipedt<>"X") ? (($tipedt=="S")?"SUDAH DT":"BELUM DT") : ""; // generate report header $tglheader = "Periode : ".$tglfrom; if ($tglfrom!==$tglto) $tglheader .= " S/D ".$tglto; $tglfrom = tgl_sql2str($tglfrom); $tglto = tgl_sql2str($tglto); $qsql = ($id_outlet>0) ? " AND OutletID=".$id_outlet : ""; $qsql .= ($id_sales>0 && $id_sales<>"NON" && $id_sales<>"SEMUA") ? " AND SalesID=".$id_sales : ""; $qsql .= ($id_sales=="NON") ? " AND SalesID=0" : ""; $qsql .= ($tipedt<>"X") ? (($tipedt=="S")?" AND No_Jual IN (SELECT No_Jual FROM inv_jual_tagih_detail)":" AND No_Jual NOT IN (SELECT No_Jual FROM inv_jual_tagih_detail)") : ""; $tsql = ($id_gout>0) ? " AND O.Grup_OutletID='".$id_gout."'" : ""; $tsql .= ($id_grup>0) ? " AND P.Grup_InvID=".$id_grup : ""; if ($tsql <> "") $tsql = " WHERE ".substr($tsql, 4); if ($tipe=="R") { $xsql = "SELECT O.Nama_Outlet,SUM(J.Total_Jual-J.Total_Diskon) Total_Piutang,SUM(J.Total_Bayar) Total_Bayar, SUM(J.Total_Jual-J.Total_Diskon-J.Total_Bayar) Total_Sisa FROM (SELECT * FROM inv_jual WHERE Lunas=0 AND Rekap=1 AND (Tgl_Jual BETWEEN '".$tglfrom."' AND '".$tglto."')".$qsql.") J LEFT JOIN para_outlet O ON (J.OutletID=O.OutletID)".$tsql." GROUP BY J.OutletID ORDER BY O.Nama_Outlet"; if ($id_grup > 0) $xsql = "SELECT O.Nama_Outlet,SUM((-D.Qty*D.Harga_Jual)-D.Total_Diskon) Total_Piutang FROM (SELECT * FROM inv_jual WHERE Lunas=0 AND Rekap=1 AND (Tgl_Jual BETWEEN '".$tglfrom."' AND '".$tglto."')".$qsql.") J INNER JOIN (SELECT * FROM inv_detail WHERE Tgl_Ref BETWEEN '".$tglfrom."' AND '".$tglto."') D ON (D.No_Ref=J.No_Jual) LEFT JOIN para_outlet O ON (J.OutletID=O.OutletID) LEFT JOIN inv_produk P ON (D.InvID=P.InvID)".$tsql." GROUP BY J.OutletID ORDER BY O.Nama_Outlet"; } else { $xsql = "SELECT J.*,DATE_FORMAT(J.Tgl_Jual,'%d-%m-%Y') Tgl_Jual2,O.Nama_Outlet,J.Total_Jual-J.Total_Diskon Total_Piutang,J.Total_Jual-J.Total_Diskon-J.Total_Bayar Total_Sisa FROM (SELECT * FROM inv_jual WHERE Lunas=0 AND Rekap=1 AND (Tgl_Jual BETWEEN '".$tglfrom."' AND '".$tglto."')".$qsql.") J LEFT JOIN para_outlet O ON (J.OutletID=O.OutletID)".$tsql." ORDER BY J.No_Jual"; if ($id_grup > 0) $xsql = "SELECT J.*,DATE_FORMAT(J.Tgl_Jual,'%d-%m-%Y') Tgl_Jual2,O.Nama_Outlet,SUM((-D.Qty*D.Harga_Jual)-D.Total_Diskon) Total_Piutang FROM (SELECT * FROM inv_jual WHERE Lunas=0 AND Rekap=1 AND (Tgl_Jual BETWEEN '".$tglfrom."' AND '".$tglto."')".$qsql.") J INNER JOIN (SELECT * FROM inv_detail WHERE Tgl_Ref BETWEEN '".$tglfrom."' AND '".$tglto."') D ON (D.No_Ref=J.No_Jual) LEFT JOIN para_outlet O ON (J.OutletID=O.OutletID) LEFT JOIN inv_produk P ON (D.InvID=P.InvID)".$tsql." GROUP BY J.No_Jual ORDER BY J.No_Jual"; } $db->Query($xsql); } if ( $data == "print" ) { Report_Header("LAPORAN ".($tipe=="R"?"REKAP":"DETAIL")." PIUTANG OUTLET", $tglheader); $pre = new PrintHTML(); $pre->set_css("garis"); if ($tipe=="R") { $nkol = 3; $pre->add_field("NO.",10,"C"); $pre->add_field("NAMA OUTLET",120); $pre->add_field("JUMLAH PIUTANG",30,"R","uang"); if ($id_grup == 0) { $nkol = 5; $pre->add_field("JUMLAH BAYAR",30,"R","uang"); $pre->add_field("SISA PIUTANG",30,"R","uang"); } if ($id_gout>0) $pre->add_span(array("NAMA GRUP OUTLET : ".$nama_gout,$nkol,"L,NB")); if ($id_outlet>0) $pre->add_span(array("NAMA OUTLET : ".strtoupper($nama_out),$nkol,"L,NB")); if ($id_sales>0 || $id_sales=="NON") $pre->add_span(array("NAMA SALES : ".strtoupper($nama_sales),$nkol,"L,NB")); if ($id_grup>0) $pre->add_span(array("GRUP PRODUK : ".strtoupper($nama_grup),$nkol,"L,NB")); if ($tipedt<>"X") $pre->add_span(array("STATUS DT : ".strtoupper($nama_dt),$nkol,"L,NB")); $pre->show_fields(); $tot_piu = $tot_bayar = $nomor = 0; while ($db->Next()) { $nomor++; $tot_piu += $db->Row("Total_Piutang"); if ($id_grup == 0) { $tot_bayar += $db->Row("Total_Bayar"); $pre->add_value($nomor, $db->Row("Nama_Outlet"), $db->Row("Total_Piutang"), $db->Row("Total_Bayar"), $db->Row("Total_Sisa")); } if ($id_grup > 0) $pre->add_value($nomor, $db->Row("Nama_Outlet"), $db->Row("Total_Piutang")); } if ($id_grup == 0) $pre->add_span(array(""),array("GRAND TOTAL",1,"L,B"),array($tot_piu,1,"R,B","uang"),array($tot_bayar,1,"R,B","uang"),array($tot_piu-$tot_bayar,1,"R,B","uang")); if ($id_grup > 0) $pre->add_span(array(""),array("GRAND TOTAL",1,"L,B"),array($tot_piu,1,"R,B","uang")); } else { $nkol = 4; $pre->add_field("NO. NOTA",10,"C"); $pre->add_field("TGL. NOTA",10,"C"); $pre->add_field("NAMA OUTLET",120); $pre->add_field("JUMLAH PIUTANG",30,"R","uang"); if ($id_grup == 0) { $nkol = 6; $pre->add_field("JUMLAH BAYAR",30,"R","uang"); $pre->add_field("SISA PIUTANG",30,"R","uang"); } if ($id_gout>0) $pre->add_span(array("NAMA GRUP OUTLET : ".$nama_gout,$nkol,"L,NB")); if ($id_outlet>0) $pre->add_span(array("NAMA OUTLET : ".strtoupper($nama_out),$nkol,"L,NB")); if ($id_sales>0 || $id_sales=="NON") $pre->add_span(array("NAMA SALES : ".strtoupper($nama_sales),$nkol,"L,NB")); if ($id_grup>0) $pre->add_span(array("GRUP PRODUK : ".strtoupper($nama_grup),$nkol,"L,NB")); if ($tipedt<>"X") $pre->add_span(array("STATUS DT : ".strtoupper($nama_dt),$nkol,"L,NB")); $pre->show_fields(); $tot_piu = $tot_bayar = $diskon = 0; while ($db->Next()) { $tot_piu += $db->Row("Total_Piutang"); if ($id_grup == 0) { $tot_bayar += $db->Row("Total_Bayar"); $pre->add_value($db->Row("No_Jual"), $db->Row("Tgl_Jual2"), $db->Row("Nama_Outlet"), $db->Row("Total_Piutang"), $db->Row("Total_Bayar"), $db->Row("Total_Sisa")); } if ($id_grup > 0) $pre->add_value($db->Row("No_Jual"), $db->Row("Tgl_Jual2"), $db->Row("Nama_Outlet"), $db->Row("Total_Piutang")); } if ($id_grup == 0) $pre->add_span(array("GRAND TOTAL",3,"L,B"),array($tot_piu,1,"R,B","uang"),array($tot_bayar,1,"R,B","uang"),array($tot_piu-$tot_bayar,1,"R,B","uang")); if ($id_grup > 0) $pre->add_span(array("GRAND TOTAL",3,"L,B"),array($tot_piu,1,"R,B","uang")); } $pre->add_stamp(1, true); $pre->show(); } else if ( $data == "export" ) { $xls = new SimpleXLS([ 'title'=>"Laporan ".($tipe=="R"?"Rekap":"Detail")." Piutang Outlet", 'subject'=>"PT.PMS", 'desc'=>"Export Data dari IAS" ]); $xls->add_header("".strtoupper($_SESSION['__WEB_APP']['REG_NAME']).""); $xls->add_header("LAPORAN ".(($tipe=="R")?"REKAP":"DETAIL")." PIUTANG OUTLET"); $xls->add_header($tglheader); if ($tipe=="R") { $xls->add_field("NO", 12, "C"); $xls->add_field("NAMA OUTLET", 60, "L"); $xls->add_field("JUMLAH PIUTANG", 20, "R,N"); if ($id_grup == 0) { $xls->add_field("JUMLAH BAYAR", 20, "R,N"); $xls->add_field("SISA PIUTANG", 20, "R,N"); } $xls->add_sheet("PIUTANG OUTLET", false); $nkol = ($id_grup == 0) ? 3 : 1; if ($id_gout>0) $xls->add_span(array("NAMA GRUP OUTLET",2,"L,B,NL"),array($nama_gout,$nkol,"L,B,NL")); if ($id_outlet>0) $xls->add_span(array("NAMA OUTLET",2,"L,B,NL"),array(strtoupper($nama_out),$nkol,"L,B,NL")); if ($id_sales>0 || $id_sales=="NON") $xls->add_span(array("NAMA SALES",2,"L,B,NL"),array(strtoupper($nama_sales),$nkol,"L,B,NL")); if ($id_grup>0) $xls->add_span(array("GRUP PRODUK",2,"L,B,NL"),array(strtoupper($nama_grup),$nkol,"L,B,NL")); if ($tipedt<>"X") $xls->add_span(array("STATUS DT",2,"L,B,NL"),array(strtoupper($nama_dt),$nkol,"L,B,NL")); $xls->show_headers(); $tot_piu = $tot_bayar = $nomor = 0; while ($db->Next()) { $nomor++; $tot_piu += $db->Row("Total_Piutang"); if ($id_grup == 0) { $tot_bayar += $db->Row("Total_Bayar"); $xls->add_value($nomor, $db->Row("Nama_Outlet"), $db->Row("Total_Piutang"), $db->Row("Total_Bayar"), $db->Row("Total_Sisa")); } else { $xls->add_value($nomor, $db->Row("Nama_Outlet"), $db->Row("Total_Piutang")); } } if ($id_grup == 0) { $xls->add_span(array("TOTAL PIUTANG",2,"R,B"),array($tot_piu,1,"R,N,B"),array($tot_bayar,1,"R,N,B"),array($tot_piu-$tot_bayar,1,"R,N,B")); } else { $xls->add_span(array("TOTAL PIUTANG",2,"R,B"),array($tot_piu,1,"R,N,B")); } } else { $xls->add_field("NO. NOTA", 14, "C"); $xls->add_field("TGL. NOTA", 15, "C"); $xls->add_field("NAMA OUTLET", 60, "L"); $xls->add_field("JUMLAH PIUTANG", 20, "R,N"); if ($id_grup == 0) { $xls->add_field("JUMLAH BAYAR", 20, "R,N"); $xls->add_field("SISA PIUTANG", 20, "R,N"); } $xls->add_sheet("PIUTANG OUTLET", false); $nkol = ($id_grup == 0) ? 4 : 2; if ($id_gout>0) $xls->add_span(array("NAMA GRUP OUTLET",2,"L,B,NL"),array($nama_gout,$nkol,"L,B,NL")); if ($id_outlet>0) $xls->add_span(array("NAMA OUTLET",2,"L,B,NL"),array(strtoupper($nama_out),$nkol,"L,B,NL")); if ($id_sales>0 || $id_sales=="NON") $xls->add_span(array("NAMA SALES",2,"L,B,NL"),array(strtoupper($nama_sales),$nkol,"L,B,NL")); if ($id_grup>0) $xls->add_span(array("GRUP PRODUK",2,"L,B,NL"),array(strtoupper($nama_grup),$nkol,"L,B,NL")); if ($tipedt<>"X") $xls->add_span(array("STATUS DT",2,"L,B,NL"),array(strtoupper($nama_dt),$nkol,"L,B,NL")); $xls->show_headers(); $tot_piu = $tot_bayar = $diskon = 0; while ($db->Next()) { $tot_piu += $db->Row("Total_Piutang"); if ($id_grup == 0) { $tot_bayar += $db->Row("Total_Bayar"); $xls->add_value($db->Row("No_Jual"), $db->Row("Tgl_Jual2"), $db->Row("Nama_Outlet"), $db->Row("Total_Piutang"), $db->Row("Total_Bayar"), $db->Row("Total_Sisa")); } else { $xls->add_value($db->Row("No_Jual"), $db->Row("Tgl_Jual2"), $db->Row("Nama_Outlet"), $db->Row("Total_Piutang")); } } if ($id_grup == 0) { $xls->add_span(array("TOTAL PIUTANG",3,"R,B"),array($tot_piu,1,"R,N,B"),array($tot_bayar,1,"R,N,B"),array($tot_piu-$tot_bayar,1,"R,N,B")); } else { $xls->add_span(array("TOTAL PIUTANG",3,"R,B"),array($tot_piu,1,"R,N,B")); } } $xls->send("Laporan ".($tipe=="R"?"Rekap":"Detail")." Piutang Outlet.xlsx"); unset($xls); } else if ( $data == "brow-outlet" ) { $tcari = trim(Param::Get("Cari_Outlet")); $tsql = ($tcari=="") ? " LIMIT 100" : " AND CONCAT(Nama_Outlet,Telp_Outlet,Nama_Outlet) LIKE '%".$tcari."%'"; $obj = new Table($db); $obj->set_query("SELECT * FROM vi_para_outlet WHERE Aktif=1".$tsql); $obj->add_field("OutletID", "ID", "hid"); $obj->add_field("Kode_Outlet", "Kode", "c"); $obj->add_field("Nama_Alamat", "Nama Outlet", "awr"); $obj->add_field("Alamat_Kota", "Alamat & Kota", "awr"); $obj->set_field_order("Nama_Outlet", "A"); $obj->add_row_btn("save", "Pilih", "RepoPiutangJS.outlet_select"); $obj->set_func_navi("RepoPiutangJS.data_query('brow-outlet')"); $ajson[] = $obj->json_table("divBrowOutlet"); } else if ( $data == "auto-outlet" ) { $tcari = Param::Get("Auto_Query"); $ajson['autodata'] = [['value' => 0, 'text' => "SEMUA OUTLET", 'data' => ""]]; if (is_string($tcari) && strlen($tcari) < 64) { $db->Query("SELECT * FROM vi_para_outlet WHERE Aktif=1 AND CONCAT(Nama_Outlet,Alamat_Outlet) LIKE '%".$tcari."%' ORDER BY Nama_Outlet LIMIT 50"); while ($db->Next()) { $ajson['autodata'][] = ['value'=>$db->Row("OutletID"), 'text'=>$db->Row("Nama_Alamat"), 'data'=>$db->Row("Alamat_Kota")]; } } } else if ( $data == "default") { $asales = ['SEMUA' => "SEMUA SALES", 'NON' => "TANPA-SALES"]; $db->Query("SELECT PegID,Nama_Pegawai FROM para_pegawai WHERE Jenis_PegID='".$_SESSION['__APP_IAS']['GRUP_PEG_SALES']."' ORDER BY Nama_Pegawai"); while ($db->Next()){ $asales[$db->Row("PegID")] = $db->Row("Nama_Pegawai"); } $form = new Form($db); $ttipe = $form->radio("_", "Tipe", "R", true, false, ["R"=>"Rekap","D"=>"Detail"]); $tdt = $form->radio("_", "TipeDT", "X", true, false, ["X"=>"Semua","S"=>"Sudah DT","B"=>"Belum DT"]); $toutlet = $form->textauto("_", "Nama_Outlet", ['value'=>0,'text'=>"SEMUA OUTLET"], true, false); $tsales = $form->option("_", "SalesID", "SEMUA", true, false, $asales); $tgrup = $form->option_db("_", "Grup_InvID", 0, true, false, "inv_produk_grup", ["Grup_InvID","Nama_Grup"], "TRUE ORDER BY Nama_Grup", [0,"SEMUA GRUP"]); $ttglfrom = $form->datebox("_", "Tgl_From", tgl_ymd(), true, false); $ttglto = $form->datebox("_", "Tgl_To", tgl_ymd(), true, false); echo '