Modifying Supplier Credit: reverted GL postings - fixed.
[fa-stable.git] / purchasing / includes / db / invoice_db.inc
index 5085b57daf86470c669e672f9f41d6566bdf7c9a..844994521b9dace304d612dc28e80f459596e5c5 100644 (file)
@@ -124,7 +124,6 @@ function get_diff_in_home_currency($supplier, $old_date, $date, $amount1, $amoun
        return $diff;
 }
 //----------------------------------------------------------------------------------------
-
 function add_supp_invoice(&$supp_trans)
 {
        global $Refs;
@@ -144,7 +143,7 @@ function add_supp_invoice(&$supp_trans)
     $taxes = $supp_trans->get_taxes($supp_trans->tax_group_id);
        if ($trans_no) {
                $allocs = get_payments_for($trans_no, $trans_type, $supp_trans->supplier_id); // save allocations
-               void_transaction($trans_type, $trans_no, Today(), _("Document reentered."));
+               void_transaction($trans_type, $trans_no, $supp_trans->tran_date, _("Document reentered."));
                $Refs->restore_last($trans_type, $trans_no);
        } else
                $allocs = get_po_prepayments($supp_trans);
@@ -166,7 +165,6 @@ function add_supp_invoice(&$supp_trans)
            foreach ($taxes as $n => $taxitem)
                        $item_added_tax += isset($taxitem['Override']) ? $taxitem['Override'] : round2($taxitem['Value'], user_price_dec());
        }
-
        if ($trans_type == ST_SUPPCREDIT)
        {
                // let's negate everything because it's a credit note
@@ -343,7 +341,6 @@ function add_supp_invoice(&$supp_trans)
                                                $ref = $Refs->get_next(ST_JOURNAL, null, $date_);
                                                add_journal(ST_JOURNAL, $id, $diff, $date_, get_company_currency(), $ref);
                                                $stock_id = $entered_grn->item_code;
-                                               $stock_gl_code = get_stock_gl_code($stock_id);
                                                $memo = _("Supplier invoice adjustment for zero inventory of ").$stock_id." "._("Invoice")." ".$supp_trans->reference;
                                                //Reverse the inventory effect if $qoh <=0
                                                add_gl_trans_std_cost(ST_JOURNAL, $id, $date_, 
@@ -497,8 +494,8 @@ function read_supp_invoice($trans_no, $trans_type, &$supp_trans)
                        $supp_trans->add_grn_to_trans($details_row["grn_item_id"], $details_row["po_detail_item_id"], $details_row["stock_id"],
                                        $details_row["description"], 
                                        $details_row['qty_recd'],
-                                       $details_row['quantity_inv']-$details_row["quantity"],
-                                       $details_row["quantity"], 0, $details_row["FullUnitPrice"],
+                                       $details_row['quantity_inv'],
+                                       ($trans_type == ST_SUPPCREDIT ? -1 : 1) * $details_row["quantity"], 0, $details_row["FullUnitPrice"], // SUPPCREDIT quantities are stored negative in database
                                        0, 0);
                }
                else
@@ -620,11 +617,11 @@ function void_supp_invoice($type, $type_no)
                                                //Reverse the inventory effect if $qoh <=0
                                                add_gl_trans_std_cost(ST_JOURNAL, $id, $old_date, 
                                                        $stock_gl_code["inventory_account"],
-                                                       $dim, $dim2, $memo, $details_row["quantity"] * $diff);
+                                                       $details_row['dimension_id'], $details_row['dimension2_id'], $memo, $details_row["quantity"] * $diff);
                                                //GL Posting to inventory adjustment account
                                                add_gl_trans_std_cost(ST_JOURNAL, $id, $old_date, 
                                                        $stock_gl_code["adjustment_account"],
-                                                       $dim, $dim2, $memo, -$details_row["quantity"] * $diff);
+                                                       $details_row['dimension_id'], $details_row['dimension2_id'], $memo, -$details_row["quantity"] * $diff);
                                                
                                                add_audit_trail(ST_JOURNAL, $id, $old_date);
                                                add_comments(ST_JOURNAL, $id, $old_date, $memo);