Sybase - Unifood
unknown
php
6 months ago
93 kB
3
Indexable
<?php defined('BASEPATH') or exit('No direct script access allowed'); date_default_timezone_set('Asia/Jakarta'); ini_set('memory_limit', '5G'); ini_set('max_execution_time', 1000); // ini_set('dispay_errors', 1); // error_reporting(E_ALL); class Sybase extends CI_Controller { public function __construct() { parent::__construct(); $this->load->database(); $this->load->library('pagination'); $this->load->helper('url'); } public function index() { $this->load->view('welcome_message'); } public function statuskirim() { $date = date('Y-m-d H:i:s', strtotime('-20 minutes')); $statuskirim = $this->db->query(" SELECT intranshdr.Sys, intranshdr.TrNo, intranshdr.Last_Modified,intranshdr.CustBillTo,intranshdr.CustSellTo, intranshdr.CustShipTo,intranshdr.CustShipTo,intranshdr.CustTaxTo FROM intranshdr where intranshdr.transcode = 3 Order By Last_Modified DESC; -- where intranshdr.transcode = 3 and intranshdr.Last_Modified ='{$date}' ")->result(); $this->db->query("COMMIT"); if ($statuskirim) { $dbsales = $this->load->database('dbsales', TRUE); foreach ($statuskirim as $sk) { $db_data = array( 'sys' => $sk->Sys, 'TrNo' => $sk->TrNo, 'last_modified' => $sk->Last_Modified, 'CustBillTo' => $sk->CustBillTo, 'CustSellTo' => $sk->CustSellTo, 'CustShipTo' => $sk->CustShipTo, 'CustTaxTo' => $sk->CustTaxTo ); $dbsales->replace('statuskirim', $db_data); } } } public function item() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('item'); $sql = "select itemid,description,unitsetid,Inventory_Unit,ItemGroupID,ItemCategoryID,itembrandid,ItemModelID,ClassID,GL_GroupID,Tax_GroupID from initem where Blocked = 0"; $item = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $dbsales->insert_batch('item', $item); } public function itemunit($itemid) { $itemid = htmlspecialchars($itemid); $sql = "select INUnitSetDtl.UnitID from initem join INUnitSetDtl on INItem.UnitSetID = INUnitSetDtl.unitsetid where initem.itemid ='{$itemid}'"; $result = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); echo json_encode((array) $result, true); } public function itembalance() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('itembalance'); $sql = "select initem.itemid,initembalance.locationid,initembalance.periodid,initembalance.beginqty,initembalance.inqty,initembalance.outqty from initembalance join initem on initem.itemid = initembalance.itemid where initem.itemgroupid = 105 or initem.itemgroupid = 2007 or initem.itemgroupid = 2002 or initem.itemgroupid = 2011"; $itembalance = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $dbsales->insert_batch('itembalance', $itembalance); } public function period() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('period'); $sql = "select periodid,description,startdate,enddate from pxperiod"; $period = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $dbsales->insert_batch('period', $period); } public function location() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('location'); $sql = "select locationid,WarehouseID,Description,capacitym3 from inlocation"; $location = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $dbsales->insert_batch('location', $location); } public function employee() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('employee'); $sql = "select employeeid,empname,RegisterDate from PXEmployee"; $employee = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $dbsales->insert_batch('employee', $employee); } public function customer($save_to_mysql = 'y') { if ($save_to_mysql == 'y') { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('customer'); $sql = 'select CustID, custname, PersonalID,last_modified,address,parentID,blockShip_,blockAR_,blockSale_,dispatchID,forwarderID,areaid,contact_sales,contact_acc,our_id,currencyid,salesrepid,GroupA_ID,GroupB_ID,PriceID,DeliveryMtdID,CustStatus,CreditStatus,CollectorID,CreditLimit,RegisterDate,LastTransDate,ConsiderOverdueDays_,CreditDays,TaxGroupID,InvTaxCode,PromoID,Owner_Name,PersonalName,PersonalAddress,MaxUnpaidSO,phones from arcustomer'; $customer = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $dbsales->insert_batch('customer', $customer); } elseif ($save_to_mysql == 's') { $sql = 'select arcustomer.CustID, arcustomer.custname, ARCustomerGroupA.Description, arcustomer.taxid, ARCustomerGroupA.groupa_id from arcustomer join ARCustomerGroupA on ARCustomerGroupA.groupa_id = arcustomer.GroupA_ID'; $result = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); echo json_encode((array) $result, true); } } public function belum_invoice($x = 0, $y = 0) { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('beluminvoice'); // for($i=((int) $x);$i<=((int) $y);$i++){ $sql = "select INTranshdr.entityid, INTransDtl.OrderNo, intransdtl.ROTNo, INTransHdr.InvoiceNo, intranshdr.TrNo, intranshdr.TrDate, intranshdr.TrTime, intranshdr.trtype, intranshdr.TransCode, intranshdr.string1, intranshdr.CustBillTo, intranshdr.CustShipTo, intranshdr.CustTaxTo, intranshdr.TOP_ID, intranshdr.TOP_days, intranshdr.TaxCalc, intranshdr.TaxInvoiceDate, intranshdr.TaxInvoiceNo, intranshdr.SalesRepID, intranshdr.FooterNote, intransdtl.ItemID, intransdtl.Description, INTransDtl.LocationID, intransdtl.QT, intransdtl.UnitID, intransdtl.UnitPrice, INTransDtl.DiscPct_, intransdtl.GrossAmt, intransdtl.Taxable, intransdtl.TaxAmt, intransdtl.Rounding, INTransDtl.NetAmt from intranshdr inner join INTransDtl where INTransHdr.TransCode like '3' and intranshdr.Void_ like '0' and INTransHdr.InvoiceNo is null"; $beluminvoice = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); if ($beluminvoice) $dbsales->insert_batch('beluminvoice', $beluminvoice); // } } public function sudah_invoice() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('sudahinvoice'); $sql = "SELECT entityid, entitydesc, salesrepid, salesrepname, periodID, custID, custname, trtype, trno, trdate, duedate, age, noinv, currencyID, amount, amountpaid, discrepancy, outstandingcheck FROM AR_SP_UnpaidInvoices_asof_check(getdate(),'0','0','z','0','z') where trx like 'sales' or trx like 'ar debit note'"; $sudahinvoice = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $dbsales->insert_batch('sudahinvoice', $sudahinvoice); } // public function loadsheet() // { // $dbsales = $this->load->database('dbsales', TRUE); // $dbsales->truncate('loadsheet'); // $sql = "select prtranshdr.trno,prtranshdr.TrManualRef,PXDispatch.Description,inloadsheet.VehicleID,prtransdtl.ShipmentTRNo,intranshdr.CustShipTo,arcustomer.CustName,arcustomer.address, intransdtl.ItemID,intransdtl.Description,intransdtl.qty,intransdtl.qt,intransdtl.UnitID from prtransdtl // join prtranshdr on prtransdtl.sys = prtranshdr.sys // join intranshdr on intranshdr.trno = prtransdtl.ShipmentTRNo // join intransdtl on intranshdr.sys =intransdtl.sys // join arcustomer on intranshdr.CustShipTo = arcustomer.custid // join inloadsheet on inloadsheet.sheetno = prtranshdr.TrManualRef // join PXDispatch on PXDispatch.DispatchID = INLoadSheet.DispatchID // where prtranshdr.trtype like '%ppoa%' // order by prtranshdr.trno desc"; // $loadsheet = $this->db->query($sql)->result_array(); // if($loadsheet) // $dbsales->insert_batch('loadsheet', $loadsheet); // } public function monitoringpermintaanarmada($date1, $date2) { $sql = "select prtransHDR.TRDATE, prtransHDR.TRNO, prtransDTL.ITEMID, prtransDTL.QTY, prtransDTL.UNITID, PRTRANSDTL.LoadSheetTRNo, PRTRANSDTL.Remarks from prtransdtl join prtranshdr on prtranshdr.sys = prtransdtl.sys where prtransHDR.TRDATE >='{$date1}' and prtransHDR.TRDATE <='{$date2}' and prtransdtl.LoadSheetTRNo ='' and (prtranshdr.trtype ='PRE1' OR prtranshdr.trtype ='PRE2' OR prtranshdr.trtype ='PRE3' OR prtranshdr.trtype ='PRE4' OR prtranshdr.trtype ='PPOA8' ) order by prtransHDR.TRDATE desc"; $result = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); echo json_encode((array) $result, true); } public function detail_surat_jalan($sjno) { $sql = "select intransdtl.ItemID, intransdtl.Description, intransdtl.qt, intransdtl.unitid, intransdtl.qty, intransdtl.unitprice, INTransDtl.DiscAmt, intransdtl.Taxable, intransdtl.TaxAmt, INTransDtl.NetAmt from intranshdr inner join intransdtl on intranshdr.sys = intransdtl.sys where intranshdr.transcode = 3 and (intranshdr.periodid >= 10 or intranshdr.periodid >=31) and (intranshdr.periodid <= 30 or intranshdr.periodid <= 60) and intranshdr.trno = '{$sjno}'"; $result = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); echo json_encode((array) $result, true); } public function detail_sudah_invoice($invno) { $sql = "select intranshdr.trno as SJNO, intranshdr.trdate as SJDate, intranshdr.custshipto, SUM(intransdtl.DiscAmt) DiscAmt, SUM(intransdtl.Taxable) Taxable, SUM(intransdtl.TaxAmt) TaxAmt, SUM(intransdtl.NetAmt) NetAmt from intranshdr inner join intransdtl on intranshdr.sys = intransdtl.sys inner join arcustomer on intranshdr.CustShipTo = arcustomer.custid where intranshdr.transcode = 3 and (intranshdr.periodid >= 10 or intranshdr.periodid >=31) and (intranshdr.periodid <= 30 or intranshdr.periodid <= 60) and intranshdr.InvoiceNo = '{$invno}' group by intranshdr.trno, intranshdr.trdate, intranshdr.custshipto"; $result = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); echo json_encode((array) $result, true); } public function detail_paid_amount($invno) { $sql = "select catrhdr.TrNo as nobayar, catrhdr.trdate as tanggalbayar, catrdtl.trno as noalokasi, vCADetailAllocation.invoiceno as noinvoice, catrdtl.amount as nilaibayar, catrdtl.CustomerID, catrdtl.Remarks from catrhdr join catrdtl on catrdtl.catrsys = catrhdr.CATRsys join RPPmtAllocation on RPPmtAllocation.trno = catrdtl.trno join vCADetailAllocation on vCADetailAllocation.paymentno = RPPmtAllocation.trno where vCADetailAllocation.invoiceno = '{$invno}'"; $result = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); echo json_encode((array) $result, true); } public function get_ar_aging_data($date) { $sql = "select AR_SP_UnpaidInvoices_asof_check.SalesRepID as Kode_Sales, AR_SP_UnpaidInvoices_asof_check.SalesrepName as Nama_Sales, AR_SP_UnpaidInvoices_asof_check.CustID as Kode_Customer, AR_SP_UnpaidInvoices_asof_check.CustName as Nama_Customer, AR_SP_UnpaidInvoices_asof_check.trtype as Tipe_Transaksi, AR_SP_UnpaidInvoices_asof_check.trno as Nomor_Invoice, rptranshdr.taxinvoiceno as Nomor_Faktur, AR_SP_UnpaidInvoices_asof_check.trdate as Tanggal_Invoice, AR_SP_UnpaidInvoices_asof_check.Duedate as Jatuh_Tempo, AR_SP_UnpaidInvoices_asof_check.age as Umur_Piutang, AR_SP_UnpaidInvoices_asof_check.Amount as Nilai_Invoice, rptranshdr.tax as pajak, AR_SP_UnpaidInvoices_asof_check.AmountPaid as Pembayaran, AR_SP_UnpaidInvoices_asof_check.Discrepancy as Sisa_piutang from AR_SP_UnpaidInvoices_asof_check('{$date}','0','0','z','0','z') full outer join RPTransHdr on rptranshdr.trno = AR_SP_UnpaidInvoices_asof_check.trno where AR_SP_UnpaidInvoices_asof_check.SalesRepID <>'' order by AR_SP_UnpaidInvoices_asof_check.age desc"; $result = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); echo json_encode((array) $result, true); } public function get_work_order_data() { $date = (isset($_GET['date']) && $_GET['date']) ? " AND PSTRANSHDR.TRDATE = '" . (htmlspecialchars($_GET['date'])) . "'" : ''; $date1 = (isset($_GET['date1']) && $_GET['date1']) ? " AND PSTRANSHDR.TRDATE >= '" . (htmlspecialchars($_GET['date1'])) . "'" : ''; $date2 = (isset($_GET['date2']) && $_GET['date2']) ? " AND PSTRANSHDR.TRDATE <= '" . (htmlspecialchars($_GET['date2'])) . "'" : ''; $item = (isset($_GET['item']) && $_GET['item']) ? " AND PSTRANSDTL.ITEMID = '" . (htmlspecialchars($_GET['item'])) . "'" : ''; $limit = (isset($_GET['limit']) && $_GET['limit']) ? " TOP " . ((int) $_GET['limit']) : ''; $sql = "SELECT {$limit} PSTRANSDTL.ITEMID, PSTRANSDTL.Description, SUM(PSTRANSDTL.QT) Total_Quotation, SUM(PSTRANSDTL.QTY) Total_Quotationinkg, initem.Inventory_Unit, initem.Weight, initem.Weight_Unit FROM PSTRANSDTL INNER JOIN PSTRANSHDR ON PSTRANSHDR.SYS = PSTRANSDTL.SYS INNER JOIN initem ON PSTRANSDTL.ITEMID = INITEM.ITEMID WHERE PSTRANSHDR.APPROVED = '1' and pstranshdr.transcode = '53' {$item} {$date} {$date1} {$date2} GROUP BY PSTRANSDTL.ITEMID, PSTRANSDTL.Description, INITEM.Inventory_Unit,initem.Weight,initem.Weight_Unit"; $result = $this->db->query($sql); $this->db->query("COMMIT"); echo json_encode((array) ($limit ? $result->row_array() : $result->result_array()), true); } public function expected_arv_work_order_data() { $date = (isset($_GET['date']) && $_GET['date']) ? " AND PSTRANSHDR.TRDATE = '" . (htmlspecialchars($_GET['date'])) . "'" : ''; $date = (isset($_GET['date1']) && $_GET['date1']) ? " AND PSTRANSHDR.TRDATE >= '" . (htmlspecialchars($_GET['date1'])) . "'" : ''; $date = (isset($_GET['date2']) && $_GET['date2']) ? " AND PSTRANSHDR.TRDATE <= '" . (htmlspecialchars($_GET['date2'])) . "'" : ''; $item = (isset($_GET['item']) && $_GET['item']) ? " AND PSTRANSDTL.ITEMID = '" . (htmlspecialchars($_GET['item'])) . "'" : ''; $sql = "SELECT PSTRANSHDR.TRNO,PSDTLSCHEDULE.Expected_Arv, pstransdtl.ItemID,pstransdtl.Description,PSTRANSDTL.QT,PSTRANSDTL.UNITID,PSTRANSDTL.QTY FROM PSTRANSHDR JOIN PSTRANSDTL ON PSTRANSDTL.SYS = PSTRANSHDR.SYS join PSDTLSCHEDULE on PSDTLSCHEDULE.lineno = PSTRANSDTL.lineno and PSDTLSCHEDULE.sys = PSTRANSDTL.sys WHERE PSTRANSHDR.APPROVED = 1 and PSTRANSHDR.transcode = 53 {$item} {$date} group by PSTRANSHDR.TRNO,pstransdtl.ItemID ,pstransdtl.Description,PSTRANSDTL.QT,PSTRANSDTL.UNITID,PSTRANSDTL.QTY ,pSDTLSCHEDULE.Expected_Arv order by PSDTLSCHEDULE.Expected_Arv"; $result = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); echo json_encode((array) $result, true); } public function PSTRANSHDR() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('PSTRANSHDR'); // $sql = "select itemid,description, unitsetid,Inventory_Unit,itemgroupid,ItemCategoryID,ItemBrandID,ItemModelID,ClassID,GL_GroupID,Tax_GroupID from initem where itemgroupid = 105 or itemgroupid = 2007 or itemgroupid = 2002 or itemgroupid = 2011"; $sql = "SELECT SYS,TRNO,TRDATE,TRTYPE,CUSTBILLTO,CustSellTo,CUSTSHIPTO,CUSTTAXTO,OrderNo FROM PSTRANSHDR WHERE APPROVED =1 and (TRTYPE ='SQ004' or TRTYPE ='SQ003' or TRTYPE ='SQ002' or TRTYPE ='SQ001') "; $PSTRANSHDR = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); if ($PSTRANSHDR) $dbsales->insert_batch('PSTRANSHDR', $PSTRANSHDR); } public function PSTRANSDTL() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('PSTRANSDTL'); // $sql = "select itemid,description, unitsetid,Inventory_Unit,itemgroupid,ItemCategoryID,ItemBrandID,ItemModelID,ClassID,GL_GroupID,Tax_GroupID from initem where itemgroupid = 105 or itemgroupid = 2007 or itemgroupid = 2002 or itemgroupid = 2011"; $sql = "SELECT PSTRANSDTL.SYS,PSTRANSDTL.ITEMID,PSTRANSDTL.QT,PSTRANSDTL.UNITID,PSTRANSDTL.QTY,PSTRANSDTL.Description,PSTRANSDTL.LineNo FROM PSTRANSDTL JOIN PSTRANSHDR ON PSTRANSHDR.SYS = PSTRANSDTL.SYS WHERE PSTRANSHDR.APPROVED =1 and (TRTYPE ='SQ004' or TRTYPE ='SQ003' or TRTYPE ='SQ002' or TRTYPE ='SQ001')"; $PSTRANSDTL = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); if ($PSTRANSDTL) $dbsales->insert_batch('PSTRANSDTL', $PSTRANSDTL); } public function PSDTLSCHEDULE() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('PSDTLSCHEDULE'); $sql = "select PSDtlSchedule.sys, PSDtlSchedule.lineno , PSDtlSchedule.Expected_Arv,PSDtlSchedule.QT,PSDtlSchedule.Remarks from PSDtlSchedule join pstranshdr on pstranshdr.sys = PSDtlSchedule.sys where pstranshdr.transcode= 53"; $PSDTLSCHEDULE = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); if ($PSDTLSCHEDULE) $dbsales->insert_batch('PSDTLSCHEDULE', $PSDTLSCHEDULE); } public function get_conversion_data() { $item = (isset($_GET['item']) && $_GET['item']) ? (htmlspecialchars($_GET['item'])) : ''; $unitid = (isset($_GET['unitid']) && $_GET['unitid']) ? (htmlspecialchars($_GET['unitid'])) : ''; $sql = "select INUnitSetDtl.unitid,INUnitSetDtl.Conversion from initem join INUnitSetDtl on INUnitSetDtl.unitsetid = initem.unitsetid where initem.itemid ='{$item}' and INUnitSetDtl.unitid = '{$unitid}'"; $result = $this->db->query($sql)->row_array(); $this->db->query("COMMIT"); echo json_encode((array) $result, true); } public function get_project_list() { $sql = "select projectid from PXProjectCC"; $result = $this->db->query($sql)->result_array(); echo json_encode((array) $result, true); } public function VmonitoringSalesRetur() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('VmonitoringSalesRetur'); $sql = "select distinct PSH.EntityID, PSH.TrDate AS TANGGAL_SRO, PSH.TrNo AS SRO, inh.trdate AS TANGGAL_SR, inh.trno AS SR, rph.trdate AS TANGGAL_SRI, rph.trno AS SRI, PSH.ORDERNO AS NOMOR_SO, psh.TRMANUALREF, psh.CUSTBILLTO AS KODE_CUST, ARC.CUSTNAME AS NAMA_CUST, psh.FOOTERNOTE AS NOTE_FOOTER, psh.ENTRYTIME AS WAKTU_INPUT_SRO, PSH.Added_by AS USER_ENTRY_SRO, PSD.ITEMID AS KODE_ITEM, PSD.Description AS DESKRIPSI, PSD.LOCATIONID, PSd.QT AS QTY_SRO, PSD.QTY AS TONASE_SRO from pstranshdr as PSH join pstransdtl AS PSD ON PSH.SYS = PSD.SYS left join intransdtl as IND ON IND.ORDERNO = PSH.TrNo left Join intranshdr as INH ON INH.sys = ind.sys LEFT join arcustomer as arc on arc.custid = psh.custbillto LEFT join initem as ITM on ITM.Itemid = IND.itemid LEFT join rptranshdr as RPH on RPH.Trno = INH.Invoiceno where PSD.transcode like '56' and psh.void_ like '0' order by PSH.ENTITYID DESC, psh.trdate desc"; $VmonitoringSalesRetur = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $dbsales->insert_batch('VmonitoringSalesRetur', $VmonitoringSalesRetur); } // public function Vsales() // { // $dbsales = $this->load->database('dbsales', TRUE); // $dbsales->truncate('Vsales'); // $sql = "select // intranshdr.trno as SJNO, // intranshdr.trdate as SJDate, // intranshdr.custbillto, // intranshdr.custsellto, // intranshdr.custshipto, // intranshdr.custtaxto, // intranshdr.FooterNote, // intranshdr.InvoiceNo, // intranshdr.OrderNo, // intransdtl.ItemID, // intransdtl.Description, // intransdtl.qt, // intransdtl.unitid, // intransdtl.qty, // intransdtl.unitprice, // INTransDtl.DiscAmt, // intransdtl.Taxable, // intransdtl.TaxAmt, // INTransDtl.NetAmt // from intranshdr // inner join intransdtl on intranshdr.sys = intransdtl.sys // where intranshdr.transcode =3 and intranshdr.periodid >=10 and intranshdr.periodid <=30"; // $Vsales = $this->db->query($sql)->result_array(); // $dbsales->insert_batch('Vsales', $Vsales); // } // public function Vsales2() // { // $dbsales = $this->load->database('dbsales', TRUE); // $sql = "select // intranshdr.trno as SJNO, // intranshdr.trdate as SJDate, // intranshdr.custbillto, // intranshdr.custsellto, // intranshdr.custshipto, // intranshdr.custtaxto, // intranshdr.FooterNote, // intranshdr.InvoiceNo, // intranshdr.OrderNo, // intransdtl.ItemID, // intransdtl.Description, // intransdtl.qt, // intransdtl.unitid, // intransdtl.qty, // intransdtl.unitprice, // INTransDtl.DiscAmt, // intransdtl.Taxable, // intransdtl.TaxAmt, // INTransDtl.NetAmt // from intranshdr // inner join intransdtl on intranshdr.sys = intransdtl.sys // where intranshdr.transcode =3 and intranshdr.periodid >=31 and intranshdr.periodid <=60"; // $Vsales = $this->db->query($sql)->result_array(); // if($Vsales) // $dbsales->insert_batch('Vsales', $Vsales); // } // public function Vpembayaran() // { // $dbsales = $this->load->database('dbsales', TRUE); // $dbsales->truncate('Vpembayaran'); // $sql = "select // catrhdr.TrNo as nobayar, // catrhdr.trdate as tanggalbayar, // catrdtl.trno as noalokasi, // vCADetailAllocation.invoiceno as noinvoice, // catrdtl.amount as nilaibayar, // catrdtl.CustomerID, // catrdtl.Remarks // from catrhdr // join catrdtl on catrdtl.catrsys = catrhdr.CATRsys // join RPPmtAllocation on RPPmtAllocation.trno = catrdtl.trno // join vCADetailAllocation on vCADetailAllocation.paymentno = RPPmtAllocation.trno // where catrdtl.CustomerID <> '' and CATRHdr.EntityID in (01,02,03,04,05,06,07,09,10)"; // $Vpembayaran = $this->db->query($sql)->result_array(); // if($Vpembayaran) // $dbsales->insert_batch('Vpembayaran', $Vpembayaran); // } // public function Vpembayaran2() // { // $dbsales = $this->load->database('dbsales', TRUE); // $sql = "select // catrhdr.TrNo as nobayar, // catrhdr.trdate as tanggalbayar, // catrdtl.trno as noalokasi, // vCADetailAllocation.invoiceno as noinvoice, // catrdtl.amount as nilaibayar, // catrdtl.CustomerID, // catrdtl.Remarks // from catrhdr // join catrdtl on catrdtl.catrsys = catrhdr.CATRsys // join RPPmtAllocation on RPPmtAllocation.trno = catrdtl.trno // join vCADetailAllocation on vCADetailAllocation.paymentno = RPPmtAllocation.trno // where catrdtl.CustomerID <> '' and CATRHdr.EntityID in (08) and CATRHdr.periodid >= 0 and CATRHdr.PeriodID <=40"; // $Vpembayaran = $this->db->query($sql)->result_array(); // if($Vpembayaran) // $dbsales->insert_batch('Vpembayaran', $Vpembayaran); // } // public function Vpembayaran3() // { // $dbsales = $this->load->database('dbsales', TRUE); // $sql = "select // catrhdr.TrNo as nobayar, // catrhdr.trdate as tanggalbayar, // catrdtl.trno as noalokasi, // vCADetailAllocation.invoiceno as noinvoice, // catrdtl.amount as nilaibayar, // catrdtl.CustomerID, // catrdtl.Remarks // from catrhdr // join catrdtl on catrdtl.catrsys = catrhdr.CATRsys // join RPPmtAllocation on RPPmtAllocation.trno = catrdtl.trno // join vCADetailAllocation on vCADetailAllocation.paymentno = RPPmtAllocation.trno // where catrdtl.CustomerID <> '' and CATRHdr.EntityID in (08) and CATRHdr.periodid >= 41 and CATRHdr.PeriodID <=80"; // $Vpembayaran = $this->db->query($sql)->result_array(); // if($Vpembayaran) // $dbsales->insert_batch('Vpembayaran', $Vpembayaran); // } public function customerbank() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('customerbank'); $sql = "select custid,no,CurrencyID,bankname,bankaddress,accountno,AccountHolder,remarks from arcustomerbank"; $customerbank = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $dbsales->insert_batch('customerbank', $customerbank); } public function Vcreditnote() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('Vcreditnote'); $sql = "select rptranshdr1.trno as nobayar, rptranshdr1.TrDate,'' as noalokasi, rptranshdr2.trno as noinvoice, rptranshdr1.netamt as nilaibayar, rptranshdr1.custid, '' as remark from rptranshdr as rptranshdr1 join RPPmtAllocation on RPPmtAllocation.trno = rptranshdr1.trno join RPPmtSch on RPPmtSch.siteid = RPPmtAllocation.schsiteid and RPPmtSch.Sys = RPPmtAllocation.schsys and RPPmtSch.no_ = RPPmtAllocation.schno_ join rptranshdr as rptranshdr2 on RPPmtSch.siteid = rptranshdr2.siteid and RPPmtSch.Sys = rptranshdr2.sys join arcustomer on arcustomer.custid = rptranshdr1.custid"; $Vcreditnote = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $dbsales->insert_batch('Vcreditnote', $Vcreditnote); } public function vsalesrep() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('vsalesrep'); $sql = "select ARSalesDirector.salesdirid as salesdirid, ARSalesDirector.Name_ as namesalesdir, ARSalesCountryMgr.CountryMgrID as salescountrymanagerid, ARSalesCountryMgr.Name_ as namesalescountrymanager, arsalesmgr.mgrID as salesmanagerid, arsalesmgr.Name_ as namesalesmgr, ARSalesSpv.SpvID as salesspvid, ARSalesSpv.name_ as namesalesspv, ARSalesrep.SalesRepID as salesrepid, arsalesrep.name_ as namesalesrep from ARSalesRep join ARSalesSpv on ARSalesSpv.SpvID = ARSalesRep.SpvID join arsalesmgr on arsalesmgr.MgrID = ARSalesSpv.MgrID join ARSalesCountryMgr on ARSalesCountryMgr.CountryMgrID = arsalesmgr.CountryMgrID join ARSalesDirector on ARSalesDirector.salesdirid = ARSalesCountryMgr.SalesDirID"; $vsalesrep = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $dbsales->insert_batch('vsalesrep', $vsalesrep); } public function RPTRANSHDR() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('RPTRANSHDR'); $sql = "select RPTransHdr.TRNO, RPTransHdr.TrManualRef,RPTransHdr.TrManualRef2,RPTransHdr.TRDATE,RPTransHdr.SuppID,RPTransHdr.ORDERNO,rptranshdr.sys from RPTransHdr where RPTransHdr.trtype = 'AP101'"; $RPTRANSHDR = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $dbsales->insert_batch('RPTRANSHDR', $RPTRANSHDR); } public function RPTRANSDTL() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('RPTRANSDTL'); $sql = "select RPTRANSDTL.Sys, RPTRANSDTL.ItemID, RPTRANSDTL.Description, RPTransDtl.QT, RPTransDtl.UNITID, RPTRANSDTL.UnitPrice, RPTRANSDTL.DiscAmt, RPTRANSDTL.GrossAmt, RPTRANSDTL.TaxAmt, RPTRANSDTL.NetAmt FROM RPTransHdr JOIN RPTransDtl ON RPTransDtl.SYS = RPTransHdr.SYS where RPTransHdr.trtype = 'AP101'"; $RPTRANSDTL = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $dbsales->insert_batch('RPTRANSDTL', $RPTRANSDTL); } public function APSUPPLIER() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('APSUPPLIER'); $sql = "select suppid,suppname,address,phones,taxid,city,gl_groupid,TOP_ID from APSupplier where gl_groupid ='APGLG001'"; $APSUPPLIER = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $dbsales->insert_batch('APSUPPLIER', $APSUPPLIER); } public function no_wo($trtype, $tanggal_produksi, $return = false) { $date = date('ym', strtotime($tanggal_produksi)); $no = $this->db->query("select NEXTNO next from PXNumbering where trtype ='{$trtype}' AND SEQSET = '{$date}'")->row(); $this->db->query("COMMIT"); $no = ($no ? $no->next : '1'); if ($return) return $no; echo $no; die; } public function sys_wo($return = false) { $sys = $this->db->query("select max(sys) sys from intranshdr")->row(); $this->db->query("COMMIT"); $no = (int) $sys->sys + 1; if ($return) return $no; echo $no; die; } public function periodID() { switch (date('n')) { case '1': $code = 51; break; case '2': $code = 52; break; case '3': $code = 53; break; case '4': $code = 54; break; case '5': $code = 55; break; case '56': $code = 56; break; case '57': $code = 57; break; case '58': $code = 58; break; case '59': $code = 59; break; case '60': $code = 60; break; case '61': $code = 61; break; case '62': $code = 62; break; default: //case '3': $code = 53; break; } return $code; } public function orlansoft() { if (isset($_POST['data'])) { $dbsales = $this->load->database('dbsales', TRUE); foreach ((array) $_POST['data'] as $no) { $wo = $dbsales->get_where('work_order', ['trno' => $no])->row(); $ps = $dbsales->query("SELECT PSDTLSCHEDULE.Expected_Arv FROM PSTRANSDTL JOIN PSTRANSHDR ON PSTRANSHDR.SYS = PSTRANSDTL.SYS join PSDTLSCHEDULE on PSDTLSCHEDULE.lineno = PSTRANSDTL.lineno")->row(); $sys_wo = $this->sys_wo(true); $period = $this->periodID(); $project = $wo->project; $trtype = sprintf('WO%s8', $wo->area_produksi); $tanggal_produksi = $wo->tanggal_produksi; $seqset = date('ym', strtotime($tanggal_produksi)); $item = $dbsales->get_where('item', ['itemid' => $wo->item])->row_array(); $data = [ "SiteID" => '001', "Sys" => $sys_wo, "PeriodID" => $period, "EntityID" => '08', "XRPeriod" => '1131', "TrNo" => $no, "TrManualRef" => $item['description'], "TrManualRef2" => $wo->shift_produksi, "TrDate" => $tanggal_produksi, "TrTime" => date('H:i:s'), "TrType" => $trtype, "TransCode" => 7, "Expected_Dlv" => $ps ? $ps->Expected_Arv : date('Y-m-d'), "Expected_Arv" => $ps ? $ps->Expected_Arv : date('Y-m-d'), "SuppID" => NULL, "CustBillTo" => NULL, "CustSellTo" => NULL, "CustShipTo" => NULL, "CustTaxTo" => NULL, "TOP_ID" => NULL, "TOP_days" => NULL, "TaxCalc" => NULL, "TaxInvoiceNo" => NULL, "TaxInvoiceDate" => date('Y-m-d'), "TaxSubmitDate" => date('Y-m-d'), "SalesRepID" => NULL, "DlvMtdID" => NULL, "ShipToNote" => NULL, "HeaderNote" => NULL, "FooterNote" => NULL, "EntryTime" => date('Y-m-d H:i:s'), "Added_by" => 'SA', "Changed_by" => 'SA', "Approved" => 0, "XRPeriodTax" => NULL, "CurrencyID" => 'IDR', "Posted" => 0, "PriceID" => NULL, "DiscPct_" => 0, "DiscPct" => NULL, "DiscPct2" => NULL, "DiscPct3" => NULL, "DiscPct4" => NULL, "DiscPct5" => NULL, "DiscAmt" => 0, "CounterCOAID" => 0, "LocationID" => NULL, "LocationID2" => NULL, "ManualCalc_" => NULL, "InvoiceNo" => NULL, "OrderNo" => NULL, "ProjectID" => $project, "Printed" => 0, "Void_" => NULL, "String1" => 0, "String2" => NULL, "String3" => NULL, "String4" => NULL, "Numeric1" => NULL, "InvDiscChanged" => NULL, "NetAmt" => 0, "ControlTotal" => 0, "UsePLComp" => 0, "UsePLReceipt" => 0, "PriceIDReceipt" => 0, "TOP_ID2" => 0, "ListID" => 0, "Mf" => NULL, "MfRet" => NULL, "POS_" => NULL, "POS_StationID" => NULL, "POS_ShiftID" => 0, "POS_CashierID" => 0, "RO_" => NULL, "UniqueTaxNo" => NULL, "SuppShipTo" => NULL, "Synchronized" => NULL, "DateTime1" => date('Y-m-d'), "DateTime2" => date('Y-m-d'), "QtyException" => NULL, "QtyExceptReason" => NULL, "Last_Modified" => date('Y-m-d H:i:s'), "Saved_" => NULL, "DiscAmt2" => NULL, "Date1" => date('Y-m-d H:i:s'), "InvDiscAmt1" => 1, "InvDiscAmt2" => 0, "InvDiscAmt3" => 0, "InvDiscAmt4" => NULL, "InvDiscAmt5" => NULL, "LocationTrNo" => NULL, "CalcMixItemBonus" => NULL, "LotID" => NULL, "ShipmentNo" => NULL, "RejectionNo" => NULL, "WarehouseID" => NULL, "AreaID" => 0, "POS_ExtraDiscReason" => NULL, "POS_ExtraDiscAmt" => NULL, "ShipToVirtualLocation" => NULL, "SuppPurchFrom" => NULL, "ForwarderID" => 0 ]; $columns = implode('`,`', array_keys($data)); $values = implode("','", array_values($data)); // echo "INSERT INTO `DBA`.`INTransHdr` (`{$columns}`) VALUES ('{$values}')"; $this->db->query("INSERT INTO `DBA`.`INTransHdr` (`{$columns}`) VALUES ('{$values}')"); $this->db->query("COMMIT"); //data work_order $num = 1; $data = [ "SiteID" => '001', "Sys" => $sys_wo, "LineNo" => $num++, "TransCode" => 7, "ItemID" => $wo->item, "PeriodID" => $period, "LocationID" => 'GGR-BJ', "LocationID2" => NULL, "ProjectID" => $project, "QT" => (strtoupper(trim($item['Inventory_Unit'])) == 'KG') ? $wo->total_kg : $wo->total_unit, "UnitID" => $item['Inventory_Unit'], "Qty" => $wo->total_kg, "Qty2" => 0, "Description" => $item['description'], "Remarks" => NULL, "Length_" => NULL, "Width_" => NULL, "Height" => NULL, "Diameter" => NULL, "UnitPrice" => NULL, "DiscPct" => NULL, "GrossAmt" => NULL, "DiscAmt" => NULL, "Taxable" => NULL, "TaxAmt" => NULL, "Rounding" => NULL, "NetAmt" => NULL, "Qty_Inv" => NULL, "Qty2_Inv" => NULL, "OrderNo" => NULL, "OrderLineNo" => NULL, "InvoiceNo" => NULL, "DiscPct2" => NULL, "DiscPct3" => NULL, "DiscPct4" => NULL, "DiscPct5" => NULL, "DiscPct_" => NULL, "InvDiscAmt" => NULL, "COGSUnit" => NULL, "COGSUnit2" => NULL, "NewLot_" => NULL, "LineType" => NULL, "Minus_" => 0, "String1" => NULL, "Numeric1" => NULL, "Barcode" => NULL, "ShippingUnit" => NULL, "ShippingQty" => 0, "QtyUsed" => NULL, "QtySetup" => NULL, "TrailerType" => NULL, "ReserveID" => NULL, "ReasonID" => NULL, "ROTNo" => NULL, "ROTLineNo" => NULL, "GiftLineNo" => NULL, "Bonus_" => NULL, "GiftID" => NULL, "FA_No" => NULL, "PriceID" => NULL, "String2" => NULL, "String3" => NULL, "String4" => NULL, "UseItemPlann" => NULL, "Changed_by" => NULL, "Last_Modified" => date('Y-m-d H:i:s'), "EditStock_" => 1, "GiftID2" => NULL, "InvDiscAmt2" => NULL, "PromoClaimPrice" => NULL, "ReturnType" => NULL, "Tax_GroupID" => NULL, "GiftIDApplyTo" => NULL, "Last_Scan" => date('Y-m-d H:i:s'), "WO_" => 0, "ExtraDiscAmt" => NULL, "Added_by" => NULL, "EntryTime" => date('Y-m-d H:i:s'), "CountLotID" => NULL, "Multiplier" => 1 ]; $columns = implode('`,`', array_keys($data)); $values = implode("','", array_values($data)); $this->db->query("INSERT INTO `DBA`.`INTransDtl` (`{$columns}`) VALUES ('{$values}')"); $this->db->query("COMMIT"); $issued = $dbsales->get_where('issuecomponent', ['Trno' => $no])->result_array(); foreach ($issued as $is) { if (empty($is['UnitID'])) { $item = $dbsales->get_where('item', ['itemid' => $is['ItemID']])->row_array(); if ($item) $is['UnitID'] = $item['Inventory_Unit']; } $data = [ "SiteID" => '001', "Sys" => $sys_wo, "LineNo" => $num++, "TransCode" => 8, "ItemID" => $is['ItemID'], "PeriodID" => $period, "LocationID" => 'GGR', "LocationID2" => NULL, "ProjectID" => $project, "QT" => $is['QT'], "UnitID" => $is['UnitID'], "Qty" => $is['QTY'], "Qty2" => 0, "Description" => $is['Description'], "Remarks" => NULL, "Length_" => NULL, "Width_" => NULL, "Height" => NULL, "Diameter" => NULL, "UnitPrice" => NULL, "DiscPct" => NULL, "GrossAmt" => NULL, "DiscAmt" => NULL, "Taxable" => NULL, "TaxAmt" => NULL, "Rounding" => NULL, "NetAmt" => NULL, "Qty_Inv" => NULL, "Qty2_Inv" => NULL, "OrderNo" => NULL, "OrderLineNo" => NULL, "InvoiceNo" => NULL, "DiscPct2" => NULL, "DiscPct3" => NULL, "DiscPct4" => NULL, "DiscPct5" => NULL, "DiscPct_" => NULL, "InvDiscAmt" => NULL, "COGSUnit" => NULL, "COGSUnit2" => NULL, "NewLot_" => NULL, "LineType" => NULL, "Minus_" => 0, "String1" => NULL, "Numeric1" => NULL, "Barcode" => NULL, "ShippingUnit" => NULL, "ShippingQty" => 0, "QtyUsed" => NULL, "QtySetup" => NULL, "TrailerType" => NULL, "ReserveID" => NULL, "ReasonID" => NULL, "ROTNo" => NULL, "ROTLineNo" => NULL, "GiftLineNo" => NULL, "Bonus_" => NULL, "GiftID" => NULL, "FA_No" => NULL, "PriceID" => NULL, "String2" => NULL, "String3" => NULL, "String4" => NULL, "UseItemPlann" => NULL, "Changed_by" => NULL, "Last_Modified" => date('Y-m-d H:i:s'), "EditStock_" => 1, "GiftID2" => NULL, "InvDiscAmt2" => NULL, "PromoClaimPrice" => NULL, "ReturnType" => NULL, "Tax_GroupID" => NULL, "GiftIDApplyTo" => NULL, "Last_Scan" => date('Y-m-d H:i:s'), "WO_" => 0, "ExtraDiscAmt" => NULL, "Added_by" => NULL, "EntryTime" => date('Y-m-d H:i:s'), "CountLotID" => NULL, "Multiplier" => 1 ]; $columns = implode('`,`', array_keys($data)); $values = implode("','", array_values($data)); $this->db->query("INSERT INTO `DBA`.`INTransDtl` (`{$columns}`) VALUES ('{$values}')"); $this->db->query("COMMIT"); } //update nextno PXNumbering $nextno = (int) $this->no_wo($trtype, $tanggal_produksi, true) + 1; $this->db->query("update PXNumbering set nextno = {$nextno} where trtype ='{$trtype}' AND SEQSET = '{$seqset}'"); $this->db->query("COMMIT"); } echo 'OK'; } else { echo 'FAILED'; } die; } public function orlansoftsql() { if (isset($_POST['data'])) { $dbsales = $this->load->database('dbsales', TRUE); foreach ((array) $_POST['data'] as $no) { $wo = $dbsales->get_where('work_order', ['trno' => $no])->row(); $ps = $dbsales->query("SELECT PSDTLSCHEDULE.Expected_Arv FROM PSTRANSDTL JOIN PSTRANSHDR ON PSTRANSHDR.SYS = PSTRANSDTL.SYS join PSDTLSCHEDULE on PSDTLSCHEDULE.lineno = PSTRANSDTL.lineno")->row(); $sys_wo = $this->sys_wo(true); $period = $this->periodID(); $project = $wo->project; $trtype = sprintf('WO%s8', $wo->area_produksi); $tanggal_produksi = $wo->tanggal_produksi; $seqset = date('ym', strtotime($tanggal_produksi)); $item = $dbsales->get_where('item', ['itemid' => $wo->item])->row_array(); $data = [ "SiteID" => '001', "Sys" => $sys_wo, "PeriodID" => $period, "EntityID" => '08', "XRPeriod" => '1131', "TrNo" => $no, "TrManualRef" => $item['description'], "TrManualRef2" => $wo->shift_produksi, "TrDate" => $tanggal_produksi, "TrTime" => date('H:i:s'), "TrType" => $trtype, "TransCode" => 7, "Expected_Dlv" => $ps ? $ps->Expected_Arv : date('Y-m-d'), "Expected_Arv" => $ps ? $ps->Expected_Arv : date('Y-m-d'), "SuppID" => NULL, "CustBillTo" => NULL, "CustSellTo" => NULL, "CustShipTo" => NULL, "CustTaxTo" => NULL, "TOP_ID" => NULL, "TOP_days" => NULL, "TaxCalc" => NULL, "TaxInvoiceNo" => NULL, "TaxInvoiceDate" => date('Y-m-d'), "TaxSubmitDate" => date('Y-m-d'), "SalesRepID" => NULL, "DlvMtdID" => NULL, "ShipToNote" => NULL, "HeaderNote" => NULL, "FooterNote" => NULL, "EntryTime" => date('Y-m-d H:i:s'), "Added_by" => 'SA', "Changed_by" => 'SA', "Approved" => 0, "XRPeriodTax" => NULL, "CurrencyID" => 'IDR', "Posted" => 0, "PriceID" => NULL, "DiscPct_" => 0, "DiscPct" => NULL, "DiscPct2" => NULL, "DiscPct3" => NULL, "DiscPct4" => NULL, "DiscPct5" => NULL, "DiscAmt" => 0, "CounterCOAID" => 0, "LocationID" => NULL, "LocationID2" => NULL, "ManualCalc_" => NULL, "InvoiceNo" => NULL, "OrderNo" => NULL, "ProjectID" => $project, "Printed" => 0, "Void_" => NULL, "String1" => 0, "String2" => NULL, "String3" => NULL, "String4" => NULL, "Numeric1" => NULL, "InvDiscChanged" => NULL, "NetAmt" => 0, "ControlTotal" => 0, "UsePLComp" => 0, "UsePLReceipt" => 0, "PriceIDReceipt" => 0, "TOP_ID2" => 0, "ListID" => 0, "Mf" => NULL, "MfRet" => NULL, "POS_" => NULL, "POS_StationID" => NULL, "POS_ShiftID" => 0, "POS_CashierID" => 0, "RO_" => NULL, "UniqueTaxNo" => NULL, "SuppShipTo" => NULL, "Synchronized" => NULL, "DateTime1" => date('Y-m-d'), "DateTime2" => date('Y-m-d'), "QtyException" => NULL, "QtyExceptReason" => NULL, "Last_Modified" => date('Y-m-d H:i:s'), "Saved_" => NULL, "DiscAmt2" => NULL, "Date1" => date('Y-m-d H:i:s'), "InvDiscAmt1" => 1, "InvDiscAmt2" => 0, "InvDiscAmt3" => 0, "InvDiscAmt4" => NULL, "InvDiscAmt5" => NULL, "LocationTrNo" => NULL, "CalcMixItemBonus" => NULL, "LotID" => NULL, "ShipmentNo" => NULL, "RejectionNo" => NULL, "WarehouseID" => NULL, "AreaID" => 0, "POS_ExtraDiscReason" => NULL, "POS_ExtraDiscAmt" => NULL, "ShipToVirtualLocation" => NULL, "SuppPurchFrom" => NULL, "ForwarderID" => 0 ]; $columns = implode('`,`', array_keys($data)); $values = implode("','", array_values($data)); echo "INSERT INTO `DBA`.`INTransHdr` (`{$columns}`) VALUES ('{$values}')\n\n"; //data work_order $num = 1; $data = [ "SiteID" => '001', "Sys" => $sys_wo, "LineNo" => $num++, "TransCode" => 7, "ItemID" => $wo->item, "PeriodID" => $period, "LocationID" => 'GGR-BJ', "LocationID2" => NULL, "ProjectID" => $project, "QT" => (strtoupper(trim($item['Inventory_Unit'])) == 'KG') ? $wo->total_kg : $wo->total_unit, "UnitID" => $item['Inventory_Unit'], "Qty" => $wo->total_kg, "Qty2" => 0, "Description" => $item['description'], "Remarks" => NULL, "Length_" => NULL, "Width_" => NULL, "Height" => NULL, "Diameter" => NULL, "UnitPrice" => NULL, "DiscPct" => NULL, "GrossAmt" => NULL, "DiscAmt" => NULL, "Taxable" => NULL, "TaxAmt" => NULL, "Rounding" => NULL, "NetAmt" => NULL, "Qty_Inv" => NULL, "Qty2_Inv" => NULL, "OrderNo" => NULL, "OrderLineNo" => NULL, "InvoiceNo" => NULL, "DiscPct2" => NULL, "DiscPct3" => NULL, "DiscPct4" => NULL, "DiscPct5" => NULL, "DiscPct_" => NULL, "InvDiscAmt" => NULL, "COGSUnit" => NULL, "COGSUnit2" => NULL, "NewLot_" => NULL, "LineType" => NULL, "Minus_" => 0, "String1" => NULL, "Numeric1" => NULL, "Barcode" => NULL, "ShippingUnit" => NULL, "ShippingQty" => 0, "QtyUsed" => NULL, "QtySetup" => NULL, "TrailerType" => NULL, "ReserveID" => NULL, "ReasonID" => NULL, "ROTNo" => NULL, "ROTLineNo" => NULL, "GiftLineNo" => NULL, "Bonus_" => NULL, "GiftID" => NULL, "FA_No" => NULL, "PriceID" => NULL, "String2" => NULL, "String3" => NULL, "String4" => NULL, "UseItemPlann" => NULL, "Changed_by" => NULL, "Last_Modified" => date('Y-m-d H:i:s'), "EditStock_" => 1, "GiftID2" => NULL, "InvDiscAmt2" => NULL, "PromoClaimPrice" => NULL, "ReturnType" => NULL, "Tax_GroupID" => NULL, "GiftIDApplyTo" => NULL, "Last_Scan" => date('Y-m-d H:i:s'), "WO_" => 0, "ExtraDiscAmt" => NULL, "Added_by" => NULL, "EntryTime" => date('Y-m-d H:i:s'), "CountLotID" => NULL, "Multiplier" => 1 ]; $columns = implode('`,`', array_keys($data)); $values = implode("','", array_values($data)); echo "INSERT INTO `DBA`.`INTransDtl` (`{$columns}`) VALUES ('{$values}')\n\n"; $issued = $dbsales->get_where('issuecomponent', ['Trno' => $no])->result_array(); foreach ($issued as $is) { if (empty($is['UnitID'])) { $item = $dbsales->get_where('item', ['itemid' => $is['ItemID']])->row_array(); if ($item) $is['UnitID'] = $item['Inventory_Unit']; } $data = [ "SiteID" => '001', "Sys" => $sys_wo, "LineNo" => $num++, "TransCode" => 8, "ItemID" => $is['ItemID'], "PeriodID" => $period, "LocationID" => 'GGR', "LocationID2" => NULL, "ProjectID" => $project, "QT" => $is['QT'], "UnitID" => $is['UnitID'], "Qty" => $is['QTY'], "Qty2" => 0, "Description" => $is['Description'], "Remarks" => NULL, "Length_" => NULL, "Width_" => NULL, "Height" => NULL, "Diameter" => NULL, "UnitPrice" => NULL, "DiscPct" => NULL, "GrossAmt" => NULL, "DiscAmt" => NULL, "Taxable" => NULL, "TaxAmt" => NULL, "Rounding" => NULL, "NetAmt" => NULL, "Qty_Inv" => NULL, "Qty2_Inv" => NULL, "OrderNo" => NULL, "OrderLineNo" => NULL, "InvoiceNo" => NULL, "DiscPct2" => NULL, "DiscPct3" => NULL, "DiscPct4" => NULL, "DiscPct5" => NULL, "DiscPct_" => NULL, "InvDiscAmt" => NULL, "COGSUnit" => NULL, "COGSUnit2" => NULL, "NewLot_" => NULL, "LineType" => NULL, "Minus_" => 0, "String1" => NULL, "Numeric1" => NULL, "Barcode" => NULL, "ShippingUnit" => NULL, "ShippingQty" => 0, "QtyUsed" => NULL, "QtySetup" => NULL, "TrailerType" => NULL, "ReserveID" => NULL, "ReasonID" => NULL, "ROTNo" => NULL, "ROTLineNo" => NULL, "GiftLineNo" => NULL, "Bonus_" => NULL, "GiftID" => NULL, "FA_No" => NULL, "PriceID" => NULL, "String2" => NULL, "String3" => NULL, "String4" => NULL, "UseItemPlann" => NULL, "Changed_by" => NULL, "Last_Modified" => date('Y-m-d H:i:s'), "EditStock_" => 1, "GiftID2" => NULL, "InvDiscAmt2" => NULL, "PromoClaimPrice" => NULL, "ReturnType" => NULL, "Tax_GroupID" => NULL, "GiftIDApplyTo" => NULL, "Last_Scan" => date('Y-m-d H:i:s'), "WO_" => 0, "ExtraDiscAmt" => NULL, "Added_by" => NULL, "EntryTime" => date('Y-m-d H:i:s'), "CountLotID" => NULL, "Multiplier" => 1 ]; $columns = implode('`,`', array_keys($data)); $values = implode("','", array_values($data)); echo "INSERT INTO `DBA`.`INTransDtl` (`{$columns}`) VALUES ('{$values}')"; } } echo 'OK'; } else { echo 'FAILED'; } die; } public function cek_balance() { if (isset($_POST['ds'], $_POST['de'], $_POST['location'], $_POST['gl_group'])) { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('cek_balance'); $location = ($_POST['location'] == 'all') ? '' : "AND a.locationid ='" . $_POST['location'] . "'"; $sql = "select b.blocked, b.gl_groupid,c.description,a.locationid,a.desclocation,a.itemid, a.descitem, a.inventory_unit,a.beginqty_,a.inqty_,a.outqty_,a.endqty_ from IN_LocationStockDaily(('" . $_POST['ds'] . "'),('" . $_POST['de'] . "'),'0','z','0','z') as a full outer join initem as b on a.itemid = b.itemid full outer join INGLGroup as c on b.gl_groupid = c.ID where b.gl_groupid ='" . $_POST['gl_group'] . "' " . $location . " and not a.locationid = 'null' order by a.locationid asc"; $cek_balance = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); if ($cek_balance) { $dbsales->insert_batch('cek_balance', $cek_balance); echo 'OK'; die; } } } public function gl_group_balance() { if (isset($_POST['ds'], $_POST['de'], $_POST['location'])) { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('gl_group_balance'); $location = ($_POST['location'] == 'all') ? '' : "AND a.locationid ='" . $_POST['location'] . "'"; $sql = "select distinct b.gl_groupid, c.Description from IN_LocationStockDaily(('" . $_POST['ds'] . "'),('" . $_POST['de'] . "'),'0','z','0','z') as a full outer join initem as b on a.itemid = b.itemid full outer join INGLGroup as c on b.gl_groupid = c.ID where b.GL_GroupID like 'IN%' and not a.locationid = 'null' " . $location; $gl_group_balance = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); if ($gl_group_balance) { $dbsales->insert_batch('gl_group_balance', $gl_group_balance); echo 'OK'; die; } } } public function get_purchase_request_outstanding_data() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('purchase_request_outstanding'); $sql = "SELECT COUNT(*) TOTAL from PR_Outstanding(0,'z',0,'z',0,'z',0,'z',getdate()) as a WHERE qtyPRoutstanding <>0 AND wo_ = 0 GROUP BY a.itemid, a.itemdesc, a.unitid,a.locationid"; $total = $this->db->query($sql)->num_rows(); $limit = 1000; for ($offset = 1; $offset < $total; $offset += $limit) { $sql = "SELECT TOP {$limit} START AT {$offset} a.entityid,a.trtype,a.requestorid,a.requestorname, a.trdate,a.trno, a.itemid, a.itemdesc, a.qt as qt, a.qtorder as qtorder, a.qtproutstanding as qtproutstanding, a.unitid, a.locationid from PR_Outstanding(0,'z',0,'z',0,'z',0,'z',getdate()) as a WHERE qtyPRoutstanding <>0 AND wo_ = 0"; $purchase_request_outstanding = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $dbsales->insert_batch('purchase_request_outstanding', $purchase_request_outstanding); } } public function get_purchase_order_outstanding_data() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('purchase_order_outstanding'); $sql = "SELECT COUNT(*) total FROM PO_Outstanding ('0', 'z', '0', 'z', '0', 'z', '0', 'z', getdate()) AS a JOIN prpo AS b ON a.sys = b.sys AND a.lineno = b.lineno"; $total = $this->db->query($sql)->row()->total; $limit = 1000; for ($offset = 1; $offset < $total; $offset += $limit) { // $sql = "SELECT TOP {$limit} START AT {$offset} // a.entityid,a.trtype,a.trtypedesc,a.trdate,a.trno,a.suppid,a.suppname,a.itemid, a.itemdesc,a.qt,a.qt,a.qtreturn,a.qtreceived,a.qtoutstanding,a.unitid,a.locationid,b.PRNo // FROM PO_Outstanding ('0', 'z', '0', 'z', '0', 'z', '0', 'z', getdate()) AS a // JOIN prpo AS b ON a.sys = b.sys AND a.lineno = b.lineno"; $sql = "SELECT TOP {$limit} START AT {$offset} a.trdate,a.trno,a.suppid,a.suppname,a.itemid, a.itemdesc,a.qt,a.qtreturn,a.qtreceived,a.qtoutstanding,a.unitid,a.locationid,b.PRNo from PO_Outstanding ('0', 'z', '0', 'z', '0', 'z', '0', 'z', getdate()) as a join prpo as b on a.sys = b.sys and a.lineno = b.lineno where a.suppid='idsupplier' AND a.qtoutstanding <> 0"; $purchase_order_outstanding = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $purchase_order_outstanding_supplier = array_map(function ($arr) { return [ 'suppid' => $arr['suppid'], 'suppname' => $arr['suppname'] ]; }, $purchase_order_outstanding); $dbsales->insert_batch('purchase_order_outstanding', $purchase_order_outstanding); $dbsales->insert_batch('purchase_order_outstanding_supplier', $purchase_order_outstanding_supplier); } $this->create_appoinment_with_po(); } public function create_appoinment_with_po() { $dbsales = $this->load->database('dbsales', TRUE); $tanggaljamdaftar = '0000-00-00 00:00:00'; $tanggaljammasuk = '0000-00-00 00:00:00'; $tanggaljamkeluar = '0000-00-00 00:00:00'; $userid = 1306; $date = date('Y-m-d'); $pos = $dbsales->limit(1000) ->group_by('trno') ->get_where('purchase_order_outstanding', 'trno not in(select pono from appointment_with_po)')->result(); foreach ($pos as $po) { $res = $dbsales->query(" SELECT MAX(CAST(nomortamu AS UNSIGNED)) AS nomortamu FROM Tamu WHERE nomortamu LIKE CONCAT(DATE_FORMAT(CURRENT_DATE(), '%m'), '%') AND YEAR(created_date) = YEAR(CURRENT_DATE()) AND LENGTH(nomortamu) >= 5")->row(); $nomortamu = sprintf('%s%03s', date('m'), substr($res->nomortamu, 1) + 1); $sql = sprintf("INSERT INTO appointment_with_po VALUES(NULL, '%s', '%s', '%s', '%s', '%s')", $nomortamu, $po->suppid, $po->suppname, $po->trno, $date); $dbsales->query($sql); $sql = sprintf("INSERT INTO Tamu VALUES (NULL, '%s', NULL, NULL, '%s', NULL, NULL, '%s', NULL, NULL, NULL, 0, '%s', '%s', '%s', NULL, NULL, '%s', NULL, NULL, '%s', '%s')", $nomortamu, $po->suppid . ' - ' . $po->suppname, $po->trno, $tanggaljamdaftar, $tanggaljammasuk, $tanggaljamkeluar, $dbsales->insert_id(), $userid, $date); $dbsales->query($sql); } } public function detailitembalance() { $item = htmlspecialchars(@$_GET['item']); $page = (int) @$_GET['page']; $limit = (int) @$_GET['limit']; $offset = (($page - 1) * $limit) + 1; $startDate = htmlspecialchars(@$_GET['startdate']); $endDate = htmlspecialchars(@$_GET['enddate']); $locationId = htmlspecialchars(@$_GET['locationid']); $all = $results = []; if ($item) { $baseSql = "SELECT INLocation.Description, INItem.Description, INTransHdr.TrDate, INTransHdr.TrNo, INTransHdr.TrTime, PXTransCode.Desc_Eng, INItemBalance.BeginQty, INItem.Inventory_Unit, INTransDtl.Qty, (INItemBalance.BeginQty + INItemBalance.inQty- INItemBalance.OutQty) as endqty FROM (((((((((((((DBA.INTransHdr INTransHdr INNER JOIN DBA.INTransDtl INTransDtl ON (INTransHdr.SiteID=INTransDtl.SiteID) AND (INTransHdr.Sys=INTransDtl.Sys)) INNER JOIN DBA.PXTRType PXTRType ON INTransHdr.TrType=PXTRType.TrType) LEFT OUTER JOIN DBA.APSupplier APSupplier ON INTransHdr.SuppID=APSupplier.SuppID) LEFT OUTER JOIN DBA.ARCustomer ARCustomer ON INTransHdr.CustBillTo=ARCustomer.CustID) INNER JOIN DBA.PXSetup PXSetup ON INTransHdr.TransCode>=PXSetup.ID) INNER JOIN DBA.PXPeriod PXPeriod ON INTransHdr.PeriodID=PXPeriod.PeriodID) INNER JOIN DBA.PXTransCode PXTransCode ON INTransDtl.TransCode=PXTransCode.Code) INNER JOIN DBA.INLocation INLocation ON INTransDtl.LocationID=INLocation.LocationID) LEFT OUTER JOIN DBA.INLocation INLocation_Trf ON INTransDtl.LocationID2=INLocation_Trf.LocationID) LEFT OUTER JOIN DBA.INItemBalance INItemBalance ON ((INTransDtl.ItemID=INItemBalance.ItemID) AND (INTransDtl.LocationID=INItemBalance.LocationID)) AND (INTransDtl.PeriodID=INItemBalance.PeriodID)) INNER JOIN DBA.INItem INItem ON INTransDtl.ItemID=INItem.ItemID) INNER JOIN DBA.INWarehouse INWarehouse ON INLocation.WarehouseID=INWarehouse.ID) INNER JOIN DBA.PXEntity PXEntity ON INWarehouse.EntityID=PXEntity.EntityID) INNER JOIN DBA.PXSite PXSite ON INWarehouse.SiteID=PXSite.SiteID WHERE INTransHdr.Void_=0 AND PXTRType.Budget_=0 AND (INTransDtl.LocationID>='0' AND INTransDtl.LocationID<='Z') AND INTransDtl.ItemID='$item' AND (INTransDtl.PeriodID>=0 AND INTransDtl.PeriodID<=999999)"; $conditions = []; if (!empty($startDate)) { $conditions[] = "INTransHdr.TrDate >= '$startDate'"; } if (!empty($endDate)) { $conditions[] = "INTransHdr.TrDate <= '$endDate'"; } if (!empty($locationId)) { $conditions[] = "INTransDtl.LocationID = '$locationId'"; } if (!empty($conditions)) { $baseSql .= " AND " . implode(" AND ", $conditions); } $baseSql .= " ORDER BY INTransDtl.LocationID, INTransDtl.PeriodID, INTransHdr.TrDate, INTransHdr.TrTime, INTransHdr.TrNo, INTransDtl.TransCode"; $allSql = $baseSql; $limitSql = "SELECT TOP {$limit} START AT {$offset} " . substr($baseSql, 6); // Removing "SELECT" from baseSql to prepend "SELECT TOP ... START AT ..." $imageSql = "SELECT Path_ FROM INItemExtFiles WHERE itemid = '$item'"; $all = $this->db->query($allSql)->result_array(); $result = $this->db->query($limitSql)->result_array(); $images = $this->db->query($imageSql)->result_array(); $this->db->query("COMMIT"); $results = [ 'total' => count($all), 'data' => $result, 'images' => $images ]; echo json_encode((array) $results, true); } } // public function detailitembalance() // { // $item = htmlspecialchars(@$_GET['item']); // $page = (int) @$_GET['page']; // $limit = (int) @$_GET['limit']; // $offset = (($page - 1) * $limit) + 1; // $all = $results = []; // if($item) { // $sql = "SELECT // INLocation.Description, // INItem.Description, // INTransHdr.TrDate, // INTransHdr.TrNo, // INTransHdr.TrTime, // PXTransCode.Desc_Eng, // INItemBalance.BeginQty, // INItem.Inventory_Unit, // INTransDtl.Qty // FROM (((((((((((((DBA.INTransHdr INTransHdr // INNER JOIN DBA.INTransDtl INTransDtl ON (INTransHdr.SiteID=INTransDtl.SiteID) // AND (INTransHdr.Sys=INTransDtl.Sys)) // INNER JOIN DBA.PXTRType PXTRType ON INTransHdr.TrType=PXTRType.TrType) // LEFT OUTER JOIN DBA.APSupplier APSupplier ON INTransHdr.SuppID=APSupplier.SuppID) // LEFT OUTER JOIN DBA.ARCustomer ARCustomer ON INTransHdr.CustBillTo=ARCustomer.CustID) // INNER JOIN DBA.PXSetup PXSetup ON INTransHdr.TransCode>=PXSetup.ID) // INNER JOIN DBA.PXPeriod PXPeriod ON INTransHdr.PeriodID=PXPeriod.PeriodID) // INNER JOIN DBA.PXTransCode PXTransCode ON INTransDtl.TransCode=PXTransCode.Code) // INNER JOIN DBA.INLocation INLocation ON INTransDtl.LocationID=INLocation.LocationID) // LEFT OUTER JOIN DBA.INLocation INLocation_Trf ON INTransDtl.LocationID2=INLocation_Trf.LocationID) // LEFT OUTER JOIN DBA.INItemBalance INItemBalance ON ((INTransDtl.ItemID=INItemBalance.ItemID) // AND (INTransDtl.LocationID=INItemBalance.LocationID)) AND (INTransDtl.PeriodID=INItemBalance.PeriodID)) // INNER JOIN DBA.INItem INItem ON INTransDtl.ItemID=INItem.ItemID) // INNER JOIN DBA.INWarehouse INWarehouse ON INLocation.WarehouseID=INWarehouse.ID) // INNER JOIN DBA.PXEntity PXEntity ON INWarehouse.EntityID=PXEntity.EntityID) // INNER JOIN DBA.PXSite PXSite ON INWarehouse.SiteID=PXSite.SiteID // WHERE INTransHdr.Void_=0 // AND PXTRType.Budget_=0 // AND (INTransDtl.LocationID>='0' // AND INTransDtl.LocationID<='Z') // AND INTransDtl.ItemID='$item' // AND (INTransDtl.PeriodID>=0 AND INTransDtl.PeriodID<=999999) // ORDER BY INTransDtl.LocationID, // INTransDtl.PeriodID, // INTransHdr.TrDate, INTransHdr. // TrTime, // INTransHdr.TrNo, // INTransDtl.TransCode"; // $all = $this->db->query($sql)->result_array(); // $sql = "SELECT TOP {$limit} START AT {$offset} // INLocation.Description, // INItem.Description, // INTransHdr.TrDate, // INTransHdr.TrNo, // INTransHdr.TrTime, // PXTransCode.Desc_Eng, // INItemBalance.BeginQty, // INItem.Inventory_Unit, // INTransDtl.Qty // FROM (((((((((((((DBA.INTransHdr INTransHdr // INNER JOIN DBA.INTransDtl INTransDtl ON (INTransHdr.SiteID=INTransDtl.SiteID) // AND (INTransHdr.Sys=INTransDtl.Sys)) // INNER JOIN DBA.PXTRType PXTRType ON INTransHdr.TrType=PXTRType.TrType) // LEFT OUTER JOIN DBA.APSupplier APSupplier ON INTransHdr.SuppID=APSupplier.SuppID) // LEFT OUTER JOIN DBA.ARCustomer ARCustomer ON INTransHdr.CustBillTo=ARCustomer.CustID) // INNER JOIN DBA.PXSetup PXSetup ON INTransHdr.TransCode>=PXSetup.ID) // INNER JOIN DBA.PXPeriod PXPeriod ON INTransHdr.PeriodID=PXPeriod.PeriodID) // INNER JOIN DBA.PXTransCode PXTransCode ON INTransDtl.TransCode=PXTransCode.Code) // INNER JOIN DBA.INLocation INLocation ON INTransDtl.LocationID=INLocation.LocationID) // LEFT OUTER JOIN DBA.INLocation INLocation_Trf ON INTransDtl.LocationID2=INLocation_Trf.LocationID) // LEFT OUTER JOIN DBA.INItemBalance INItemBalance ON ((INTransDtl.ItemID=INItemBalance.ItemID) // AND (INTransDtl.LocationID=INItemBalance.LocationID)) AND (INTransDtl.PeriodID=INItemBalance.PeriodID)) // INNER JOIN DBA.INItem INItem ON INTransDtl.ItemID=INItem.ItemID) // INNER JOIN DBA.INWarehouse INWarehouse ON INLocation.WarehouseID=INWarehouse.ID) // INNER JOIN DBA.PXEntity PXEntity ON INWarehouse.EntityID=PXEntity.EntityID) // INNER JOIN DBA.PXSite PXSite ON INWarehouse.SiteID=PXSite.SiteID // WHERE INTransHdr.Void_=0 // AND PXTRType.Budget_=0 // AND (INTransDtl.LocationID>='0' // AND INTransDtl.LocationID<='Z') // AND INTransDtl.ItemID='$item' // AND (INTransDtl.PeriodID>=0 AND INTransDtl.PeriodID<=999999) // ORDER BY INTransDtl.LocationID, // INTransDtl.PeriodID, // INTransHdr.TrDate, INTransHdr. // TrTime, // INTransHdr.TrNo, // INTransDtl.TransCode"; // $result = $this->db->query($sql)->result_array(); // $this->db->query("COMMIT"); // } // $results = [ // 'total' => count($all), // 'data' => $result // ]; // echo json_encode((array) $results, true); // } // public function sync_marketing() // { // $dbsql = $this->load->database('dbsales', TRUE); // $tables = [ // 'mastercustomer' => 'ARCustomer', // 'CustTopId' => 'ARCustTopID', // 'SalesRoute' => 'ARSalesRepRoute', // 'routecalendar' => 'ARSalesRepRouteCalendar', // 'routecalendardtl' => 'ARSalesRepRouteCalendarDtl', // 'routepattern' => 'ARSalesRoutePattern', // 'routepatterndtl' => 'ARSalesRoutePatternDtl', // 'transcode' => 'PXTransCode', // 'masteritem' => 'INItem', // 'arsalesrepcallhdr' => 'ARSalesRepCallHdr', // 'arsalesrepcalldtl' => 'ARSalesRepCallDtl', // 'PxTopId' => 'PXTOPID', // 'PSTransHdr' => 'PSTransHdr', // 'PSTransDtl' => 'PSTransDtl', // ]; // foreach ($tables as $table => $table2) { // $sql = "SELECT * FROM {$table2}"; // if ($table == 'PSTransHdr' || $table == 'PSTransDtl') { // $sql = "SELECT * FROM {$table2} WHERE TransCode = 52"; // } // $data = $this->db->query($sql)->result_array(); // $this->db->query("COMMIT"); // if (!empty($data)) { // if (!$dbsql->truncate($table)) { // continue; // } // if (!$dbsql->insert_batch($table, $data)) { // continue; // } // } // } // } public function sync_marketing() { $dbsales = $this->load->database('dbsales', TRUE); $tables = [ 'mastercustomer' => 'ARCustomer', 'CustTopId' => 'ARCustTopID', 'SalesRoute' => 'ARSalesRepRoute', 'routecalendar' => 'ARSalesRepRouteCalendar', 'routecalendardtl' => 'ARSalesRepRouteCalendarDtl', 'routepattern' => 'ARSalesRoutePattern', 'routepatterndtl' => 'ARSalesRoutePatternDtl', 'transcode' => 'PXTransCode', 'masteritem' => 'INItem', 'arsalesrepcallhdr' => 'ARSalesRepCallHdr', 'arsalesrepcalldtl' => 'ARSalesRepCallDtl', 'PxTopId' => 'PXTOPID', // 'PSTransHdr' => 'PSTransHdr', // 'PSTransDtl' => 'PSTransDtl', ]; foreach ($tables as $localTable => $serverTable) { $sql = "SELECT * FROM {$serverTable}"; // if ($localTable == 'PSTransHdr' || $localTable == 'PSTransDtl') { // $sql = "SELECT * FROM {$serverTable} WHERE TransCode = 52"; // } $data = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); if (!empty($data)) { $dbsales->trans_begin(); try { if (!$dbsales->truncate($localTable)) { throw new Exception('Failed to truncate table ' . $localTable); } if (!$dbsales->insert_batch($localTable, $data)) { throw new Exception('Failed to insert data into table ' . $localTable); } $dbsales->trans_commit(); } catch (Exception $e) { $dbsales->trans_rollback(); } } } } public function sys_pstrans($return = false) { $sys = $this->db->query("SELECT MAX(Sys) AS Sys FROM PSTransHdr")->row(); $this->db->query("COMMIT"); $no = (int) $sys->Sys + 1; if ($return) return $no; echo $no; die; } public function get_period_pstrans() { date_default_timezone_set('Asia/Jakarta'); $today = date('Y-m-d'); $sql = "SELECT PeriodID FROM pxperiod WHERE '$today' >= StartDate AND '$today' <= EndDate"; $data = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); return $data[0]['PeriodID']; } public function get_xrperiod_pstrans() { date_default_timezone_set('Asia/Jakarta'); $today = date('Y-m-d'); $sql = "SELECT XRPeriod FROM PXXRPeriod WHERE '$today' >= Date1 AND '$today' <= Date2"; $data = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); return $data[0]['XRPeriod']; } public function get_topid_pstrans($custId) { $sql = "SELECT TOP_ID FROM ARCustTopID WHERE CustID = '$custId'"; $data = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); return $data[0]['TOP_ID']; } public function getsiteid() { $sql = "SELECT SiteID, Description FROM pxsite"; $data = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); echo json_encode($data); } public function gettrtype() { $sql = "SELECT TrType, Description FROM PXTRType"; $data = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); echo json_encode($data); } public function getdeliverymtd() { $sql = "SELECT DeliveryMtdID, Description FROM PXDeliveryMtd"; $data = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); echo json_encode($data); } public function getcurrency($xrperiod) { $sql = "SELECT Ccy1 FROM pxxrate WHERE XRPeriod = '$xrperiod'"; $data = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); return $data[0]['Ccy1']; } public function getTaxRate($taxgroup) { date_default_timezone_set('Asia/Jakarta'); $today = date('Y-m-d'); $sql = "SELECT Rate FROM INTaxDetail WHERE ID = '$taxgroup' AND FromDate <= '$today' AND ToDate >= '$today'"; $data = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); return $data[0]['Rate']; } public function getNextNo($trtype) { date_default_timezone_set('Asia/Jakarta'); $today = date('ym'); $sql = "SELECT NextNo FROM PXNumbering WHERE TrType = '$trtype' AND SeqSet = '$today'"; $data = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $no = $data[0]['NextNo'] ? (int) $data[0]['NextNo'] : 0; $no++; return $no; } public function convert_unit($qty, $unitid, $unitsetid) { $sql = "SELECT * FROM INUnitSetDtl WHERE UnitSetID = '$unitsetid' AND Conversion = 1"; $data = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $data = $data[0]; if ($data['UnitID'] == $unitid) { return $qty; } else { $sql = "SELECT * FROM INUnitSetDtl WHERE UnitSetID = '$unitsetid' AND UnitID = '$unitid'"; $data = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $data = $data[0]; $qty = $qty / $data['Conversion']; return $qty; } } function incrementSequence($sequence) { $letters = str_split($sequence); for ($i = count($letters) - 1; $i >= 0; $i--) { if ($letters[$i] == 'Z') { $letters[$i] = 'A'; } else { $letters[$i] = chr(ord($letters[$i]) + 1); break; } } return implode('', $letters); } function generateNextCustID($lastCustID) { preg_match('/([A-Z]+)-([A-Z]{2})(\d{3})/', $lastCustID, $matches); $prefix = $matches[1]; // CMS $sequence = $matches[2]; // AA $number = (int) $matches[3]; // 001 $number++; if ($number > 999) { $number = 1; $sequence = $this->incrementSequence($sequence); } $formattedNumber = sprintf('%03d', $number); return $prefix . '-' . $sequence . $formattedNumber; } function get_customer_id() { $sql = "SELECT TOP(1) CustID FROM ARCustomer WHERE CustID LIKE 'CMS-%' ORDER BY RegisterDate DESC"; $data = $this->db->query($sql)->result_array(); if ($data) { $lastCustID = $data[0]['CustID']; return $this->generateNextCustID($lastCustID); } else { return 'CMS-AA001'; } } function generate_address($address_array) { $address_array = json_decode(json_encode($address_array), true); foreach ($address_array as $key => $value) { if ($value == 'null') { $address_array[$key] = null; } } unset($address_array['id'], $address_array['id_noo']); $address_array = array_filter($address_array, function ($value) { return !is_null($value) && $value !== ''; }); return implode(", ", $address_array); } public function post_noo_to_arcustomer() { $dbsales = $this->load->database('dbsales', TRUE); $sql = "SELECT * FROM masternoo WHERE id = '" . $_POST['id'] . "'"; $noo = $dbsales->query($sql)->row(); $sql = "SELECT * FROM nooaddress WHERE id = '{$noo->alamat_kantor}'"; $alamat_kantor = $dbsales->query($sql)->row(); $kantor = $this->generate_address($alamat_kantor); $sql = "SELECT * FROM nooaddress WHERE id = '{$noo->alamat_owner}'"; $alamat_owner = $dbsales->query($sql)->row(); $owner = $this->generate_address($alamat_owner); $sql = "SELECT * FROM nooaddress WHERE id = '{$noo->alamat_npwp}'"; $alamat_npwp = $dbsales->query($sql)->row(); $npwp = $this->generate_address($alamat_npwp); $sql = "SELECT lat_ci, lon_ci FROM marketing_activity WHERE cust_id = '{$noo->id}'"; $gps = $dbsales->query($sql)->row(); $orlanid = 'CMSOPS01'; $custid = $this->get_customer_id(); $data = [ 'CustID' => $custid, 'CustName' => $noo->nama_perusahaan, 'Address' => $kantor, 'PostCode' => $alamat_kantor->kode_pos, 'Phones' => $noo->nohp_owner, 'Telex' => NULL, 'Fax' => NULL, 'email' => $noo->email_owner, 'TaxID' => $noo->no_npwp, 'TaxDescription1' => '', 'TaxDescription2' => '', 'TaxName' => $noo->nama_npwp, 'TaxAddress' => $npwp, 'City' => $alamat_kantor->kabupaten_kota, 'State' => $alamat_kantor->provinsi, 'CountryID' => 'ID', 'Affiliate_' => 0, 'GL_GroupID' => "ARGLG01", 'ParentID' => $custid, 'BlockShip_' => 1, 'BlockAR_' => 1, 'BlockSale_' => 0, 'DispatchID' => 'UNFDEF', 'ForwarderID' => 'UNFDEF', 'AreaID' => $_POST['areaid'], 'Contact_Sales' => $noo->nama_jabatan_penjualan . ' - ' . $noo->nohp_penjualan, 'Contact_Acc' => $noo->nama_jabatan_keuangan . ' - ' . $noo->nohp_keuangan, 'Our_ID' => $_POST['ourid'], 'CurrencyID' => 'IDR', 'SalesRepID' => null, 'GroupA_ID' => 0, 'GroupB_ID' => 0, 'GroupC_ID' => 0, 'GroupD_ID' => 0, 'PriceID' => $_POST['priceid'], 'DeliveryMtdID' => 'FOBS', 'FormSetID' => '', 'CustStatus' => 1, 'CreditStatus' => 1, 'CollectorID' => $_POST['collector'], 'CreditLimit' => 0, 'RegisterDate' => date('Y-m-d H:i:s'), 'LastTransDate' => NULL, 'DayToSubmit' => 0, 'DayToCollect' => 0, 'IgnoreCL_' => 0, 'Remarks' => '', 'ConsiderOverdueDays_' => 0, 'CreditDays' => 0, 'TaxGroupID' => $_POST['taxgroup'], 'InvTaxCode' => '', 'PKP_' => 0, 'POSMember_' => 0, 'POSMemberNo' => '', 'Added_by' => $orlanid, 'Changed_by' => $orlanid, 'InvoiceOption' => NULL, 'TOPType' => NULL, 'TOPDays' => NULL, 'TOPFromDate' => NULL, 'DateOfBirth' => $noo->tgl_mulai_usaha, 'Gender' => 1, 'PersonalID' => $noo->id_owner, 'PromoID' => '', 'LatestUpdate' => date('Y-m-d H:i:s'), 'ExtraField1' => NULL, 'ExtraField2' => NULL, 'ExtraField3' => NULL, 'ExtraField4' => NULL, 'Photo' => NULL, 'GpsLatitude' => $gps->lat_ci, 'GpsLongitude' => $gps->lon_ci, 'TaxOfficeID' => '', 'GpsPostalCode' => NULL, 'Owner_Name' => $noo->nama_owner, 'Barcode' => '', 'Last_Modified' => date('Y-m-d H:i:s'), 'DayToSubmitPattern' => NULL, 'DayToCollectPattern' => NULL, 'Numeric1' => 0, 'Numeric2' => 0, 'DateTime_' => NULL, 'UseMaxReturnDate' => 0, 'MaxReturnDate' => 0, 'ConsignmentLocID' => '', 'AllowMultipleOrder' => 0, 'POSMemberExpired' => NULL, 'PersonalName' => $noo->nama_owner, 'PersonalAddress' => $owner, 'MaxUnpaidSO' => 0, 'UseCollSubmission' => 0, 'ItemTaxGroupID' => NULL, 'SubdistrictID' => '', 'POSMemberType' => NULL, 'VehicleGroupID' => '', 'UseStrataDiscount' => 0, 'StrataDiscountID' => '', 'UseDispatchPlaceID' => 0, 'DispatchPlaceID' => '' ]; $columns = implode('`,`', array_keys($data)); $values = implode(',', array_map(function ($value) { if (is_null($value) || $value == 'null') { return 'NULL'; } elseif (is_numeric($value) && !is_string($value)) { return $value; } else { return "'" . addslashes($value) . "'"; } }, array_values($data))); $sql = "INSERT INTO `DBA`.`ARCustomer` (`{$columns}`) VALUES ({$values})"; $this->db->query($sql); $this->db->query("COMMIT"); echo "OK"; // echo $sql; } public function post_pstranshdr() { date_default_timezone_set('Asia/Jakarta'); $dbsales = $this->load->database('dbsales', TRUE); $manualref = "From Call Management/" . $_POST['salesrepid'] . "/" . date('d-m-Y'); $xrperiod = $this->get_xrperiod_pstrans(); $currency = $this->getcurrency($xrperiod); $seqset = date('ym'); $nextNo = $this->getNextNo($_POST['trtype']); $trno = $_POST['trtype'] . $seqset . sprintf('%05d', $nextNo); $trtype = 'TRIAL'; $sys = $this->sys_pstrans(true); $periodid = $this->get_period_pstrans(); $siteid = strval($_POST['siteid']); $orlanid = 'CMSOPS01'; $data = [ "SiteID" => $siteid, "Sys" => $sys, "PeriodID" => $periodid, "EntityID" => $_POST['entityid'], "XRPeriod" => $xrperiod, "TrNo" => $trno, "TrManualRef" => $manualref, "TrManualRef2" => isset($_POST['notes']) ? $_POST['notes'] : '', "TrDate" => date('Y-m-d'), "TrTime" => date('H:i:s'), "TrType" => $trtype, "TransCode" => 52, "Expected_Dlv" => $_POST['expecteddlv'], "Expected_Arv" => $_POST['expectedarv'], "CustBillTo" => $_POST['custid'], "CustSellTo" => $_POST['custid'], "CustShipTo" => $_POST['custid'], "CustTaxTo" => $_POST['custid'], "TOP_ID" => $this->get_topid_pstrans($_POST['custid']), "TOP_days" => NULL, "TaxCalc" => "E", "SalesRepID" => $_POST['salesrepid'], "DlvMtdID" => $_POST['dlvmtdid'], "HeaderNote" => '', "FooterNote" => '', "EntryTime" => date('Y-m-d H:i:s'), "Added_by" => $orlanid, "Changed_by" => $orlanid, "Approved" => 0, "CurrencyID" => $currency, "SuppID" => NULL, "PS_" => "SO", "PriceID" => NULL, "DiscPct_" => 0, "DiscPct" => 0.0000, "DiscPct2" => 0.0000, "DiscPct3" => 0.0000, "DiscPct4" => 0.0000, "DiscPct5" => 0.0000, "DiscAmt" => 0.0000, "ProjectID" => NULL, "Printed" => 0, "Void_" => 0, "String1" => NULL, "String2" => NULL, "String3" => NULL, "String4" => NULL, "Numeric1" => NULL, "InvDiscChanged" => 0, "NetAmt" => NULL, "ControlTotal" => NULL, "OrderToSiteID" => NULL, "IntransitLocID" => NULL, "DestinationLocID" => NULL, "OrderNo" => NULL, "SuppShipTo" => NULL, "CloseSQ" => 0, "QtyException" => 0, "QtyExceptReason" => NULL, "Barcode" => NULL, "BudgetException" => 0, "SendEmail" => NULL, "Last_Modified" => date('Y-m-d H:i:s'), "DiscAmt2" => 0.0000, "Date1" => NULL, "InvDiscAmt1" => NULL, "InvDiscAmt2" => NULL, "InvDiscAmt3" => NULL, "InvDiscAmt4" => NULL, "InvDiscAmt5" => NULL, "CalcMixItemBonus" => 0, "DownShip_" => NULL, "LotID" => NULL, "AreaID" => NULL, "DisDiscRecalc" => 0, "ReasonID" => 0, "FollowupId" => NULL, "Expired" => NULL, "SuppPurchFrom" => NULL, "OrderNo2" => NULL, "Odometer" => NULL, "DateTime1" => NULL, "DateTime2" => NULL, "Process_" => 0, "ForwarderID" => NULL, "ClosedDate" => NULL ]; $this->db->trans_start(); $columns = implode('`,`', array_keys($data)); $values = implode(',', array_map(function ($value) { if (is_null($value)) { return 'NULL'; } elseif (is_numeric($value) && !is_string($value)) { return $value; } else { return "'" . addslashes($value) . "'"; } }, array_values($data))); $sql = "INSERT INTO `DBA`.`PSTransHdr` (`{$columns}`) VALUES ({$values})"; $this->db->query($sql); $sql = "SELECT mrt.quantity, mrt.description, mrt.itemid, mi.Height, mi.Width_, mi.Length_, mi.Tax_GroupID, mrt.unitid, mrt.unit, mi.UnitSetID FROM marketing_report_to mrt JOIN masteritem mi ON mi.ItemID = mrt.itemid WHERE mrt.idMA = '{$_POST['idma']}'"; $items = $dbsales->query($sql)->result_array(); foreach ($items as $index => $item) { $unit_price = $item['unit']; $qty = $item['quantity']; $taxRate = $this->getTaxRate($item['Tax_GroupID']); $disc = 0 / 100; $tax = $taxRate / 100; $gross = $unit_price * $qty; $disc_amt = $gross * $disc; $taxable = $gross - $disc_amt; $tax_amt = $taxable * $tax; $net_amt = $taxable + $tax_amt; $qtyConverted = $this->convert_unit($item['quantity'], $item['unitid'], $item['UnitSetID']); $data = [ "SiteID" => $_POST['siteid'], "Sys" => $sys, "LineNo" => $index + 1, "TransCode" => 52, "ItemID" => $item['itemid'], "PeriodID" => $periodid, "LocationID" => $_POST['locationid'], "LocationID2" => $currency, "ProjectID" => null, "QT" => $item['quantity'], "UnitID" => $item['unitid'], "Qty" => $qtyConverted, "Qty2" => null, "Description" => $item['description'], "Remarks" => '', "Length_" => $item['Length_'], "Width_" => $item['Width_'], "Height" => $item['Height'], "Diameter" => null, "UnitPrice" => $unit_price, "DiscPct" => $disc, "GrossAmt" => $gross, "DiscAmt" => $disc_amt, "Taxable" => $taxable, "TaxAmt" => $tax_amt, "Rounding" => null, "NetAmt" => $net_amt, "LinkNo" => null, "LinkLineNo" => 0, "InvoiceNo" => null, "DiscPct2" => 0.0000, "DiscPct3" => 0.0000, "DiscPct4" => 0.0000, "DiscPct5" => 0.0000, "DiscPct_" => 0, "WO_" => 0, "InvDiscAmt" => null, "LineType" => null, "SalesRepID" => null, "String1" => null, "Numeric1" => null, "Barcode" => null, "PRUnitPrice" => null, "OrderNo" => null, "OrderLineNo" => $index + 1, "PO_" => 0, "GiftLineNo" => 0, "Bonus_" => 0, "GiftID" => null, "String2" => null, "String3" => null, "String4" => null, "PriceID" => null, "Changed_By" => $orlanid, "Last_Modified" => date('Y-m-d H:i:s'), "GiftID2" => null, "InvDiscAmt2" => 0.0000, "ProcessCalcDtl" => 0, "ReturnType" => 0, "GiftIDApplyTo" => null, "Added_by" => $orlanid, "EntryTime" => date('Y-m-d H:i:s'), "Multiplier" => 0.0000, "CalcDiscPct" => 0.0000, "CalcPctDiscAmt" => 0.0000, "CalcDiscPct2" => 0.0000, "CalcPctDiscAmt2" => 0.0000, "CalcDiscPct3" => 0.0000, "CalcPctDiscAmt3" => 0.0000, "CalcDiscPct4" => 0.0000, "CalcPctDiscAmt4" => 0.0000, "CalcDiscPct5" => 0.0000, "CalcPctDiscAmt5" => 0.0000, "CalcDiscAmt" => 0.0000, "CalcDiscAmtCombined" => 0.0000 ]; $columns = implode('`,`', array_keys($data)); // $values = implode("','", array_values($data)); $values = implode(',', array_map(function ($value) { if (is_null($value)) { return 'NULL'; } elseif (is_int($value) || is_float($value)) { return $value; } else { return "'" . addslashes($value) . "'"; } }, array_values($data))); $sql = "INSERT INTO `DBA`.`PSTransDtl` (`{$columns}`) VALUES ({$values})"; $this->db->query($sql); } $sql = "SELECT SUM(NetAmt) AS NetAmt FROM PSTransDtl WHERE Sys = $sys"; $netAmt = $this->db->query($sql)->row()->NetAmt; $sql = "UPDATE PSTransHdr SET NetAmt = $netAmt WHERE Sys = $sys"; $this->db->query($sql); $sql = "UPDATE PXNumbering SET NextNo = $nextNo WHERE TrType = '{$_POST['trtype']}' AND SeqSet = '$seqset'"; $this->db->query($sql); $this->db->trans_complete(); if ($this->db->trans_status() === FALSE) { echo "FAILED"; } else { echo $sys; } } public function getPStrans() { // $sql = "SELECT TOP 1 * FROM PSTransHdr WHERE TrType = 'TRIAL' ORDER BY Sys DESC"; // $sql = "SELECT * FROM PSTransHdr WHERE Sys = 43591"; // $today = date('ym'); $sql = "SELECT * FROM PSTransHdr WHERE TrType = 'TRIAL' ORDER BY Sys DESC"; // $sql = "SELECT * FROM PSTransDtl WHERE Sys = 43649"; // $sql = "SELECT fk.foreign_table_id AS FKTableID, // fk.primary_table_id AS PKTableID, // fk.foreign_key_id AS FKID, // ft.table_name AS ForeignTable, // pt.table_name AS PrimaryTable, // fc.column_name AS ForeignColumn, // pc.column_name AS PrimaryColumn // FROM SYSFOREIGNKEY fk // JOIN SYSTABLE ft ON fk.foreign_table_id = ft.table_id // JOIN SYSTABLE pt ON fk.primary_table_id = pt.table_id // JOIN SYSCOLUMN fc ON fk.foreign_table_id = fc.table_id AND fk.foreign_key_id = fc.column_id // JOIN SYSCOLUMN pc ON fk.primary_table_id = pc.table_id AND fk.primary_table_id = pc.table_id // WHERE ft.table_name = 'PSTransHdr' AND pt.table_name = 'PXSite';"; $data = $this->db->query($sql)->result_array(); echo "<pre>" . print_r($data, true) . "</pre>"; } public function get_province_list() { $sql = "SELECT ID, Decription FROM ARAreab WHERE ParentID = 'IDN'"; $data = $this->db->query($sql)->result_array(); echo json_encode($data); } public function get_city_list() { $province = $_GET['province']; $sql = "SELECT ID, Decription FROM ARAreac WHERE ParentID = '$province'"; $data = $this->db->query($sql)->result_array(); echo json_encode($data); } public function get_district_list() { $city = $_GET['city']; $sql = "SELECT ID, Description FROM ARAread WHERE ParentID = '$city'"; $data = $this->db->query($sql)->result_array(); echo json_encode($data); } public function get_village_list() { $district = $_GET['district']; $sql = "SELECT AreaID, Description FROM ARAreae WHERE ParentID = '$district'"; $data = $this->db->query($sql)->result_array(); echo json_encode($data); } public function get_price_list() { $today = date('Y-m-d'); $sql = "SELECT PriceID, Description FROM inpricemaster WHERE FromDate <= '$today' AND ToDate >= '$today'"; $data = $this->db->query($sql)->result_array(); echo json_encode($data); } public function get_tax_group() { $sql = "SELECT ID, Description FROM intaxgroup"; $data = $this->db->query($sql)->result_array(); echo json_encode($data); } public function get_collector() { $sql = "SELECT CollectorID, Name_ FROM ARCollector"; $data = $this->db->query($sql)->result_array(); echo json_encode($data); } public function get_unbilled_invoice() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('unpaid_invoice'); $sql = "select AR_SP_UnpaidInvoices_asof_check.Trx as Transaksi, left (AR_SP_UnpaidInvoices_asof_check.CustID,'3') as Grp_Customer, arsalesrep.string1 as Group_, AR_SP_UnpaidInvoices_asof_check.SalesRepID as Kode_Sales, AR_SP_UnpaidInvoices_asof_check.SalesrepName as Nama_Sales, AR_SP_UnpaidInvoices_asof_check.CustID as Kode_Customer, AR_SP_UnpaidInvoices_asof_check.CustName as Nama_Customer, AR_SP_UnpaidInvoices_asof_check.trtype as Tipe_Transaksi, AR_SP_UnpaidInvoices_asof_check.trno as Nomor_Invoice, rptranshdr.taxinvoiceno as Nomor_Faktur, AR_SP_UnpaidInvoices_asof_check.trdate as Tanggal_Invoice, AR_SP_UnpaidInvoices_asof_check.Duedate as Jatuh_Tempo, AR_SP_UnpaidInvoices_asof_check.age as Umur_Piutang, AR_SP_UnpaidInvoices_asof_check.Amount as Nilai_Invoice, rptranshdr.tax as pajak, AR_SP_UnpaidInvoices_asof_check.AmountPaid as Pembayaran, AR_SP_UnpaidInvoices_asof_check.Discrepancy as Sisa_piutang from AR_SP_UnpaidInvoices_asof_check(GETDATE(),'0','0','z','0','z') inner join arsalesrep on arsalesrep.salesrepid=AR_SP_UnpaidInvoices_asof_check.SalesRepID join rptranshdr on AR_SP_UnpaidInvoices_asof_check.trno = rptranshdr.trno"; $unpaid_invoice = $this->db->query($sql)->result_array(); $this->db->query("COMMIT"); $dbsales->insert_batch('unpaid_invoice', $unpaid_invoice); } public function save_employee($query = null) { if (isset($_POST['data'])) { $res = false; foreach ($_POST['data'] as $data) { extract($data); $tanggal = date('Y-m-d H:i:s'); $sql = "INSERT INTO DBA.PXEmployee ('EmployeeID','EmpName','RegisterDate','Added_by','Changed_by','Last_Modified','Block_','GpsPostalCode','GpsLatitude','GpsLongitude','SuppID','ListID_CashAdv','ListID_CashAdvTemp') VALUES('{$nik}','{$nama}','{$tanggal}','$added_by','-','{$tanggal}','0','-','-','-','-','-','-')"; if ($query) { echo ($sql . "\n\n"); } else { $res = $this->db->query($sql); $this->db->query("COMMIT"); } } if ($res) die("OK"); } } public function data_supplier() { $dbsales = $this->load->database('dbsales', TRUE); $dbsales->truncate('datasupplier'); $datas = $this->db->query("SELECT suppid,suppname,address,phones,city,state,GL_GroupID,blockreceive_,BlockAP_,BlockPurchase_,Contact_Sales FROM apsupplier")->result_array(); $this->db->query("COMMIT"); $dbsales->insert_batch('datasupplier', $datas); } public function read($table, $single = null) { $res = $this->db->query("select * from $table"); echo "<pre>" . print_r($single ? $res->row_array() : $res->result_array(), true) . "</pre>"; } /***************** unifood dokumen end ******************/ public function sync_db1() { $this->belum_invoice(1, 7); file_put_contents('cron_log.txt', 'Sync Customers, StatusKirim, Sales Run At ' . date('Y-m-d H:i:s') . "\r\n", FILE_APPEND); } public function sync_db2() { $this->belum_invoice(8, 10); file_put_contents('cron_log.txt', 'Sync Customers, StatusKirim, Sales Run At ' . date('Y-m-d H:i:s') . "\r\n", FILE_APPEND); } public function sync_db3() { $this->sudah_invoice(); $this->item(); $this->statuskirim(); $this->itembalance(); $this->period(); file_put_contents('cron_log.txt', 'Sync Customers, StatusKirim, Sales Run At ' . date('Y-m-d H:i:s') . "\r\n", FILE_APPEND); } public function sync_db4() { $this->employee(); $this->customer(); $this->loadsheet(); // $this->transaction_type(); // $this->user_sync(); // $this->customer(); // $this->item(); file_put_contents('cron_log.txt', 'Sync Customers, StatusKirim, Sales Run At ' . date('Y-m-d H:i:s') . "\r\n", FILE_APPEND); } public function sync_db5() { // $this->document_shipment(); // $this->document_invoice(); $this->VmonitoringSalesRetur(); file_put_contents('cron_log.txt', 'Sync Customers, StatusKirim, Sales Run At ' . date('Y-m-d H:i:s') . "\r\n", FILE_APPEND); } public function sync_db6() { // $this->document_shipment(); // $this->document_invoice(); // $this->Vsales(); file_put_contents('cron_log.txt', 'Sync Customers, StatusKirim, Sales Run At ' . date('Y-m-d H:i:s') . "\r\n", FILE_APPEND); } public function sync_db7() { // $this->Vsales2(); file_put_contents('cron_log.txt', 'Sync Customers, StatusKirim, Sales Run At ' . date('Y-m-d H:i:s') . "\r\n", FILE_APPEND); } public function sync_db8() { // $this->Vpembayaran(); file_put_contents('cron_log.txt', 'Sync Customers, StatusKirim, Sales Run At ' . date('Y-m-d H:i:s') . "\r\n", FILE_APPEND); } public function sync_db9() { // $this->Vpembayaran2(); $this->PSTRANSHDR(); $this->PSTRANSDTL(); file_put_contents('cron_log.txt', 'Sync Customers, StatusKirim, Sales Run At ' . date('Y-m-d H:i:s') . "\r\n", FILE_APPEND); } public function sync_db10() { // $this->Vpembayaran3(); $this->PSDTLSCHEDULE(); file_put_contents('cron_log.txt', 'Sync Customers, StatusKirim, Sales Run At ' . date('Y-m-d H:i:s') . "\r\n", FILE_APPEND); } public function sync_db11() { $this->customerbank(); $this->Vcreditnote(); $this->vsalesrep(); file_put_contents('cron_log.txt', 'Sync Customers, StatusKirim, Sales Run At ' . date('Y-m-d H:i:s') . "\r\n", FILE_APPEND); } public function sync_db12() { $this->RPTRANSHDR(); file_put_contents('cron_log.txt', 'RPTRANSHDR' . date('Y-m-d H:i:s') . "\r\n", FILE_APPEND); } public function sync_db13() { $this->RPTRANSDTL(); file_put_contents('cron_log.txt', 'RPTRANSDTL' . date('Y-m-d H:i:s') . "\r\n", FILE_APPEND); } public function sync_db14() { $this->APSUPPLIER(); $this->location(); file_put_contents('cron_log.txt', 'RPTRANSDTL' . date('Y-m-d H:i:s') . "\r\n", FILE_APPEND); } public function sync_db15() { $this->sync_marketing(); file_put_contents('cron_log.txt', 'Sync Marketing Run At ' . date('Y-m-d H:i:s') . "\r\n", FILE_APPEND); } public function sync_db16() { $this->get_unbilled_invoice(); file_put_contents('cron_log.txt', 'Sync Unbilled Invoice Run At ' . date('Y-m-d H:i:s') . "\r\n", FILE_APPEND); } public function sync_db17() { $this->getPStrans(); // file_put_contents('cron_log.txt',' Sync PStrans Run At '.date('Y-m-d H:i:s')."\r\n",FILE_APPEND); } }
Editor is loading...
Leave a Comment