- add_gl_trans_std_cost(ST_COSTUPDATE, $update_no, $date_, $stock_gl_code["inventory_account"], 0, 0, $memo_,
- $value_of_change);
+ $value_of_change = round2($qoh * ($new_cost - $last_cost), user_price_dec());
+
+ if ($value_of_change != 0)
+ {
+ $stock_gl_code = get_stock_gl_code($stock_id);
+ $update_no = get_next_trans_no(ST_COSTUPDATE);
+ $memo_ = sprintf(_("Cost was %s changed to %s x quantity on hand for item '%s'"),
+ number_format2($last_cost, 2), number_format2($new_cost, 2), $stock_id);
+ add_gl_trans_std_cost(ST_COSTUPDATE, $update_no, $date_, $stock_gl_code["adjustment_account"],
+ $stock_gl_code["dimension_id"], $stock_gl_code["dimension2_id"], $memo_, (-$value_of_change));
+
+ add_gl_trans_std_cost(ST_COSTUPDATE, $update_no, $date_, $stock_gl_code["inventory_account"], 0, 0, $memo_,
+ $value_of_change);
+
+ change_stock_moves_std_cost($stock_id, $date_, $new_cost - $last_cost);
+ }