Allow reuse of references previously used on voided documents.
[fa-stable.git] / purchasing / includes / db / grn_db.inc
index 0b5c0eda85cf87bb60d83faccb9b3e8ad68084fc..2e7053574d2f594691cf5d614efe3121a15d92f3 100644 (file)
@@ -24,7 +24,6 @@ function update_average_material_cost($supplier, $stock_id, $price, $qty, $date,
        {
                $ex_rate = get_exchange_rate_to_home_currency($currency, $date);
                $price_in_home_currency = $price / $ex_rate;
-               //$price_in_home_currency = to_home_currency($price, $currency, $date);
        }       
        else
                $price_in_home_currency = $price;
@@ -43,17 +42,8 @@ function update_average_material_cost($supplier, $stock_id, $price, $qty, $date,
        if ($adj_only)
        {
                if ($qoh > 0)
-               /*
-               if ($qoh <= 0)
-                       $material_cost = 0;
-               else
-               */
                        $material_cost = ($qoh * $material_cost + $qty * $price_in_home_currency) /     $qoh;
        }
-       /*
-       elseif ($qoh + $qty <= 0)
-               $material_cost = 0;
-       */      
        else
        {
                if ($qoh < 0)
@@ -61,8 +51,9 @@ function update_average_material_cost($supplier, $stock_id, $price, $qty, $date,
                        if ($qoh + $qty > 0)
                                $cost_adjust = true;
                        $qoh = 0;
-               }       
-               $material_cost = ($qoh * $material_cost + $qty * $price_in_home_currency) /     ($qoh + $qty);
+               }
+               if ($qoh + $qty != 0)
+                       $material_cost = ($qoh * $material_cost + $qty * $price_in_home_currency) /     ($qoh + $qty);
        }       
        $material_cost = round2($material_cost, $dec);
        if ($cost_adjust) // new 2010-02-10
@@ -297,12 +288,12 @@ function read_grn_items_to_order($grn_batch, &$order)
                                $units = $myrow["units"];
                        }
 
-                       $order->add_to_order($order->lines_on_order+1, $myrow["item_code"],
+                       $order->add_to_order($order->lines_on_order, $myrow["item_code"],
                                1,$myrow["description"], $myrow["unit_price"],$units,
                                sql2date($myrow["delivery_date"]), $myrow["quantity_inv"],
                                $myrow["qty_recd"]);
 
-                       $order->line_items[$order->lines_on_order]->po_detail_rec = $myrow["po_detail_item"];
+                       $order->line_items[$order->lines_on_order-1]->po_detail_rec = $myrow["po_detail_item"];
                } /* line po from purchase order details */
        } //end of checks on returned data set
 }