function get_calculated_price($stock_id, $add_pct)
{
- $avg = get_standard_cost($stock_id);
+ $avg = get_unit_cost($stock_id);
if ($avg == 0)
return 0;
return round2($avg * (1 + $add_pct / 100), user_price_dec());
{
$price = $prices[$base_id][$home_curr] * $factor / $rate;
}
-/*
- if (isset($prices[$sales_type_id][$home_curr]))
- {
- $price = $prices[$sales_type_id][$home_curr] / $rate;
- }
- elseif (isset($prices[$base_id][$currency]))
- {
- $price = $prices[$base_id][$currency] * $factor;
- }
- elseif (isset($prices[$base_id][$home_curr]))
- {
- $price = $prices[$base_id][$home_curr] * $factor / $rate;
- }
-*/
elseif ($num_rows == 0 && $add_pct != -1)
{
$price = get_calculated_price($stock_id, $add_pct);
$qty_dispatched = (float)$qty_dispatched;
-// echo "update line: $line_id, $doc_type, $qty_dispatched";
if ($doc_type == 0)
return false;
else {
//
function get_location(&$cart)
{
- $sql = "SELECT ".TB_PREF."locations.* FROM ".TB_PREF."stock_moves,"
- .TB_PREF."locations".
+ $sql = "SELECT location.*
+ FROM ".TB_PREF."stock_moves move,"
+ .TB_PREF."locations location".
" WHERE type=".db_escape($cart->trans_type).
" AND trans_no=".key($cart->trans_no).
" AND qty!=0 ".
- " AND ".TB_PREF."locations.loc_code=".TB_PREF."stock_moves.loc_code";
- $result = db_query($sql, 'Retreiving inventory location');
+ " AND location.loc_code=move.loc_code";
+ $result = db_query($sql, 'Retreiving inventory location');
if (db_num_rows($result)) {
return db_fetch($result);
function read_sales_trans($doc_type, $trans_no, &$cart)
{
if (!is_array($trans_no) && $trans_no)
- $trans_no = array($trans_no);
+ $trans_no = array($trans_no);
$cart->trans_type = $doc_type;
if (!$trans_no) { // new document
} else {
// read header data from first document
$myrow = get_customer_trans($trans_no[0],$doc_type);
- if (count($trans_no)>1)
+ if (count_array($trans_no)>1)
$cart->trans_no = get_customer_trans_version($doc_type, $trans_no);
else
$cart->trans_no = array($trans_no[0]=>$myrow["version"]);
@$myrow["src_id"]);
}
}
- $cart->prepayments = get_payments_for($trans_no, $doc_type);
+ $cart->prepayments = get_payments_for($trans_no, $doc_type, $myrow["debtor_no"]);
} // !newdoc
// FIXME - credit notes retrieved here should be those linked to invoices containing
// at least one line from related invoice
- if (!count($trans_no))
+ if (!count_array($trans_no))
return false;
$childs = get_sales_child_numbers($trans_type, $trans_no, false);
- if (!count($childs))
+ if (!count_array($childs))
return false;
$sql = "SELECT * FROM ".TB_PREF."debtor_trans