0) ? true : false; $ainfo = []; $apromo = []; $anotapromo = []; $db->Query("SELECT J.*,UCASE(O.Nama) Nama_User,UCASE(LEFT(B.Nama_Kartu,23)) Kode_Kartu2,UCASE(J.Nama_Kartu) Nama_Kartu2,RIGHT(J.No_Kartu,4) No_Kartu2 FROM (SELECT *,DATE_FORMAT(Tgl_Jual,'%d-%m-%Y') Tgl_Jual2,DATE_FORMAT(DateStamp,'%H:%i:%s') Jam_Jual,(Total_Bayar-Total_Kartu) Total_Tunai,(Total_Bayar-Total_Jual+Total_Diskon+Total_Potong) Total_Sisa FROM inv_jual WHERE No_Jual='".$nota."') J LEFT JOIN app_operator O ON (J.UserID=O.UserID) LEFT JOIN para_rek_pos B ON (J.KartuID=B.KartuID)"); if ($db->Next()) $ainfo = $db->AllRow(); if ($ainfo['KartuID'] > 0) $ncetak++; if ($ainfo['PromoNotaID'] > 0) { $db->Query("SELECT * FROM inv_promo_nota WHERE PromoNotaID='".$ainfo['PromoNotaID']."' LIMIT 1"); if ($db->Next()) { $anotapromo = explode("\n", wordwrap("".$db->Row("Promo_Iklan"), 38, "\n")); } } $db->Query("SELECT D.*,P.Kode_SKU,IF(ISNULL(O.Ket),P.Nama_Produk,O.Ket) Nama_Produk,P.Nama_Satuan FROM (SELECT No_Ref,ID,InvID,SatuanID,Harga_Jual,Disk_Rupiah Harga_Diskon,SUM(-Qty) Qty,SUM(-Qty*Harga_Jual) Jumlah,SUM(-Qty*Disk_Rupiah) JumlahD,Promo,Total_Diskon FROM inv_detail WHERE No_Ref='".$nota."' AND Qty<>0 GROUP BY InvID,SatuanID,Harga_Jual,Promo) D LEFT JOIN (SELECT * FROM inv_detail_lain WHERE No_Ref='".$nota."') O ON (D.No_Ref=O.No_Ref AND D.ID=O.ID) LEFT JOIN vi_inv_produk P ON (D.InvID=P.InvID AND D.SatuanID=P.SatuanID) ORDER BY P.Nama_Produk"); if ($db->RecordCount()==0) return; $pre = new PrintPOS(); $pre->set_fontsize(2); $pre->set_header_logo("logo-nota.png"); if ($_SESSION['__APP_INV']['PRINT_OPENCD']==1 && $op_cash==1) $pre->set_opendrawer(); if ($_SESSION['__APP_INV']['PRINT_AUTOCUT']==1) $pre->set_cutpaper(); $pre->add(array($ainfo['No_Jual'],20), array($ainfo['Tgl_Jual2'],20,"R")); $pre->add(array($ainfo['Nama_User'],20), array($ainfo['Jam_Jual'],20,"R")); $pre->add_line(); $items = 0; $qty = 0; while ($db->Next()) { if ($db->Row("Promo",0)>1) { $apromo[] = rupiah($db->Row("Qty"))." ".$db->Row("Nama_Satuan")." ".$db->Row("Nama_Produk"); continue; } $pre->add($db->Row("Nama_Produk")); $pre->add(array($db->Row("Kode_SKU"),8), array(rupiah2($db->Row("Qty")),8,"R"), array(" @",2), array(rupiah($db->Row("Harga_Jual")),9,"R"), array(rupiah($db->Row("Jumlah")),13,"R")); if ($db->Row("Harga_Diskon") > 0) { if ($db->Row("Promo") == 1) { $pre->add(array(" DISKON PROMO",27), array(rupiah($db->Row("Total_Diskon")*-1),13,"R")); } else { $pre->add(array(" DISC",8), array(rupiah2($db->Row("Qty")),8,"R"), array(" @",2), array(rupiah($db->Row("Harga_Diskon")*-1),9,"R"), array(rupiah($db->Row("JumlahD")*-1),13,"R")); } } $qty += $db->RowFloat("Qty"); $items++; } $pre->add_line(); $pre->add(array($items."I/".$qty."Q",14), array("JUMLAH Rp.",13,"R"), array(rupiah($ainfo['Total_Jual']-$ainfo['Total_Diskon']),13,"R")); if ($ainfo['Total_Tunai']>0) $pre->add(array("TUNAI Rp.",27,"R"), array(rupiah($ainfo['Total_Tunai']),13,"R")); if ($ainfo['Total_Kartu']>0) $pre->add(array("NON TUNAI Rp.",27,"R"), array(rupiah($ainfo['Total_Kartu']),13,"R")); if ($ainfo['Total_Potong']>0) { $pre->add(array(" ",14), array("PROMO Rp.",13,"R"), array(rupiah($ainfo['Total_Potong']),13,"R")); $apromo[] = "Potongan Promo Rp. ".rupiah($ainfo['Total_Potong']); } if ($ainfo['KartuID']==0) { $pre->add(array("KEMBALI Rp.",27,"R"), array(rupiah($ainfo['Total_Sisa']),13,"R")); } else { $pre->add_empty(); $pre->add("* ".$ainfo['Kode_Kartu2']." - ".($ainfo['No_Kartu2'] ?: "XXXX")); if ($ainfo['Nama_Kartu2']<>"") $pre->add(" ".$ainfo['Nama_Kartu2']); } if (count($apromo)>0) { $pre->add_line(); $pre->add("HADIAH PROMO :"); for ($i=0; $iadd($apromo[$i]); } } $pre->add_empty(); $_afoo = explode("[br]", stripslashes($_SESSION['__APP_INV']['TITLE_END'])); foreach($_afoo as $_key => $val) { $pre->addc($val); } if ($is_orig==false) $pre->addc("-- SALINAN / COPY --"); // promo nota if (count($anotapromo)>0) { $pre->add_line(); foreach($anotapromo as $_key => $val) { $pre->add($val); } } $pre->add_empty($_SESSION['__APP_INV']['PRINT_ROW']); $pre->show($ncetak); } function nota_beli($db, $nota="") { if (trim($nota)=="") return; $ainfo = []; $db->Query("SELECT B.*,DATE_FORMAT(B.Tgl_Beli,'%d-%m-%Y') Tgl_Beli2,DATE_FORMAT(B.Tgl_Faktur,'%d-%m-%Y') Tgl_Faktur2,S.Kode_Sup,S.Nama_Sup,S.Alamat_Sup,B.Total_Diskon+B.Total_Bulat Diskon FROM (SELECT * FROM inv_beli WHERE No_Beli='".$nota."') B LEFT JOIN para_supplier S ON (S.SupID=B.SupID)"); if ($db->Next()) $ainfo = $db->AllRow(); $ainfo['Alamat_Sup'] = str_replace("\n", "
", $ainfo['Alamat_Sup']); $db->Query("SELECT D.*,P.Nama_Produk,P.Nama_Satuan FROM (SELECT InvID,SatuanID,Harga_Beli,SUM(Total_Diskon) Total_Diskon,SUM(Qty) Qty,SUM(Qty*Harga_Beli) Jumlah FROM inv_detail WHERE No_Ref='".$nota."' GROUP BY InvID, Harga_Beli) D LEFT JOIN vi_inv_produk P ON (P.InvID=D.InvID AND P.SatuanID=D.SatuanID) ORDER BY P.Nama_Produk"); // menampilkan judul dibagian atas laporan $kop = '
'.$_SESSION['__WEB_APP']['REG_NAME'].'
FAKTUR PEMBELIAN
'; $kop .= ''; $kop .= ''; $kop .= ''; $kop .= ''; $kop .= ''; $kop .= '
Nomor Transaksi'.$ainfo['No_Beli'].'Tanggal Transaksi'.$ainfo['Tgl_Beli2'].'
Nomor Faktur'.$ainfo['No_Faktur'].'Tanggal Faktur'.$ainfo['Tgl_Faktur2'].'
Nama Supplier'.$ainfo['Nama_Sup'].(($ainfo['Kode_Sup'])?" [".$ainfo['Kode_Sup']."]":"").'
Alamat Supplier'.$ainfo['Alamat_Sup'].'
'; $header = ''; $_line = ''; $_sline = ''; $body = $kop.$header; $no_urut = 1; while ($db->Next()) { $body .= sprintf($_line, $no_urut++, $db->Row("Nama_Produk"), rupiah2($db->Row("Qty")), $db->Row("Nama_Satuan"), rupiah2($db->Row("Harga_Beli")), rupiah2($db->Row("Jumlah"))); } $body .= sprintf($_sline, "Sub. Total Rp.", rupiah2($ainfo['Total_Beli'])); $body .= sprintf($_sline, "Diskon Rp.", rupiah2($ainfo['Diskon'])); $body .= sprintf($_sline, "Total Rp.", rupiah2($ainfo['Total_Hutang'])); $t_catat = ($ainfo['Catatan']<>"") ? 'Catatan : '.$ainfo['Catatan'].'.' : ' '; $body .= '
No.Nama BarangQtySatuanHarga @Jumlah
%s%s%s%s%s%s
%s%s
'.$t_catat.'
 '.Report_Stamp(1,true).'
'; echo '
' . $body . '
'; } function nota_beli_retur($db, $nota="") { if (trim($nota)=="") return; $ainfo = []; $db->Query("SELECT B.*,DATE_FORMAT(B.Tgl_Beli,'%d-%m-%Y') Tgl_Beli2,S.Kode_Sup,S.Nama_Sup,S.Alamat_Sup,-B.Total_Hutang Jumlah FROM (SELECT * FROM inv_beli WHERE No_Beli='".$nota."') B LEFT JOIN para_supplier S ON (S.SupID=B.SupID)"); if ($db->Next()) $ainfo = $db->AllRow(); $ainfo['Alamat_Sup'] = str_replace("\n", "
", $ainfo['Alamat_Sup']); $db->Query("SELECT D.*,P.Nama_Produk,P.Nama_Satuan FROM (SELECT InvID,SatuanID,Harga_Beli,SUM(-Qty) Qty,SUM(-Qty*Harga_Beli) Jumlah FROM inv_detail WHERE No_Ref='".$nota."' GROUP BY InvID, Harga_Beli) D LEFT JOIN vi_inv_produk P ON (P.InvID=D.InvID AND P.SatuanID=D.SatuanID) ORDER BY P.Nama_Produk"); // menampilkan judul dibagian atas laporan $kop = '
'.$_SESSION['__WEB_APP']['REG_NAME'].'
RETUR PEMBELIAN
'; $kop .= ''; $kop .= ''; $kop .= ''; $kop .= ''; $kop .= '
Nomor Transaksi'.$ainfo['No_Beli'].'Tanggal Transaksi'.$ainfo['Tgl_Beli2'].'
Nama Supplier'.$ainfo['Nama_Sup'].(($ainfo['Kode_Sup'])?" [".$ainfo['Kode_Sup']."]":"").'
Alamat Supplier'.$ainfo['Alamat_Sup'].'
'; $header = ''; $_line = ''; $_sline = ''; $body = $kop.$header; $no_urut = 1; while ($db->Next()) { $body .= sprintf($_line, $no_urut++, $db->Row("Nama_Produk"), rupiah2($db->Row("Qty")), $db->Row("Nama_Satuan"), rupiah2($db->Row("Harga_Beli")), rupiah2($db->Row("Jumlah"))); } $body .= sprintf($_sline, "Total (Rp.)", rupiah2($ainfo['Jumlah'])); $t_catat = ($ainfo['No_Faktur']<>"") ? 'Catatan : '.$ainfo['No_Faktur'].'.' : ' '; $body .= '
No.Nama BarangQtySatuanHarga @Jumlah
%s%s%s%s%s%s
%s%s
'.$t_catat.'
 '.Report_Stamp(1,true).'
'; echo '
' . $body . '
'; } function nota_opname($db, $nota="") { if (trim($nota)=="") return; $ainfo = []; $db->Query("SELECT *,DATE_FORMAT(Tgl_Opname,'%d-%m-%Y') Tgl_Opname2 FROM inv_opname WHERE No_Opname='".$nota."' LIMIT 1"); if ($db->Next()) $ainfo = $db->AllRow(); $ainfo['Catatan'] = str_replace("\n", "
", $ainfo['Catatan']); $db->Query("SELECT D.*,P.Nama_Produk,P.Nama_Satuan FROM (SELECT InvID,SatuanID,SUM(Qty) Qty FROM inv_detail WHERE No_Ref='".$nota."' GROUP BY InvID,SatuanID,Harga_Beli) D LEFT JOIN vi_inv_produk P ON (P.InvID=D.InvID AND P.SatuanID=D.SatuanID) ORDER BY P.Nama_Produk"); // menampilkan judul dibagian atas laporan $kop = '
'.$_SESSION['__WEB_APP']['REG_NAME'].'
STOK OPNAME
'; $kop .= ''; $kop .= ''; $kop .= ''; $kop .= '
No. Opname'.$ainfo['No_Opname'].'  
Tanggal Opname'.$ainfo['Tgl_Opname2'].'  
'; $header = ''; $_line = ''; $body = $kop.$header; $no_urut = 1; while ($db->Next()) { $body .= sprintf($_line, $no_urut++, $db->Row("Nama_Produk"), rupiah2($db->Row("Qty")), $db->Row("Nama_Satuan")); } $t_catat = ($ainfo['Catatan']<>"") ? 'Catatan : '.$ainfo['Catatan'].'.' : ' '; $body .= '
No.Nama BarangQtySatuan
%s%s%s%s
'.$t_catat.'
 '.Report_Stamp(1,true).'
'; echo '
' . $body . '
'; } function nota_mutasi($db, $nota="") { if (trim($nota)=="") return; $ainfo = []; $db->Query("SELECT M.*,C1.Nama_Cab Cabang1,C2.Nama_Cab Cabang2 FROM (SELECT * FROM inv_mutasi WHERE No_Mutasi='".$nota."' LIMIT 1) M LEFT JOIN para_cabang C1 ON (C1.CabID=M.Dari_CabID) LEFT JOIN para_cabang C2 ON (C2.CabID=M.Ke_CabID)"); if ($db->Next()) $ainfo = $db->AllRow(); $ainfo['Catatan'] = str_replace("\n", "
", $ainfo['Catatan']); $db->Query("SELECT D.*,P.Nama_Produk,P.Nama_Satuan FROM (SELECT InvID,SatuanID,Harga_Beli,SUM(Qty) Qty,SUM(Qty*Harga_Beli) Jumlah FROM inv_detail WHERE No_Ref='".$nota."' AND Qty>0 GROUP BY InvID,SatuanID,Harga_Beli) D LEFT JOIN vi_inv_produk P ON (P.InvID=D.InvID AND P.SatuanID=D.SatuanID) ORDER BY P.Nama_Produk"); // menampilkan judul dibagian atas laporan $kop = '
'.$_SESSION['__WEB_APP']['REG_NAME'].'
MUTASI STOK
'; $kop .= ''; $kop .= ''; $kop .= ''; $kop .= '
No. Mutasi'.$ainfo['No_Mutasi'].'Dari Cabang'.$ainfo['Cabang1'].'
Tanggal Mutasi'.tgl_sql2str($ainfo['Tgl_Mutasi']).'Ke Cabang'.$ainfo['Cabang2'].'
'; $header = ''; $_line = ''; $_sline = ''; $body = $kop.$header; $no_urut = 1; while ($db->Next()) { $body .= sprintf($_line, $no_urut++, $db->Row("Nama_Produk"), rupiah2($db->Row("Qty")), $db->Row("Nama_Satuan"), rupiah2($db->Row("Harga_Beli")), rupiah2($db->Row("Jumlah"))); } $body .= sprintf($_sline, "Total (Rp.)", rupiah2($ainfo['Total_Mutasi'])); $t_catat = ($ainfo['Catatan']<>"") ? 'Catatan : '.$ainfo['Catatan'].'.' : ' '; $body .= '
No.Nama BarangQtySatuanHarga @Jumlah
%s%s%s%s%s%s
%s%s
'.$t_catat.'
 '.Report_Stamp(1,true).'
'; echo '
' . $body . '
'; } function open_cash() { $pre = new PrintPOS(); if ($_SESSION['__APP_INV']['PRINT_OPENCD']==1) $pre->set_opendrawer(); $pre->show(); } $db = (is_resource($db)) ? $db : new MySQL(); $data = Param::Get("data"); $nomor = Param::Get("Nomor_Cetak"); if ( $data == "opencash" ) { open_cash(); } else if ( $data == "nota-pos" ) { $op_cash = Param::Get("Open_Cash", 0); nota_pos($db, $nomor, $op_cash); } else if ( $data == "nota-beli" ) { nota_beli($db, $nomor); } else if ( $data == "nota-beli-retur" ) { nota_beli_retur($db, $nomor); } else if ( $data == "nota-opname" ) { nota_opname($db, $nomor); } else if ( $data == "nota-mutasi" ) { nota_mutasi($db, $nomor); } else if ( $data == "default") {} ?>