/*Update sales_order_details for the new quantity received and the standard cost used for postings to GL and recorded in the stock movements for FIFO/LIFO stocks valuations*/
//------------------- update average material cost ------------------------------------------ Joe Hunt Mar-03-2008
- update_average_material_cost($po->supplier_id, $order_line->stock_id, $order_line->price,
- $order_line->receive_qty, $date_);
+ if (is_inventory_item($order_line->stock_id))
+ update_average_material_cost($po->supplier_id, $order_line->stock_id, $order_line->price,
+ $order_line->receive_qty, $date_);
//----------------------------------------------------------------------------------------------------------------
if ($order_line->qty_received == 0)
{
$order_line->standard_cost, $order_line->receive_qty, $order_line->price);
$po->line_items[$line_no]->grn_item_id = $grn_item;
- /* Update location stock records - NB a po cannot be entered for a service/kit parts */
- add_stock_move(ST_SUPPRECEIVE, $order_line->stock_id, $grn, $po->Location, $date_, "",
- $order_line->receive_qty, $order_line->standard_cost,
- $po->supplier_id, 1, $order_line->price);
+ /* Update location stock records - NB a po cannot be entered for a service/kit parts done automatically */
+ add_stock_move(ST_SUPPRECEIVE, $order_line->stock_id, $grn, $po->Location, $date_, "",
+ $order_line->receive_qty, $order_line->standard_cost,
+ $po->supplier_id, 1, $order_line->price);
} /*quantity received is != 0 */
} /*end of order_line loop */
//{
//$diff = $entered_grn->chg_price - $old_price;
$old_date = sql2date($old[1]);
- $diff = get_diff_in_home_currency($supp_trans->supplier_id, $old_date, $date_, $old_price,
- $entered_grn->chg_price);
+ if (is_inventory_item($entered_grn->item_code))
+ {
+ $diff = get_diff_in_home_currency($supp_trans->supplier_id, $old_date, $date_, $old_price,
+ $entered_grn->chg_price);
- // always return due to change in currency.
- /*$mat_cost = update_average_material_cost(null, $entered_grn->item_code,
- $diff, $entered_grn->this_quantity_inv, $old_date, true); */
- $mat_cost = update_average_material_cost(null, $entered_grn->item_code,
- $diff, $entered_grn->this_quantity_inv, null, true);
+ // always return due to change in currency.
+ /*$mat_cost = update_average_material_cost(null, $entered_grn->item_code,
+ $diff, $entered_grn->this_quantity_inv, $old_date, true); */
+ $mat_cost = update_average_material_cost(null, $entered_grn->item_code,
+ $diff, $entered_grn->this_quantity_inv, null, true);
- //Add GL transaction for GRN Provision in case of difference
- if (($diff * $entered_grn->this_quantity_inv) != 0 )
- {
- $diff_amt = $diff * $entered_grn->this_quantity_inv;
- add_gl_trans($trans_type, $invoice_id, $date_, $iv_act,
- $stock_gl_code['dimension_id'], $stock_gl_code['dimension2_id'], 'GRN Provision',
- $diff_amt, null, null, null,
- "The general ledger transaction could not be added for the GRN of the inventory item");
+ //Add GL transaction for GRN Provision in case of difference
+ if (($diff * $entered_grn->this_quantity_inv) != 0 )
+ {
+ $diff_amt = $diff * $entered_grn->this_quantity_inv;
+ add_gl_trans($trans_type, $invoice_id, $date_, $iv_act,
+ $stock_gl_code['dimension_id'], $stock_gl_code['dimension2_id'], 'GRN Provision',
+ $diff_amt, null, null, null,
+ "The general ledger transaction could not be added for the GRN of the inventory item");
- add_gl_trans($trans_type, $invoice_id, $date_, $stock_gl_code["cogs_account"],
- 0, 0, 'GRN Provision', -$diff_amt, null, null, null,
- "The general ledger transaction could not be added for the GRN of the inventory item");
- }
-
+ add_gl_trans($trans_type, $invoice_id, $date_, $stock_gl_code["cogs_account"],
+ 0, 0, 'GRN Provision', -$diff_amt, null, null, null,
+ "The general ledger transaction could not be added for the GRN of the inventory item");
+ }
+ }
// added 2008-12-08 Joe Hunt. Update the purchase data table
add_or_update_purchase_data($supp_trans->supplier_id, $entered_grn->item_code, $entered_grn->chg_price);
/*$deliveries = get_deliveries_between($entered_grn->item_code, $old_date, Today()); // extend the period, if invoice is before any deliveries.
}
update_stock_move_pid(ST_CUSTDELIVERY, $entered_grn->item_code, $old_date, $date_, 0, $mat_cost);
} */
- update_stock_move_pid(ST_SUPPRECEIVE, $entered_grn->item_code, $old_date, $old_date, $supp_trans->supplier_id, $mat_cost);
+ if (is_inventory_item($entered_grn->item_code))
+ update_stock_move_pid(ST_SUPPRECEIVE, $entered_grn->item_code, $old_date, $old_date, $supp_trans->supplier_id, $mat_cost);
//}
}
// ----------------------------------------------------------------------