function create_dummy($deptid, $assid, $grpid) { db_conn('cubit'); $Sql = "SELECT * FROM assets WHERE (id = '{$assid}' AND div = '" . USER_DIV . "')"; $Rslt = db_exec($Sql) or errDie("Unable to access database."); if (pg_numrows($Rslt) < 1) { return "<li class='err'> - Asset not Found.</li>"; } $asset = pg_fetch_array($Rslt); db_connect(); # Dummy Vars $remarks = ""; $supaddr = ""; $terms = "0"; $total = 0; $subtot = 0; $pdate = $asset['bdate']; $ddate = $asset['bdate']; $shipchrg = "0.00"; $purnum = divlastid("pur", USER_DIV); # Insert purchase to DB $sql = "INSERT INTO nons_purchases(deptid, purnum, supplier, supaddr, terms, pdate, ddate, shipchrg, subtot, total, balance, vatinc, vat, remarks, received, done, prd, div, assid, grpid, is_asset)"; $sql .= " VALUES('{$deptid}', '{$purnum}', '', '{$supaddr}', '{$terms}', '{$pdate}', '{$ddate}', '{$shipchrg}', '{$subtot}', '{$total}', '{$total}', 'no', '0', '{$remarks}', 'n', 'n', '" . PRD_DB . "', '" . USER_DIV . "', '{$assid}', '{$grpid}', 'yes')"; $rslt = db_exec($sql) or errDie("Unable to insert Non-Stock Purchase to Cubit.", SELF); # Get next ordnum $purid = lastpurid(); for ($x = 0; $x < $asset['split_from']; $x++) { # insert Order items $sql = "INSERT INTO nons_pur_items(purid, cod, des, qty, unitcost, amt, svat, ddate, div, vatcode, is_asset)\n\t\tVALUES('{$purid}', '{$asset['serial']}', '{$asset['des']}', '1', '{$asset['amount']}', '{$asset['amount']}', '0', '{$asset['bdate']}', '" . USER_DIV . "', (SELECT id FROM cubit.vatcodes WHERE code='01' LIMIT 1),'{$assid}')"; $rslt = db_exec($sql) or errDie("Unable to insert Order items to Cubit.", SELF); } return $purid; }
function create_dummy($deptid, $purs, $spurnum, $spurtype, $spurprd) { db_connect(); # Dummy Vars $remarks = ""; $supaddr = ""; $terms = "0"; $total = 0; $subtot = 0; $pdate = date("Y-m-d"); $ddate = date("Y-m-d"); $shipchrg = "0.00"; $purnum = divlastid("pur", USER_DIV); # Insert purchase to DB $sql = "INSERT INTO nons_purchases(deptid, supplier, supaddr, terms, pdate, ddate, shipchrg, subtot, total, balance, vatinc, vat, remarks, received, done, prd, div, purnum, spurnum, spurtype, spurprd,purs)"; $sql .= " VALUES('{$deptid}', '', '{$supaddr}', '{$terms}', '{$pdate}', '{$ddate}', '{$shipchrg}', '{$subtot}', '{$total}', '{$total}', 'yes', '0', '{$remarks}', 'n', 'n', '" . PRD_DB . "', '" . USER_DIV . "', '{$purnum}', '{$spurnum}', '{$spurtype}', '{$spurprd}','{$purs}')"; $rslt = db_exec($sql) or errDie("Unable to insert Non-Stock Purchase to Cubit.", SELF); # Get next ordnum // $purid = pglib_lastpurid ("nons_purchases", "purid"); $purid = lastpurid(); return $purid; }
function create_dummy($deptid) { db_connect(); # Dummy Vars $supid = 0; $remarks = ""; $supname = ""; $supaddr = ""; $supno = ""; $terms = "0"; $total = 0; $subtot = 0; $pdate = date("Y-m-d"); $ddate = date("Y-m-d"); $shipchrg = "0.00"; if (getSetting("PURCH_APPRV") == 'napprv') { $apprv = 'y'; } else { $apprv = 'n'; } $purnum = divlastid('pur', USER_DIV); # Insert purchase to DB $sql = "INSERT INTO purchases(deptid, supid, supname, supaddr, supno, terms, pdate, ddate, shipchrg, subtot, total, balance, vatinc, vat, remarks, received, done, prd, cash, div, purnum, apprv)"; $sql .= " VALUES('{$deptid}', '{$supid}', '{$supname}', '{$supaddr}', '{$supno}', '{$terms}', '{$pdate}', '{$ddate}', '{$shipchrg}', '{$subtot}', '{$total}', '{$total}', 'yes', '0', '{$remarks}', 'n', 'n', '" . PRD_DB . "', 'y', '" . USER_DIV . "', '{$purnum}', '{$apprv}')"; $rslt = db_exec($sql) or errDie("Unable to insert Purchase to Cubit.", SELF); # Get next ordnum //$purid = pglib_lastid ("purchases", "purid"); $purid = lastpurid(); return $purid; }
function process_entries($_POST) { extract($_POST); # CHECK IF THIS DATE IS IN THE BLOCKED RANGE $blocked_date_from = getCSetting("BLOCKED_FROM"); $blocked_date_to = getCSetting("BLOCKED_TO"); db_connect(); pglib_transaction("BEGIN") or errDie("Unable to start transaction."); $vatacc = gethook("accnum", "salesacc", "name", "VAT"); $vatinc = "yes"; #remove any selected entries foreach ($ids as $keys => $value) { if (isset($remids[$keys]) and $remids[$keys] == $value) { db_connect(); #now remove this entry $rem_sql = "DELETE FROM purch_batch_entries WHERE id = '{$ids[$keys]}'"; $run_rem = db_exec($rem_sql) or errDie("Unable to remove processed batch entry."); continue; } } db_connect(); #first we get the suppliers involved $get_sup = "SELECT distinct(supplier) FROM purch_batch_entries"; $run_sup = db_exec($get_sup) or errDie("Unable to get supplier information."); if (pg_numrows($run_sup) < 1) { return get_items($_POST, "<li class='err'>Please Add At Least One Item.</li>"); } else { while ($sarr0 = pg_fetch_array($run_sup)) { #get this supplier's name $get_supp = "SELECT supname,supaddr FROM suppliers WHERE supid = '{$sarr0['supplier']}' LIMIT 1"; $run_supp = db_exec($get_supp) or errDie("Unable to get supplier information."); if (pg_numrows($run_supp) < 1) { $supname = ""; $supaddr = ""; } else { $sarr = pg_fetch_array($run_supp); $supname = $sarr['supname']; $supaddr = $sarr['supaddr']; } #get distinct invs $get_inv = "SELECT distinct (supinv) FROM purch_batch_entries WHERE supplier = '{$sarr0['supplier']}'"; $run_inv = db_exec($get_inv) or errDie("Unable to get batch entries."); if (pg_numrows($run_inv) < 1) { return get_items($_POST, "<li class='err'>Please Add At Least One Item.</li>"); } else { while ($earr = pg_fetch_array($run_inv)) { #get the info + each entry = new line item $get_items = "SELECT * FROM purch_batch_entries WHERE supplier = '{$sarr0['supplier']}' AND supinv = '{$earr['supinv']}'"; $run_items = db_exec($get_items) or errDie("Unable to get purchase information."); if (pg_numrows($run_items) < 1) { return get_items($_POST, "<li class='err'>Please Add At Least One Item.</li>"); } else { $total = 0; while ($arr1 = pg_fetch_array($run_items)) { if (strtotime($arr1['pdate']) >= strtotime($blocked_date_from) and strtotime($arr1['pdate']) <= strtotime($blocked_date_to) and !user_is_admin(USER_ID)) { return "<li class='err'>Period Range Is Blocked. Only an administrator can process entries within this period.</li>"; } #calculate the total $total = $total + $arr1['qty'] * $arr1['price']; $pdate = $arr1['pdate']; $ddate = $arr1['pdate']; } } #get the info + each entry = new line item $get_items = "SELECT * FROM purch_batch_entries WHERE supplier = '{$sarr0['supplier']}' AND supinv = '{$earr['supinv']}'"; $run_items = db_exec($get_items) or errDie("Unable to get purchase information."); if (pg_numrows($run_items) < 1) { return get_items($_POST, "<li class='err'>Please Add At Least One Item.</li>"); } else { #################[ write the non stock purchase ]################ $remarks = ""; $supaddr = ""; $terms = "0"; $total = 0; $subtot = 0; // $pdate = "$dates_year[$keys]-$dates_month[$keys]-$dates_day[$keys]"; // $ddate = $arr['sdate']; $shipchrg = "0.00"; $purnum = divlastid("pur", USER_DIV); $typeid = 0; if (!isset($ctyp)) { $ctyp = "s"; } //old ... //'$sarr0[supplier]','2','$supname','$supaddr','$terms', # Insert Order to DB $sql = "\n\t\t\t\t\t\t\t\tINSERT INTO nons_purchases (\n\t\t\t\t\t\t\t\t\tsupid, deptid, supplier, supaddr, terms, pdate, ddate, \n\t\t\t\t\t\t\t\t\tshipchrg, subtot, total, balance, vatinc, vat, remarks, received, done, \n\t\t\t\t\t\t\t\t\tprd, div, purnum, ctyp, typeid\n\t\t\t\t\t\t\t\t) VALUES (\n\t\t\t\t\t\t\t\t\t'{$sarr0['supplier']}', '2', '{$supname}', '{$supaddr}', '{$terms}', '{$pdate}', '{$ddate}', \n\t\t\t\t\t\t\t\t\t'{$shipchrg}', '{$subtot}', '{$total}', '{$total}', 'yes', '0', '{$remarks}', 'n', 'n', \n\t\t\t\t\t\t\t\t\t'" . PRD_DB . "', '" . USER_DIV . "', '{$purnum}', '{$ctyp}', '{$typeid}'\n\t\t\t\t\t\t\t\t)"; $rslt = db_exec($sql) or errDie("Unable to insert Non-Stock Order to Cubit.", SELF); ################################################################# $refnum = getrefnum(); $resub = 0; $totstkamt = array(); $revat = 0; #######[ NOW WRITE THE ITEMS ]######## while ($arr1 = pg_fetch_array($run_items)) { if (!in_array("{$arr1['id']}", $ids)) { } $darr = explode("-", $arr1['pdate']); $suppliers[$keys] = $arr1['supplier']; $accounts[$keys] = $arr1['account']; $dates_year[$keys] = $darr[0]; $dates_month[$keys] = $darr[1]; $dates_day[$keys] = $darr[2]; $vatcodes[$keys] = $arr1['vatcode']; $supinvs[$keys] = $arr1['supinv']; $descriptions[$keys] = $arr1['description']; $qtys[$keys] = $arr1['qty']; $prices[$keys] = $arr1['price']; # Get next ordnum $purid = lastpurid(); $novat[$keys] = "1"; # Calculate amount $amt[$keys] = $qtys[$keys] * $prices[$keys]; $tv = $vatinc; db_conn('cubit'); $Sl = "SELECT * FROM vatcodes WHERE id='{$vatcodes[$keys]}'"; $Ri = db_exec($Sl); if (pg_num_rows($Ri) < 1) { return get_items($_POST, "<li class='err'>Please select the vatcode for all your items.</li>"); } $vd = pg_fetch_array($Ri); $VATP = $vd['vat_amount']; if (TAX_VAT != $vd['vat_amount'] and $vd['vat_amount'] != "0.00") { $showvat = FALSE; } # Check Tax Excempt if ($vd['zero'] == "Yes") { $vat[$keys] = 0; $vatinc = "novat"; } if (isset($novat[$keys]) || strlen($vat[$keys]) < 1) { # If vat is not included if ($vatinc == "no") { $vat[$keys] = sprint($VATP / 100 * $amt[$keys]); } elseif ($vatinc == "yes") { $vat[$keys] = sprint($amt[$keys] / (100 + $VATP) * $VATP); } else { $vat[$keys] = 0; } } if ($vatinc == "novat") { $vat[$keys] = 0; } if ($vatinc != "novat") { # If vat is not included if ($vatinc == "no") { $vat[$keys] = sprintf("%01.2f", $VATP / 100 * $amt[$keys]); } else { $vat[$keys] = sprintf("%01.2f", $amt[$keys] / ($VATP + 100) * $VATP); } } $vatinc = $tv; # insert Order items $sql = "\n\t\t\t\t\t\t\t\t\tINSERT INTO nons_pur_items (\n\t\t\t\t\t\t\t\t\t\tpurid, cod, des, \n\t\t\t\t\t\t\t\t\t\tqty, unitcost, amt, \n\t\t\t\t\t\t\t\t\t\tsvat, ddate, div, vatcode\n\t\t\t\t\t\t\t\t\t) VALUES (\n\t\t\t\t\t\t\t\t\t\t'{$purid}', '{$supinvs[$keys]}', '{$descriptions[$keys]}', \n\t\t\t\t\t\t\t\t\t\t'{$qtys[$keys]}', '{$prices[$keys]}', '{$amt[$keys]}', \n\t\t\t\t\t\t\t\t\t\t'{$vat[$keys]}', '{$ddate}', '" . USER_DIV . "','{$vatcodes[$keys]}'\n\t\t\t\t\t\t\t\t\t)"; $rslt = db_exec($sql) or errDie("Unable to insert Order items to Cubit.", SELF); //FP $itemid = pglib_lastid("nons_pur_items", "id"); $SUBTOT = ""; $TOTAL = ""; # calculate subtot if (isset($amt[$keys])) { $SUBTOT = $amt[$keys]; } else { $SUBTOT = 0.0; } # If there vatable items if (isset($vat[$keys])) { $VAT = $vat[$keys]; } else { $VAT = 0; } # Total $TOTAL = $SUBTOT; # If vat is not included if ($vatinc == "no") { $TOTAL = $TOTAL + $VAT; } else { $TOTAL = $TOTAL; $SUBTOT -= $VAT; } # insert Order to DB $sql = "\n\t\t\t\t\t\t\t\t\tUPDATE nons_purchases \n\t\t\t\t\t\t\t\t\tSET terms = '{$terms}', \n\t\t\t\t\t\t\t\t\t\tsubtot = subtot + '{$SUBTOT}', total = total + '{$TOTAL}',\n\t\t\t\t\t\t\t\t\t\tbalance = balance + '{$TOTAL}', vatinc = 'yes', vat = vat + '{$VAT}',\n\t\t\t\t\t\t\t\t\t\tsupinv='{$supinvs[$keys]}'\n\t\t\t\t\t\t\t\t\tWHERE purid = '{$purid}' AND div = '" . USER_DIV . "'"; $rslt = db_exec($sql) or errDie("Unable to update Order in Cubit.", SELF); #####################[ BEGIN PROCESSING ]####################### db_connect(); $td = $pdate; # amount of stock in $amt[$keys] = $qtys[$keys] * $prices[$keys]; $SUBTOTAL = $amt[$keys]; # Get selected stock line $sql = "SELECT * FROM nons_pur_items WHERE purid = '{$purid}' AND id = '{$itemid}' AND div = '" . USER_DIV . "'"; $stkdRslt = db_exec($sql); $stkd = pg_fetch_array($stkdRslt); # Calculate cost amount bought $amt[$keys] = $qtys[$keys] * $prices[$keys]; /* delivery charge */ # Calculate percentage from subtotal $perc[$keys] = $amt[$keys] / $SUBTOTAL * 100; /* end delivery charge */ # the subtotal + delivery charges $resub += $amt[$keys]; # calculate vat $svat[$keys] = svat($amt[$keys], $stkd['amt'], $stkd['svat']); db_conn('cubit'); $Sl = "SELECT * FROM vatcodes WHERE id='{$stkd['vatcode']}'"; $Ri = db_exec($Sl) or errDie("Unable to get data."); $vd = pg_fetch_array($Ri); vatr($vd['id'], $pdate, "INPUT", $vd['code'], $refnum, "VAT for Non-Stock Purchase No. {$purnum}", -$amt[$keys], -$svat[$keys]); # received vat $revat += $svat[$keys]; # make amount vat free $amt[$keys] = $amt[$keys] - $svat[$keys]; # keep records for transactions if (isset($totstkamt[$accounts[$keys]])) { $totstkamt[$accounts[$keys]] += $amt[$keys]; } else { $totstkamt[$accounts[$keys]] = $amt[$keys]; } # check if there are any outstanding items $sql = "SELECT * FROM nons_pur_items WHERE purid = '{$purid}' AND div = '" . USER_DIV . "'"; // the old method check for this .. we receive everything NOW so we dont need this AND (qty - rqty) > '0' AND div = '".USER_DIV."'"; $stkdRslt = db_exec($sql); # if none the set to received if (pg_numrows($stkdRslt) < 1) { //NO items were found ... problem somewhere } else { # update surch_int(received = 'y') $sql = "UPDATE nons_purchases SET received = 'y' WHERE purid = '{$purid}' AND div = '" . USER_DIV . "'"; $rslt = db_exec($sql) or errDie("Unable to update international Orders in Cubit.", SELF); // while ($uniarr1 = pg_fetch_array($stkdRslt)){ # Update Order items $sql = "UPDATE nons_pur_items SET rqty = (rqty + '{$qtys[$keys]}'), accid = '{$accounts[$keys]}' WHERE purid='{$purid}' AND div = '" . USER_DIV . "' AND id = '{$itemid}'"; $rslt = db_exec($sql) or errDie("Unable to insert Order items to Cubit.", SELF); // } } # Update Order on the DB $sql = "UPDATE nons_purchases SET typeid = '2', refno = '', remarks = '{$remarks}' WHERE purid = '{$purid}' AND div = '" . USER_DIV . "'"; $rslt = db_exec($sql) or errDie("Unable to update Order in Cubit.", SELF); /* - Start Hooks - */ $vatacc = gethook("accnum", "salesacc", "name", "VAT"); if (isset($suppliers[$keys])) { $typeid = $suppliers[$keys]; db_connect(); $sql = "SELECT * FROM suppliers WHERE supid = '{$suppliers[$keys]}' AND div = '" . USER_DIV . "'"; $supRslt = db_exec($sql) or errDie("Unable to get supplier"); if (pg_numrows($supRslt) < 1) { $error = "<li class='err'> Supplier not Found.</li>"; $confirm .= "{$error}<p><input type='button' onClick='JavaScript:history.back();' value='« Correct submission'>"; return $confirm; } else { $sup = pg_fetch_array($supRslt); $pur['supplier'] = $sup['supname']; $pur['supaddr'] = $sup['supaddr']; # Get department info db_conn("exten"); $sql = "SELECT * FROM departments WHERE deptid = '{$sup['deptid']}' AND div = '" . USER_DIV . "'"; $deptRslt = db_exec($sql); if (pg_numrows($deptRslt) < 1) { return "<i class='err'>Department Not Found</i>"; } else { $dept = pg_fetch_array($deptRslt); } $supacc = $dept['credacc']; } } /* - End Hooks - */ ### DATA SET 2 WAS HERE ##################################################################################### //pglib_transaction("COMMIT") or errDie("Unable to complete transaction."); #received so now move //pglib_transaction("BEGIN") or errDie("Unable to start transaction."); ## move stuff went here ##################################################################################### db_connect(); // $sql = "SELECT * FROM bankacct WHERE btype != 'int' AND div = '".USER_DIV."' LIMIT 1"; // $banks = db_exec($sql); // if(pg_numrows($banks) < 1){ // return "<li class='err'> There are no accounts held at the selected Bank. // <p><input type='button' onClick='JavaScript:history.back();' value='« Correct Selection'>"; // } // $barr = pg_fetch_array($banks); // $bankid = $barr['bankid']; // core_connect(); // $sql = "SELECT * FROM bankacc WHERE accid = '$bankid' AND div = '".USER_DIV."'"; // $rslt = db_exec($sql) or errDie("Unable to retrieve bank account link from Cubit",SELF); // # Check if link exists // if(pg_numrows($rslt) <1){ // return "<li class='err'> ERROR : The bank account that you selected doesn't appear to have an account linked to it."; // } // $banklnk = pg_fetch_array($rslt); // $cc_trantype = cc_TranTypeAcc($arr1['account'], $banklnk['accnum']); // // if(($arr1['project_id'] == 0) OR (strlen($arr1['project_code']) < 1) OR (strlen($arr1['center_code']) < 1) OR (strlen($arr1['center_perc']) < 1)){ // $cc = " // <script> // CostCenter('$cc_trantype', 'Non Stock Purchase', '$arr1[pdate]', '$arr1[description]', '$arr1[price]', ''); // </script> // "; // }else { // $cc = ""; // } // $get_data = "SELECT * FROM purch_batch_entries WHERE id = '$ids[$keys]' LIMIT 1"; $get_data = "SELECT * FROM purch_batch_entries WHERE id = '{$arr1['id']}' LIMIT 1"; $run_data = db_exec($get_data) or errDie("Unable to get cost ledger information."); if (pg_numrows($run_data) < 1) { return "\n\t\t\t\t\t\t\t\t\t\t<table " . TMPL_tblDflts . ">\n\t\t\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t\t<td><li class='err'>Unable to get batch entry information.</li></td>\n\t\t\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t\t</table>\n\t\t\t\t\t\t\t\t\t\t<br>" . mkQuickLinks(ql("nons-purch-batch-add.php", "Batch Creditors Non-Stock Invoices Add"), ql("purchase-new.php", "Add Purchase"), ql("purchase-view.php", "View Purchases"), ql("nons-purchase-new.php", "Add Non-Stock Purchase"), ql("nons-purchase-view.php", "View Non-Stock Purchases")); } $data_arr = pg_fetch_array($run_data); $csetting = getsetting("CC_USE"); if ($csetting == "use") { # we want to store all the relevant information in a neat and orderly manner ... $get_info = "SELECT * FROM purch_batch_entries_costcenters WHERE batch_entry = '{$arr1['id']}'"; //$ids[$keys]'"; $run_info = db_exec($get_info) or errDie("Unable to get batch entry cost ledger information."); if (pg_numrows($run_info) < 1) { #no cost entries ???? } else { $ccenters = ""; while ($arr = pg_fetch_array($run_info)) { $amt_vat = $arr1['price'] / (100 + $vd['vat_amount']) * $vd['vat_amount']; $amount = $arr1['qty'] * ($arr1['price'] - $amt_vat); db_connect(); #get project id $get_pro = "SELECT * FROM projects WHERE code = '{$arr['project']}' LIMIT 1"; $run_pro = db_exec($get_pro) or errDie("Unable to get project information."); if (pg_numrows($run_pro) < 1) { $project = 0; } else { $pro_arr = pg_fetch_array($run_pro); $project = $pro_arr['id']; } #get costcenter id $get_cst = "SELECT * FROM costcenters WHERE centercode = '{$arr['costcenter']}' LIMIT 1"; $run_cst = db_exec($get_cst) or errDie("Unable to get cost center information."); if (pg_numrows($run_cst) < 1) { $costcenterlink = 0; } else { $cst_arr = pg_fetch_array($run_cst); $costcenterlink = $cst_arr['ccid']; } #get costcenter/project link id $get_link = "SELECT * FROM costcenters_links WHERE ccid = '{$costcenterlink}' AND project1 = '{$project}' LIMIT 1"; $run_link = db_exec($get_link) or errDie("Unable to get cost center link information."); if (pg_numrows($run_link) < 1) { return "<li class='err'>Unable to get cost ledger link information.</li>"; } $cc = pg_fetch_array($run_link); $edate = ext_rdate($data_arr['pdate']); $edarr = explode("-", $edate); $prd = $edarr[1]; $ccamts = sprint($amount * ($arr['costperc'] / 100)); #we need to connect to the actual period db db_conn($prd); $sql = "\n\t\t\t\t\t\t\t\t\t\t\t\tINSERT INTO cctran (\n\t\t\t\t\t\t\t\t\t\t\t\t\tccid, trantype, typename, edate, description, \n\t\t\t\t\t\t\t\t\t\t\t\t\tamount, username, div, project\n\t\t\t\t\t\t\t\t\t\t\t\t) VALUES (\n\t\t\t\t\t\t\t\t\t\t\t\t\t'{$cc['ccid']}', 'ct', 'Non Stock Purchase', '{$data_arr['pdate']}', '{$data_arr['description']}', \n\t\t\t\t\t\t\t\t\t\t\t\t\t'{$ccamts}', '" . USER_NAME . "', '" . USER_DIV . "', '{$project}'\n\t\t\t\t\t\t\t\t\t\t\t\t)"; $insRslt = db_exec($sql) or errDie("Unable to retrieve insert Cost center amounts into database."); } } } db_connect(); #now remove this entry $rem_sql = "DELETE FROM purch_batch_entries WHERE id = '{$arr1['id']}'"; $run_rem = db_exec($rem_sql) or errDie("Unable to remove processed batch entry."); #remove cost center $rem_sql2 = "DELETE FROM purch_batch_entries_costcenters WHERE batch_entry = '{$arr1['id']}'"; $run_rem2 = db_exec($rem_sql2) or errDie("Unable to remove cost center information."); } # Get Order info db_connect(); $sql = "SELECT * FROM nons_purchases WHERE purid = '{$purid}' AND div = '" . USER_DIV . "'"; $purRslt = db_exec($sql) or errDie("Unable to get Order information"); if (pg_numrows($purRslt) < 1) { return "<li>- Order Not Found</li>"; } $pur = pg_fetch_array($purRslt); $sid = $pur['supid']; $purnum = $pur['purnum']; if ($pur['received'] == "y") { if (isset($bankid)) { $sid = $bankid; $sid += 0; } ### DATA SET 2 ... $detadd = ""; if (isset($sid)) { $detadd = " from Supplier {$pur['supplier']}"; } $sdate = $pdate; $tpp = 0; $ccamt = 0; # record transaction from data if (isset($BA)) { $supacc = $BA; } foreach ($totstkamt as $stkacc => $wamt) { writetrans($stkacc, $supacc, $td, $refnum, $wamt, "Non-Stock Purchase No. {$purnum} Received {$detadd}."); pettyrec($supacc, $sdate, "ct", "Non-Stock Purchase No. {$purnum} Received {$detadd}.", $wamt, "Cash Order"); } # vat $vatamt = $revat; # Add vat if not included $retot = $resub; if (isset($sid)) { db_connect(); # update the supplier (make balance more) $sql = "UPDATE suppliers SET balance = (balance + '{$retot}') WHERE supid = '{$pur['supid']}' AND div = '" . USER_DIV . "'"; $rslt = db_exec($sql) or errDie("Unable to update invoice in Cubit.", SELF); } if (isset($sid)) { # Ledger Records $DAte = $pur['pdate']; suppledger($sup['supid'], $stkacc, $DAte, $purid, "Non-Stock Purchase No. {$purnum} received.", $retot, 'c'); } if ($vatamt != 0) { # Debit bank and credit the account involved writetrans($vatacc, $supacc, $td, $refnum, $vatamt, "Non-Stock Purchase VAT paid on Non-Stock Order No. {$purnum} {$detadd}."); pettyrec($supacc, $sdate, "ct", "Non-Stock Purchase No. {$purnum} Received {$detadd}.", $vatamt, "Cash Order VAT"); # Record the payment on the statement db_connect(); $sdate = $pdate; } // if(isset($bankid)) { // db_connect(); // $sql = "INSERT INTO cashbook(bankid, trantype, date, name, descript, cheqnum, amount, vat, chrgvat, banked, accinv, div) VALUES ('$bankid', 'withdrawal', '$sdate', '$pur[supplier]', 'Non-Stock Purchase No. $pur[purnum] received', '0', '$retot', '$vatamt', '$pur[vatinc]', 'no', '$stkacc', '".USER_DIV."')"; // $Rslt = db_exec ($sql) or errDie ("Unable to add bank payment to database.",SELF); // } if (isset($sid)) { db_connect(); $DAte = $pdate; $sql = "\n\t\t\t\t\t\t\t\t\t\tINSERT INTO sup_stmnt (\n\t\t\t\t\t\t\t\t\t\t\tsupid, edate, cacc, amount, \n\t\t\t\t\t\t\t\t\t\t\tdescript, ref, ex, div\n\t\t\t\t\t\t\t\t\t\t) VALUES (\n\t\t\t\t\t\t\t\t\t\t\t'{$pur['supid']}', '{$pur['pdate']}', '{$stkacc}', '{$retot}', \n\t\t\t\t\t\t\t\t\t\t\t'Non Stock Purchase No. {$purnum} Received', '{$refnum}', '{$purnum}', '" . USER_DIV . "'\n\t\t\t\t\t\t\t\t\t\t)"; $stmntRslt = db_exec($sql) or errDie("Unable to insert statement record in Cubit.", SELF); db_connect(); # update the supplier age analysis (make balance less) /* Make transaction record for age analysis */ $sql = "\n\t\t\t\t\t\t\t\t\t\tINSERT INTO suppurch (\n\t\t\t\t\t\t\t\t\t\t\tsupid, purid, pdate, balance, div\n\t\t\t\t\t\t\t\t\t\t) VALUES (\n\t\t\t\t\t\t\t\t\t\t\t'{$pur['supid']}', '{$purnum}', '{$pur['pdate']}', '{$retot}', '" . USER_DIV . "'\n\t\t\t\t\t\t\t\t\t\t)"; $purcRslt = db_exec($sql) or errDie("Unable to update int Orders information in Cubit.", SELF); } ### # copy Order db_conn(PRD_DB); $sql = "\n\t\t\t\t\t\t\t\t\tINSERT INTO nons_purchases (\n\t\t\t\t\t\t\t\t\t\tpurid, deptid, supplier, supaddr, terms, \n\t\t\t\t\t\t\t\t\t\tpdate, ddate, shipchrg, shipping, subtot, \n\t\t\t\t\t\t\t\t\t\ttotal, balance, vatinc, vat, remarks, \n\t\t\t\t\t\t\t\t\t\trefno, received, done, ctyp, typeid, \n\t\t\t\t\t\t\t\t\t\tdiv, purnum, supid, mpurid, is_asset, supinv\n\t\t\t\t\t\t\t\t\t) VALUES (\n\t\t\t\t\t\t\t\t\t\t'{$purid}', '{$pur['deptid']}', '{$pur['supplier']}', '{$pur['supaddr']}', '{$pur['terms']}', \n\t\t\t\t\t\t\t\t\t\t'{$pur['pdate']}', '{$pur['ddate']}', '{$pur['shipchrg']}', '{$pur['shipping']}', '{$pur['subtot']}', \n\t\t\t\t\t\t\t\t\t\t'{$pur['total']}', '0', '{$pur['vatinc']}', '{$pur['vat']}', '{$pur['remarks']}', \n\t\t\t\t\t\t\t\t\t\t'{$pur['refno']}', 'y', 'y', '{$pur['ctyp']}', '{$pur['typeid']}', \n\t\t\t\t\t\t\t\t\t\t'" . USER_DIV . "', '{$pur['purnum']}','{$sid}', '{$supacc}', '{$pur['is_asset']}', '{$pur['supinv']}'\n\t\t\t\t\t\t\t\t\t)"; $rslt = db_exec($sql) or errDie("Unable to insert Non-Stock Order to Cubit.", SELF); db_connect(); # Get selected stock $sql = "SELECT * FROM nons_pur_items WHERE purid = '{$purid}' AND div = '" . USER_DIV . "'"; $stktcRslt = db_exec($sql); while ($stktc = pg_fetch_array($stktcRslt)) { # Insert Order items db_conn($pur['prd']); $sql = "\n\t\t\t\t\t\t\t\t\t\tINSERT INTO nons_pur_items (\n\t\t\t\t\t\t\t\t\t\t\tpurid, cod, des, qty, unitcost, \n\t\t\t\t\t\t\t\t\t\t\tamt, svat, ddate, accid, \n\t\t\t\t\t\t\t\t\t\t\tdiv, vatcode\n\t\t\t\t\t\t\t\t\t\t) VALUES (\n\t\t\t\t\t\t\t\t\t\t\t'{$purid}', '{$stktc['cod']}', '{$stktc['des']}', '{$stktc['qty']}', '{$stktc['unitcost']}', \n\t\t\t\t\t\t\t\t\t\t\t'{$stktc['amt']}', '{$stktc['svat']}', '{$stktc['ddate']}', '{$stktc['accid']}', \n\t\t\t\t\t\t\t\t\t\t\t'" . USER_DIV . "', '{$stktc['vatcode']}'\n\t\t\t\t\t\t\t\t\t\t)"; $rslt = db_exec($sql) or errDie("Unable to insert Order items to Cubit.", SELF); } db_connect(); # Remove the Order from running DB $sql = "DELETE FROM nons_purchases WHERE purid = '{$purid}' AND div = '" . USER_DIV . "'"; $delRslt = db_exec($sql) or errDie("Unable to update int Orders information in Cubit.", SELF); # Remove those Order items from running DB $sql = "DELETE FROM nons_pur_items WHERE purid = '{$purid}' AND div = '" . USER_DIV . "'"; $delRslt = db_exec($sql) or errDie("Unable to update int Orders information in Cubit.", SELF); } } } } } } pglib_transaction("COMMIT") or errDie("Unable to complete transaction."); return "\n\t\t<table " . TMPL_tblDflts . ">\n\t\t\t<tr>\n\t\t\t\t<th>Processing Completed</th>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>All Selected Transactions Completed</td>\n\t\t\t</tr>\n\t\t</table>\n\t\t<br>\n\t\t" . mkQuickLinks(ql("nons-purch-batch-add.php", "Batch Creditors Non-Stock Invoices Add"), ql("purchase-new.php", "Add Purchase"), ql("purchase-view.php", "View Purchases"), ql("nons-purchase-new.php", "Add Non-Stock Purchase"), ql("nons-purchase-view.php", "View Non-Stock Purchases")); }
function create_dummy($deptid) { global $_POST; extract($_POST); db_connect(); # Dummy Vars $remarks = ""; $supaddr = ""; $terms = "0"; $total = 0; $subtot = 0; // $pdate = date("Y-m-d"); $ddate = date("Y-m-d"); $shipchrg = "0.00"; $purnum = divlastid("pur", USER_DIV); if (isset($supid)) { $supid += 0; } else { $supid = 0; } if (isset($deptid)) { $typeid = $deptid; $typeid += 0; } else { $typeid = 0; } if ($ctyp == "cb" && isset($bankid)) { $bankid += 0; $supplierid = $bankid; $supid = ""; } else { $supplierid = 0; } if ($ctyp == "c") { $supid = "Cash Order"; } elseif ($ctyp == "p") { $supid = "Petty Cash Order"; } elseif ($ctyp == "ac") { $supid = "Ledger Account Order"; } $trans_date_setting = getCSetting("USE_TRANSACTION_DATE"); if (isset($trans_date_setting) and $trans_date_setting == "yes") { $trans_date_value = getCSetting("TRANSACTION_DATE"); $date_arr = explode("-", $trans_date_value); $date_year = $date_arr[0]; $date_month = $date_arr[1]; $date_day = $date_arr[2]; } else { $date_year = date("Y"); $date_month = date("m"); $date_day = date("d"); } $pdate = "{$date_year}-{$date_month}-{$date_day}"; # Insert Order to DB $sql = "\n\t\tINSERT INTO nons_purchases (\n\t\t\tsupid, deptid, supplier, supaddr, terms, pdate, ddate, shipchrg, subtot, total, \n\t\t\tbalance, vatinc, vat, remarks, received, done, prd, div, purnum, ctyp, typeid\n\t\t) VALUES (\n\t\t\t'{$supplierid}', '{$deptid}', '{$supid}', '{$supaddr}', '{$terms}', '{$pdate}', '{$ddate}', '{$shipchrg}', '{$subtot}', '{$total}', \n\t\t\t'{$total}', 'yes', '0', '{$remarks}', 'n', 'n', '" . PRD_DB . "', '" . USER_DIV . "', '{$purnum}', '{$ctyp}', '{$typeid}'\n\t\t)"; $rslt = db_exec($sql) or errDie("Unable to insert Non-Stock Order to Cubit.", SELF); # Get next ordnum $purid = lastpurid(); return $purid; }
function create_dummy($deptid) { db_connect(); # Dummy Vars $supid = 0; $remarks = ""; $supname = ""; $supaddr = ""; $supno = ""; $terms = "0"; $total = 0; $subtot = 0; // $pdate = date("Y-m-d"); $ddate = date("Y-m-d"); $shipchrg = "0.00"; $purnum = divlastid('pur', USER_DIV); if (getSetting("PURCH_APPRV") == 'napprv' || getSetting("PURCH_APPRV") == '') { $apprv = 'y'; } else { $apprv = 'n'; } $def_vat = getCSetting("PURCH_DEFAULT_VAT_SETTING"); if (!isset($def_vat) or $def_vat == "yes") { $vatsetting = "yes"; } else { $vatsetting = "no"; } $trans_date_setting = getCSetting("USE_TRANSACTION_DATE"); if (isset($trans_date_setting) and $trans_date_setting == "yes") { $trans_date_value = getCSetting("TRANSACTION_DATE"); $date_arr = explode("-", $trans_date_value); $date_year = $date_arr[0]; $date_month = $date_arr[1]; $date_day = $date_arr[2]; } else { $date_year = date("Y"); $date_month = date("m"); $date_day = date("d"); } $pdate = "{$date_year}-{$date_month}-{$date_day}"; # Insert Order to DB $sql = "\n\t\tINSERT INTO purchases (\n\t\t\tdeptid, supid, supname, supaddr, supno, terms, pdate, ddate, shipchrg, subtot, \n\t\t\ttotal, balance, vatinc, vat, remarks, received, done, prd, div, purnum, apprv\n\t\t) VALUES (\n\t\t\t'{$deptid}', '{$supid}', '{$supname}', '{$supaddr}', '{$supno}', '{$terms}', '{$pdate}', '{$ddate}', '{$shipchrg}', '{$subtot}', \n\t\t\t'{$total}', '{$total}', '{$vatsetting}', '0', '{$remarks}', 'n', 'n', '" . PRD_DB . "', '" . USER_DIV . "', '{$purnum}', '{$apprv}'\n\t\t)"; $rslt = db_exec($sql) or errDie("Unable to insert Order to Cubit.", SELF); # Get next ordnum $purid = lastpurid(); return $purid; }