supp_account_no, bank_account, credit_limit, dimension_id, dimension2_id, curr_code,
payment_terms, payable_account, purchase_account, payment_discount_account, notes,
tax_group_id, tax_included)
- VALUES (".db_escape($_POST['supp_name']). ", "
+ VALUES (".db_escape($supp_name). ", "
.db_escape($supp_ref). ", "
.db_escape($address) . ", "
.db_escape($supp_address) . ", "
function delete_supplier($supplier_id)
{
+ begin_transaction();
+ delete_entity_contacts('supplier', $supplier_id);
$sql="DELETE FROM ".TB_PREF."suppliers WHERE supplier_id=".db_escape($supplier_id);
+
db_query($sql,"check failed");
+ commit_transaction();
}
function get_supplier_details($supplier_id, $to=null, $all=true)
$past2 = 2 * $past1;
// removed - supp_trans.alloc from all summations
- $value = "(trans.ov_amount + trans.ov_gst + trans.ov_discount)";
+ if ($all)
+ $value = "(trans.ov_amount + trans.ov_gst + trans.ov_discount)";
+ else
+ $value = "IF (trans.type=".ST_SUPPINVOICE." OR trans.type=".ST_BANKDEPOSIT."
+ OR (trans.type=".ST_JOURNAL." AND (trans.ov_amount + trans.ov_gst + trans.ov_discount)>0), 1, -1)*
+ ABS(trans.ov_amount + trans.ov_gst + trans.ov_discount) - trans.alloc";
+
$due = "IF (trans.type=".ST_SUPPINVOICE." OR trans.type=".ST_SUPPCREDIT.",trans.due_date,trans.tran_date)";
$sql = "SELECT supp.supp_name, supp.curr_code, ".TB_PREF."payment_terms.terms,
Sum(IFNULL($value,0)) AS Balance,
- Sum(IF ((TO_DAYS('$todate') - TO_DAYS($due)) >= 0,$value,0)) AS Due,
- Sum(IF ((TO_DAYS('$todate') - TO_DAYS($due)) >= $past1,$value,0)) AS Overdue1,
- Sum(IF ((TO_DAYS('$todate') - TO_DAYS($due)) >= $past2,$value,0)) AS Overdue2,
+ Sum(IF ((TO_DAYS('$todate') - TO_DAYS($due)) > 0,$value,0)) AS Due,
+ Sum(IF ((TO_DAYS('$todate') - TO_DAYS($due)) > $past1,$value,0)) AS Overdue1,
+ Sum(IF ((TO_DAYS('$todate') - TO_DAYS($due)) > $past2,$value,0)) AS Overdue2,
supp.credit_limit - Sum(IFNULL(IF(trans.type=".ST_SUPPCREDIT.", -1, 1)
* (ov_amount + ov_gst + ov_discount),0)) as cur_credit,
supp.tax_group_id
supp.payment_terms = ".TB_PREF."payment_terms.terms_indicator
AND supp.supplier_id = $supplier_id ";
if (!$all)
- $sql .= "AND ABS(trans.ov_amount + trans.ov_gst + trans.ov_discount - trans.alloc) > 0.004 ";
+ $sql .= "AND ABS(trans.ov_amount + trans.ov_gst + trans.ov_discount) - trans.alloc > ".FLOAT_COMP_DELTA." ";
$sql .= "GROUP BY
supp.supp_name,
".TB_PREF."payment_terms.terms,
".TB_PREF."payment_terms.days_before_due,
".TB_PREF."payment_terms.day_in_following_month";
-
$result = db_query($sql,"The customer details could not be retrieved");
$supp = db_fetch($result);
$row = db_fetch_row($result);
- return $row[0];
+ return is_array($row) ? $row[0] : false;
}
function get_supplier_accounts($supplier_id)
{
- $sql = "SELECT payable_account,purchase_account,payment_discount_account FROM ".TB_PREF."suppliers WHERE supplier_id=".db_escape($supplier_id);
+ $sql = "SELECT payable_account,purchase_account,payment_discount_account, dimension_id, dimension2_id FROM ".TB_PREF."suppliers WHERE supplier_id=".db_escape($supplier_id);
$result = db_query($sql, "could not get supplier");
return !key_in_foreign_table($id, $tables, 'supplier_id');
}
-?>
\ No newline at end of file
+
+function get_supplier_currency($supplier_id)
+{
+ $sql = "SELECT curr_code FROM ".TB_PREF."suppliers WHERE supplier_id = ".db_escape($supplier_id);
+
+ $result = db_query($sql, "Retreive currency of supplier $supplier_id");
+
+ $myrow=db_fetch_row($result);
+ return $myrow ? $myrow[0] : get_company_currency();
+}
+
+function get_suppliers_search($supplier)
+{
+ global $SysPrefs;
+
+ if (isset($SysPrefs->max_rows_in_search))
+ $limit = $SysPrefs->max_rows_in_search;
+ else
+ $limit = 10;
+
+ $sql = "SELECT supplier_id, supp_name, supp_ref, address, gst_no
+ FROM ".TB_PREF."suppliers
+ WHERE (supp_name LIKE " . db_escape("%" . $supplier. "%") . " OR
+ supp_ref LIKE " . db_escape("%" . $supplier. "%") . " OR
+ address LIKE " . db_escape("%" . $supplier. "%") . " OR
+ gst_no LIKE " . db_escape("%" . $supplier. "%") . ")
+ ORDER BY supp_name LIMIT 0,".(int)($limit);
+
+ return db_query($sql, "Failed in retreiving supplier list.");
+}
+