Old ineffective sql_trail superseded by new improved db_trail logging only calls...
[fa-stable.git] / gl / includes / db / gl_journal.inc
index bb2dc5b90dd76e7ca12ea1b851b8b721f443c1d5..d35024b9a9e518d992ec43b2bb0e6736fdfdd504 100644 (file)
@@ -13,9 +13,8 @@ function add_journal($type, $trans_no, $amount, $tran_date, $currency, $referenc
         $event_date='', $doc_date='')
 {
        $sql = "INSERT INTO ".TB_PREF."journal(
-          `type`,`trans_no`, `amount`, `currency`, `rate`, `reference`, `source_ref`, `tran_date`,
-          `event_date`, `doc_date`)
-          VALUES("
+          `type`,`trans_no`, `amount`, `currency`, `rate`, `reference`, `source_ref`, `tran_date`,`event_date`,`doc_date`)
+         VALUES("
          .db_escape($type).","
          .db_escape($trans_no).","
          .db_escape($amount).","
@@ -23,9 +22,9 @@ function add_journal($type, $trans_no, $amount, $tran_date, $currency, $referenc
          .db_escape($rate).","
          .db_escape($reference).","
          .db_escape($source_ref).","
-         ."'".date2sql($tran_date)."',"
-         ."'".date2sql($event_date)."',"
-         ."'".date2sql($doc_date)."')";
+         ."'".date2sql($tran_date)."','"
+         . ($event_date === '' ? '0000-00-00' : date2sql($event_date))."','"
+         . ($doc_date === '' ? '0000-00-00' : date2sql($doc_date))."')";
 
        return db_query($sql, 'cannot add journal entry');
 }
@@ -39,9 +38,9 @@ function update_journal($type, $trans_no, $amount, $tran_date, $currency, $refer
          ."`rate`=".db_escape($rate).","
          ."`reference`=".db_escape($reference).","
          ."`source_ref`=".db_escape($source_ref).","
-         ."`tran_date`="."'".date2sql($tran_date)."',"
-         ."`event_date`="."'".date2sql($event_date)."',"
-         ."`doc_date`="."'".date2sql($doc_date)."'
+         ."`tran_date`='".date2sql($tran_date)."',"
+         ."`event_date`='".($event_date === '' ? '0000-00-00' : date2sql($event_date))."',"
+         ."`doc_date`='".($doc_date === '' ? '0000-00-00' : date2sql($doc_date))."'
           WHERE `type`=".db_escape($type)." AND " ."`trans_no`=".db_escape($trans_no);
 
        return db_query($sql, 'cannot update journal entry');
@@ -57,8 +56,9 @@ function delete_journal($type, $trans_no)
 
 function get_journal($type, $trans_no)
 {
-       $sql = "SELECT * FROM ".TB_PREF."journal 
-          WHERE `type`=".db_escape($type)." AND " ."`trans_no`=".db_escape($trans_no);
+       $sql = "SELECT gl.*, bt.reconciled reconcile_date FROM ".TB_PREF."journal gl
+               LEFT JOIN ".TB_PREF."bank_trans bt ON gl.`type`=bt.`type` AND gl.trans_no=bt.trans_no
+          WHERE gl.`type`=".db_escape($type)." AND " ."gl.`trans_no`=".db_escape($trans_no);
 
        $myrow= db_query($sql, 'cannot retrieve journal entry');
        return db_fetch($myrow);
@@ -107,7 +107,7 @@ function write_journal_entries(&$cart)
        $trans_type = $cart->trans_type;
        $new = $cart->order_id == 0;
 
-       begin_transaction();
+       begin_transaction(__FUNCTION__, func_get_args());
 
        if (!$new)
        {
@@ -127,6 +127,9 @@ function write_journal_entries(&$cart)
        add_journal($trans_type, $trans_id, $total,     $date_ , $cart->currency, $ref,
                $cart->source_ref, $cart->rate, $cart->event_date, $cart->doc_date);
 
+       if ($cart->reconcile_date)
+               update_reconcile_date($trans_type, $cart->order_id, $cart->reconcile_date);
+
        $Refs->save($trans_type, $trans_id, $ref);
        if ($new) {
                add_comments($trans_type, $trans_id, $date_, $memo_);
@@ -143,10 +146,9 @@ function write_journal_entries(&$cart)
 
 //----------------------------------------------------------------------------------------
 
-function void_journal_trans($type, $type_no, $use_transaction=true)
+function void_journal_trans($type, $type_no)
 {
-       if ($use_transaction)
-               begin_transaction();
+       begin_transaction(__FUNCTION__, func_get_args());
 
        $sql = "UPDATE ".TB_PREF."journal SET amount=0
                WHERE type=".db_escape($type)." AND trans_no=".db_escape($type_no);
@@ -155,7 +157,6 @@ function void_journal_trans($type, $type_no, $use_transaction=true)
 
        void_bank_trans($type, $type_no, true);
 
-       if ($use_transaction)
-               commit_transaction();
+       commit_transaction();
 }