X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=sales%2Fincludes%2Fdb%2Fcustomers_db.inc;h=36db9e1a93b453196facf1964841f61629ce7195;hb=e27f352665019d956e8bb4dc4b4086146f6e0535;hp=bd5b8d34583d578cbd52ef80ba43df2b31ee16c0;hpb=46c5f7a65a7659a44ae8254c63152074363d3987;p=fa-stable.git diff --git a/sales/includes/db/customers_db.inc b/sales/includes/db/customers_db.inc index bd5b8d34..36db9e1a 100644 --- a/sales/includes/db/customers_db.inc +++ b/sales/includes/db/customers_db.inc @@ -61,7 +61,7 @@ function delete_customer($customer_id) commit_transaction(); } -function get_customer_details($customer_id, $to=null) +function get_customer_details($customer_id, $to=null, $all=true) { if ($to == null) @@ -71,10 +71,13 @@ function get_customer_details($customer_id, $to=null) $past1 = get_company_pref('past_due_days'); $past2 = 2 * $past1; // removed - debtor_trans.alloc from all summations - - $value = "IFNULL(IF(trans.type=11 OR trans.type=12 OR trans.type=2, -1, 1) - * (trans.ov_amount + trans.ov_gst + trans.ov_freight + trans.ov_freight_tax + trans.ov_discount),0)"; - + if ($all) + $value = "IFNULL(IF(trans.type=11 OR trans.type=12 OR trans.type=2, -1, 1) + * (trans.ov_amount + trans.ov_gst + trans.ov_freight + trans.ov_freight_tax + trans.ov_discount),0)"; + else + $value = "IFNULL(IF(trans.type=11 OR trans.type=12 OR trans.type=2, -1, 1) + * (trans.ov_amount + trans.ov_gst + trans.ov_freight + trans.ov_freight_tax + trans.ov_discount - + trans.alloc),0)"; $due = "IF (trans.type=10, trans.due_date, trans.tran_date)"; $sql = "SELECT ".TB_PREF."debtors_master.name, ".TB_PREF."debtors_master.curr_code, ".TB_PREF."payment_terms.terms, ".TB_PREF."debtors_master.credit_limit, ".TB_PREF."credit_status.dissallow_invoices, ".TB_PREF."credit_status.reason_description, @@ -94,9 +97,10 @@ function get_customer_details($customer_id, $to=null) WHERE ".TB_PREF."debtors_master.payment_terms = ".TB_PREF."payment_terms.terms_indicator AND ".TB_PREF."debtors_master.credit_status = ".TB_PREF."credit_status.id - AND ".TB_PREF."debtors_master.debtor_no = ".db_escape($customer_id)." - - GROUP BY + AND ".TB_PREF."debtors_master.debtor_no = ".db_escape($customer_id)." "; + if (!$all) + $sql .= "AND ABS(trans.ov_amount + trans.ov_gst + trans.ov_freight + trans.ov_freight_tax + trans.ov_discount - trans.alloc) > ".FLOAT_COMP_DELTA." "; + $sql .= "GROUP BY ".TB_PREF."debtors_master.name, ".TB_PREF."payment_terms.terms, ".TB_PREF."payment_terms.days_before_due, @@ -151,8 +155,11 @@ function get_customer_contacts($customer_id, $action=null) $results = array(); $res = get_crm_persons('customer', $action, $customer_id); while($contact = db_fetch($res)) + { + if ($contact['lang'] == 'C') // Fix for improper lang in demo sql files. + $contact['lang'] = ''; $results[] = $contact; - + } return $results; } @@ -170,4 +177,14 @@ function is_new_customer($id) return !key_in_foreign_table($id, $tables, 'debtor_no'); } + +function get_customer_by_ref($reference) +{ + $sql = "SELECT * FROM ".TB_PREF."debtors_master WHERE debtor_ref=".db_escape($reference); + + $result = db_query($sql, "could not get customer"); + + return db_fetch($result); +} + ?> \ No newline at end of file