[0004212] Work Order Entry: fixed error when voided WO refence is reused.
[fa-stable.git] / gl / gl_journal.php
index f2defddc161e8c2ab761d1c98de6d11d50f9bf79..e8af7d23dbea6d68e4ce5def5e0484a13c35284c 100644 (file)
@@ -129,9 +129,6 @@ function create_cart($type=0, $trans_no=0)
                }
                $cart->memo_ = get_comments_string($type, $trans_no);
                $cart->reference = $header['reference'];
-
-               $_POST['ref_original'] = $cart->reference; // Store for comparison when updating
-
                // update net_amounts from tax register
 
                // retrieve tax details
@@ -142,8 +139,8 @@ function create_cart($type=0, $trans_no=0)
                {
                        $tax_id = $detail['tax_type_id'];
                        $tax_info['net_amount'][$tax_id] = $detail['net_amount']; // we can two records for the same tax_id, but in this case net_amount is the same
-                       $tax_info['tax_date'] = sql2date($detail['effective_date']);
-                       $tax_info['tax_group'] = $detail['tax_group_id'];
+                       $tax_info['tax_date'] = sql2date($detail['tran_date']);
+                       //$tax_info['tax_group'] = $detail['tax_group_id'];
 
                }
                if (isset($tax_info['net_amount']))     // guess exempt sales/purchase if any tax has been found
@@ -164,7 +161,6 @@ function create_cart($type=0, $trans_no=0)
                if (!is_date_in_fiscalyear($cart->tran_date))
                        $cart->tran_date = end_fiscalyear();
                $cart->reference = $Refs->get_next(ST_JOURNAL, null, $cart->tran_date);
-               $_POST['ref_original'] = -1;
        }
 
        $_POST['memo_'] = $cart->memo_;
@@ -239,15 +235,8 @@ if (isset($_POST['Process']))
                set_focus('doc_date');
                $input_error = 1;
        }
-       if (!$Refs->is_valid($_POST['ref'])) 
+       if (!check_reference($_POST['ref'], ST_JOURNAL, $_SESSION['journal_items']->order_id))
        {
-               display_error( _("You must enter a reference."));
-               set_focus('ref');
-               $input_error = 1;
-       } 
-       elseif (($_POST['ref'] != $_POST['ref_original']) && $Refs->exists(ST_JOURNAL,$_POST['ref'])) 
-       {
-               display_error( _("The entered reference is already in use."));
                set_focus('ref');
                $input_error = 1;
        }
@@ -326,7 +315,7 @@ if (isset($_POST['Process']))
        {
                // complete tax register data
                $cart->tax_info['tax_date'] = $_POST['tax_date'];
-               $cart->tax_info['tax_group'] = $_POST['tax_group'];
+               //$cart->tax_info['tax_group'] = $_POST['tax_group'];
                $taxes = get_all_tax_types();
                while ($tax = db_fetch($taxes))
                {
@@ -338,6 +327,15 @@ if (isset($_POST['Process']))
                $cart->tax_info = false;
        $trans_no = write_journal_entries($cart);
 
+        // retain the reconciled status if desired by user
+        if (isset($_POST['reconciled'])
+            && $_POST['reconciled'] == 1) {
+            $sql = "UPDATE ".TB_PREF."bank_trans SET reconciled=".db_escape($_POST['reconciled_date'])
+                ." WHERE type=" . ST_JOURNAL . " AND trans_no=".db_escape($trans_no);
+
+            db_query($sql, "Can't change reconciliation status");
+        }
+
        $cart->clear_items();
        new_doc_date($_POST['date_']);
        unset($_SESSION['journal_items']);
@@ -477,7 +475,7 @@ if (tab_closed('tabs', 'gl'))
 {
        $cart = &$_SESSION['journal_items'];
        $cart->tax_info['tax_date'] = $_POST['tax_date'];
-       $cart->tax_info['tax_group'] = $_POST['tax_group'];
+       //$cart->tax_info['tax_group'] = $_POST['tax_group'];
        $taxes = get_all_tax_types();
        while ($tax = db_fetch($taxes))
        {
@@ -546,10 +544,12 @@ tabbed_content_start('tabs', array(
 
                case 'tax':
                        update_tax_info();
+                       br();
                        display_heading(_("Tax register record"));
+                       br();
                        start_table(TABLESTYLE2, "width=40%");
                        date_row(_("VAT date:"), 'tax_date', '', "colspan='3'");
-                       tax_groups_list_row(_("Tax group:"), 'tax_group');
+                       //tax_groups_list_row(_("Tax group:"), 'tax_group');
                        end_table(1);
 
                        start_table(TABLESTYLE2, "width=60%");