laporan rekap promo dan export data excel ubah pilihan group produk menjadi multiple.

This commit is contained in:
2026-04-25 15:59:11 +07:00
parent 3762931658
commit eb5281c429
8 changed files with 41 additions and 44 deletions
+7 -9
View File
@@ -7,9 +7,9 @@
Desc. : PHP - Export XLS Penjualan
Created By : Siau Pheng ([email protected]).
Created Date : April 2rd, 2011.
Last Modified : July 5th, 2025.
Last Modified : April 25th, 2026.
(c) 2011 - 2025, 3FONIA Software; WWW.3FONIA.COM.
(c) 2011 - 2026, 3FONIA Software; WWW.3FONIA.COM.
*******************************************************************/
@@ -17,7 +17,6 @@ require_once(__DIR__."/../../../../../vendor/autoload.php");
require_once(__DIR__."/../func/ias.php");
use siaupheng\fonia3\DB\MySQL;
use siaupheng\fonia3\DB\SQL;
use siaupheng\fonia3\Web\Param;
use siaupheng\fonia3\Web\Form;
use siaupheng\fonia3\Data\SimpleXLS;
@@ -25,7 +24,7 @@ use siaupheng\fonia3\Data\SimpleXLS;
$db = (is_resource($db)) ? $db : new MySQL();
$ajson = [];
$data = Param::Get("data");
$id_grup = Param::Get("Grup_InvID", 0);
$a_grup = Param::Get("Grup_InvID", "0");
$tgl_from = Param::Get("Tgl_From");
$tgl_to = Param::Get("Tgl_To");
@@ -37,10 +36,10 @@ if ( $data == "download" ) {
$tgl_to = tgl_sql2str($tgl_to);
$qsql = "";
if ($id_grup > 0) {
$qsql .= " AND InvID IN (SELECT InvID FROM inv_produk WHERE Grup_InvID='".$id_grup."')";
} else {
if ($a_grup == "0") {
$qsql .= " AND InvID IN (SELECT InvID FROM inv_produk WHERE Grup_InvID NOT IN ('".$_SESSION['__APP_IAS']['GRUP_PRODUK_KEMASAN']."','".$_SESSION['__APP_IAS']['GRUP_PRODUK_HADIAH']."'))";
} else {
$qsql .= " AND InvID IN (SELECT InvID FROM inv_produk WHERE Grup_InvID IN (".$a_grup."))";
}
$db->Query("SELECT D.*,J.*,CONCAT(P.Nama_Produk,_latin1' ',S.Nama_Satuan) Nama_Produk,IFNULL(R.Nama_Rasa,'') Rasa,OG.Nama_Grup Grup_Outlet,PG.Nama_Grup Grup_Produk,O.Nama_Outlet,CONCAT(O.Alamat_Outlet,_latin1', ',O.Kota_Outlet) Alamat_Outlet,PS.Nama_Pegawai Nama_Sales,PO.Nama_Pegawai Nama_Supir,Nama_Picker(J.A_Picker) Nama_Picker FROM (SELECT No_Ref,InvID,RasaID,SatuanID,-Qty Qty,Harga_Jual,Total_Diskon,(-Qty*Harga_Jual)-Total_Diskon Jumlah FROM inv_detail WHERE NotaID=5 AND (Tgl_Ref BETWEEN '".$tgl_from."' AND '".$tgl_to."')".$qsql.") D LEFT JOIN (SELECT No_Jual,No_Faktur,No_DO,Tgl_Jual,Tgl_Lunas,OutletID,SalesID,HelperID,SupirID,A_Picker,CK,IF(Rekap=1,'Antar','Belum Antar') Status_Order,Catatan FROM inv_jual WHERE Tgl_Jual BETWEEN '".$tgl_from."' AND '".$tgl_to."') J ON (J.No_Jual=D.No_Ref) LEFT JOIN para_outlet O ON (O.OutletID=J.OutletID) LEFT JOIN para_outlet_grup OG ON (OG.Grup_OutletID=O.Grup_OutletID) LEFT JOIN inv_produk P ON (P.InvID=D.InvID) LEFT JOIN inv_produk_grup PG ON (PG.Grup_InvID=P.Grup_InvID) LEFT JOIN para_satuan S ON (S.SatuanID=D.SatuanID) LEFT JOIN para_rasa R ON (R.RasaID=D.RasaID) LEFT JOIN para_pegawai PS ON (J.SalesID=PS.PegID) LEFT JOIN para_pegawai PO ON (J.SupirID=PO.PegID) ORDER BY J.Tgl_Jual,J.No_Jual,P.Nama_Produk");
@@ -80,7 +79,6 @@ if ( $data == "download" ) {
$xls->add_field("NAMA PICKER", 12, "L");
$xls->add_field("CATATAN", 12, "L");
$xls->add_sheet("".str_replace("S/D","-",$tglheader), true);
//$xls->show_headers();
while ($db->Next()) {
$xls->add_value($db->Row("Tgl_Jual"), $db->Row("Tgl_Lunas"), $db->Row("No_Jual"), $db->Row("No_Faktur"), $db->Row("No_DO"), $db->Row("Nama_Sales"), $db->Row("Grup_Outlet"), $db->Row("Nama_Outlet"), $db->Row("Alamat_Outlet"), $db->Row("Nama_Produk"), $db->Row("Rasa"), $db->RowFloat("Qty"), $db->RowFloat("Harga_Jual"), $db->RowFloat("Total_Diskon"), $db->RowFloat("Jumlah"), $db->Row("Grup_Produk"), $db->Row("Status_Order"), $db->Row("CK"), $db->Row("Nama_Supir"), $db->Row("Nama_Picker"), $db->Row("Catatan"));
@@ -91,7 +89,7 @@ if ( $data == "download" ) {
} else if ( $data == "default") {
$form = new Form($db);
$tgrup = $form->option_db("_", "Grup_InvID", 0, true, false, "inv_produk_grup", ["Grup_InvID","Nama_Grup"], "Grup_InvID NOT IN ('".$_SESSION['__APP_IAS']['GRUP_PRODUK_KEMASAN']."','".$_SESSION['__APP_IAS']['GRUP_PRODUK_HADIAH']."') ORDER BY Nama_Grup", [0,"SEMUA GRUP PRODUK"]);
$tgrup = $form->option_db("_", "Grup_InvID", "0", true, false, "inv_produk_grup", ["Grup_InvID","Nama_Grup"], "Grup_InvID NOT IN ('".$_SESSION['__APP_IAS']['GRUP_PRODUK_KEMASAN']."','".$_SESSION['__APP_IAS']['GRUP_PRODUK_HADIAH']."') ORDER BY Nama_Grup", [0,"SEMUA GRUP PRODUK"], null, null, true);
$ttglfrom = $form->datebox("_", "Tgl_From", tgl_ymd(), true, false);
$ttglto = $form->datebox("_", "Tgl_To", tgl_ymd(), true, false);
echo '