$ex_rate = get_exchange_rate_from_home_currency(get_supplier_currency($supp_trans->supplier_id), $date_);
/*First insert the invoice into the supp_trans table*/
- $invoice_id = add_supp_trans($trans_type, $supp_trans->supplier_id, $date_, $supp_trans->due_date,
+ $invoice_id = write_supp_trans($trans_type, 0, $supp_trans->supplier_id, $date_, $supp_trans->due_date,
$supp_trans->reference, $supp_trans->supp_reference,
$invoice_items_total, $item_added_tax, $supp_trans->ov_discount, "", 0, $supp_trans->tax_included);
See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
***********************************************************************/
//-------------------------------------------------------------------------------------------------------------
-
-function add_supp_trans($type, $supplier_id, $date_, $due_date, $reference, $supp_reference,
+//
+// FIXME - this should be revised for transaction update case.
+//
+function write_supp_trans($type, $trans_no, $supplier_id, $date_, $due_date, $reference, $supp_reference,
$amount, $amount_tax, $discount, $err_msg="", $rate=0, $included=0)
{
+ $new = $trans_no==0;
$date = date2sql($date_);
if ($due_date == "")
$due_date = "0000-00-00";
else
$due_date = date2sql($due_date);
- $trans_no = get_next_trans_no($type);
+ if ($new)
+ $trans_no = get_next_trans_no($type);
$curr = get_supplier_currency($supplier_id);
//-------------------------------------------------------------------------------------------------------------
-function reinsert_supp_trans($type, $trans_no, $supplier_id, $date_, $due_date, $reference, $supp_reference,
- $amount, $amount_tax, $discount, $err_msg="", $rate=0)
-{
- if ($trans_no == '')
- display_db_error('Invalid call to function reinsert_supp_trans');
-
- $date = date2sql($date_);
- if ($due_date == "")
- $due_date = "0000-00-00";
- else
- $due_date = date2sql($due_date);
-
- $curr = get_supplier_currency($supplier_id);
-
- if ($rate == 0)
- $rate = get_exchange_rate_from_home_currency($curr, $date_);
-
-
- $sql = "INSERT INTO ".TB_PREF."supp_trans (trans_no, type, supplier_id, tran_date, due_date,
- reference, supp_reference, ov_amount, ov_gst, rate, ov_discount) ";
- $sql .= "VALUES (".db_escape($trans_no).", ".db_escape($type)
- .", ".db_escape($supplier_id).", '$date', '$due_date',
- ".db_escape($reference).", ".db_escape($supp_reference).", ".db_escape($amount)
- .", ".db_escape($amount_tax).", ".db_escape($rate).", ".db_escape($discount).")";
-
- if ($err_msg == "")
- $err_msg = "Cannot insert a supplier transaction record";
-
- db_query($sql, $err_msg);
- add_audit_trail($type, $trans_no, $date_);
-
- return $trans_no;
-}
-//-------------------------------------------------------------------------------------------------------------
-
function get_supp_trans($trans_no, $trans_type=-1)
{
$sql = "SELECT ".TB_PREF."supp_trans.*, (".TB_PREF."supp_trans.ov_amount+".TB_PREF."supp_trans.ov_gst+".TB_PREF."supp_trans.ov_discount) AS Total,