Added short name, name and tax id as search options in customer and supplier lists
[fa-stable.git] / sales / includes / db / custalloc_db.inc
index b7c4607383ce421335ef3d33b32631b1dc7c9c46..a3abb44bdb93119746ec8c87d82cfcf55049b30f 100644 (file)
@@ -75,6 +75,10 @@ function clear_cust_alloctions($type, $type_no, $date="")
                if ($date != "")
                        exchange_variation($type, $type_no, $row['trans_type_to'], $row['trans_no_to'], $date,
                                $row['amt'], PT_CUSTOMER, true);
+               // 2014-01-16 Joe Hunt. Fix for voiding allocated currency sales_invoices.              
+               elseif ($type == ST_SALESINVOICE && $row['trans_type_to'] == $type && $row['trans_no_to'] == $type_no)          
+                       exchange_variation($row['trans_type_from'], $row['trans_no_from'], $row['trans_type_to'], $row['trans_no_to'], 
+                               sql2date($row['date_alloc']), $row['amt'], PT_CUSTOMER, true);
                //////////////////////
        }
 
@@ -282,16 +286,14 @@ function credit_sales_invoice_allocate($invoice_no, $credit_no, $amount, $date)
 
                while(($free < $amount) && ($alloc = db_fetch($result))) {
                        $unalloc = min($alloc['amt'], $amount-$free);
-                       update_debtor_trans_allocation($alloc['trans_type_to'], $alloc['trans_no_to'], 
-                               -$unalloc);
-                       update_debtor_trans_allocation($alloc['trans_type_from'], $alloc['trans_no_from'], 
-                               -$unalloc);
 
                        delete_cust_allocation($alloc['id']);
                        if ($unalloc < $alloc['amt'])
                                add_cust_allocation($alloc['amt']-$unalloc, $alloc['trans_type_from'],
                                        $alloc['trans_no_from'], ST_SALESINVOICE, $invoice_no);
 
+                       update_debtor_trans_allocation($alloc['trans_type_to'], $alloc['trans_no_to']);
+                       update_debtor_trans_allocation($alloc['trans_type_from'], $alloc['trans_no_from']);
                        $free += $unalloc;
                }
        }
@@ -302,9 +304,9 @@ function credit_sales_invoice_allocate($invoice_no, $credit_no, $amount, $date)
  Check all credit notes allocated to this invoice for summarized freight charges."));
                return false;
        }
-       update_debtor_trans_allocation(ST_SALESINVOICE, $invoice_no, $amount);
-       update_debtor_trans_allocation(ST_CUSTCREDIT, $credit_no, $amount);
        add_cust_allocation($amount, ST_CUSTCREDIT, $credit_no, ST_SALESINVOICE, $invoice_no);
+       update_debtor_trans_allocation(ST_SALESINVOICE, $invoice_no);
+       update_debtor_trans_allocation(ST_CUSTCREDIT, $credit_no);
 
        exchange_variation(ST_CUSTCREDIT, $credit_no, ST_SALESINVOICE, $invoice_no, $date,
                $amount, PT_CUSTOMER);