More Improvements in Costing Valuations, Chaitanya.
[fa-stable.git] / inventory / includes / db / items_adjust_db.inc
index 1ca7d1edf739dd0ee1dddc99e680f59a9bc09c85..77d5b02ea9adedb27e111cf3e48d76ea9cb9799c 100644 (file)
@@ -51,8 +51,7 @@ function add_stock_adjustment($items, $location, $date_, $type, $increase, $refe
 function void_stock_adjustment($type_no)
 {
        hook_db_prevoid(ST_INVADJUST, $type_no);
-
-       void_gl_trans(ST_INVADJUST, $type_no);
+       void_gl_trans(ST_INVADJUST, $type_no);\r
        void_stock_move(ST_INVADJUST, $type_no);
 }
 
@@ -82,6 +81,39 @@ function add_stock_adjustment_item($adj_id, $stock_id, $location, $date_, $type,
        display_db_error("Cannot do inventory adjustment for Service item : $stock_id", "");
     }
 
+       /* Logic shifted to function update_average_material_cost\r
+       //Chaitanya : If negative adjustment result in negative or zero inventory \r
+       //then difference should be adjusted\r
+       $qoh = get_qoh_on_date($stock_id);\r
+       if ($qoh + $quantity <= 0 && $qoh > 0) //Positive inventory turning zero/negative\r
+       {\r
+               global $Refs;\r
+\r
+               $id = get_next_trans_no(ST_JOURNAL);\r
+               $ref = $Refs->get_next(ST_JOURNAL);\r
+               $diff = get_standard_cost($stock_id) - $standard_cost;\r
+               \r
+               if ($diff !=0)\r
+               {\r
+                       $stock_gl_code = get_stock_gl_code($stock_id);\r
+                       $memo = _("For zero inventory of ").$stock_id." INVADJ REF: ".$reference;\r
+                       //Reverse the inventory effect if $qoh <=0\r
+                       add_gl_trans_std_cost(ST_JOURNAL, $id, $date_, \r
+                               $stock_gl_code["inventory_account"],\r
+                               $stock_gl_code['dimension_id'], $stock_gl_code['dimension2_id'], $memo, \r
+                               -$qoh * $diff);\r
+                       //GL Posting to inventory adjustment account\r
+                       add_gl_trans_std_cost(ST_JOURNAL, $id, $date_, \r
+                               $stock_gl_code["adjustment_account"],\r
+                               $stock_gl_code['dimension_id'], $stock_gl_code['dimension2_id'], $memo,\r
+                               $qoh * $diff);\r
+                               \r
+                       add_audit_trail(ST_JOURNAL, $id, $date_);\r
+                       add_comments(ST_JOURNAL, $id, $date_, $memo);\r
+                       $Refs->save(ST_JOURNAL, $id, $ref);     \r
+               }               \r
+       }*/\r
+\r
        update_average_material_cost(null, $stock_id, $standard_cost, $quantity, $date_);
 
        add_stock_move(ST_INVADJUST, $stock_id, $adj_id, $location,