3 //-------------------------------------------------------------------------------------------------------------
5 function add_stock_adjustment($items, $location, $date_, $type, $increase, $reference, $memo_)
9 $adj_id = get_next_trans_no(systypes::inventory_adjustment());
11 foreach ($items as $line_item)
15 $line_item->quantity = -$line_item->quantity;
17 add_stock_adjustment_item($adj_id, $line_item->stock_id, $location, $date_, $type, $reference,
18 $line_item->quantity, $line_item->standard_cost, $memo_);
21 add_comments(systypes::inventory_adjustment(), $adj_id, $date_, $memo_);
23 add_forms_for_sys_type(systypes::inventory_adjustment(), $adj_id, $increase, $location);
25 references::save_last($reference, systypes::inventory_adjustment());
32 //-------------------------------------------------------------------------------------------------------------
34 function void_stock_adjustment($type_no)
36 void_gl_trans(systypes::inventory_adjustment(), $type_no);
37 void_stock_move(systypes::inventory_adjustment(), $type_no);
40 //-------------------------------------------------------------------------------------------------------------
42 function get_stock_adjustment_items($trans_no)
44 $result = get_stock_moves(systypes::inventory_adjustment(), $trans_no);
46 if (db_num_rows($result) == 0)
54 //--------------------------------------------------------------------------------------------------
56 function add_stock_adjustment_item($adj_id, $stock_id, $location, $date_, $type, $reference,
57 $quantity, $standard_cost, $memo_)
59 $mb_flag = get_mb_flag($stock_id);
61 if (is_service($mb_flag))
63 display_db_error("Cannot do inventory adjustment for Service item : $stock_id", "");
66 add_stock_move(systypes::inventory_adjustment(), $stock_id, $adj_id, $location,
67 $date_, $reference, $quantity, $standard_cost, $type);
69 if ($standard_cost > 0)
72 $stock_gl_codes = get_stock_gl_code($stock_id);
74 add_gl_trans_std_cost(systypes::inventory_adjustment(), $adj_id, $date_,
75 $stock_gl_codes['adjustment_account'], $stock_gl_codes['dimension_id'], $stock_gl_codes['dimension2_id'], $memo_, ($standard_cost * -($quantity)));
77 add_gl_trans_std_cost(systypes::inventory_adjustment(), $adj_id, $date_, $stock_gl_codes['inventory_account'], 0, 0, $memo_, ($standard_cost * $quantity));
81 //-------------------------------------------------------------------------------------------------------------