// add 2 stock_moves entries for a stock transfer
// $date_ is display date (not sql)
// std_cost is in HOME currency
-// it seems the standard_cost field is not used at all
+// it seems the unit_cost field is not used at all
function add_stock_transfer_item($transfer_id, $stock_id, $location_from, $location_to,
$date_, $reference, $quantity)
}
//-------------------------------------------------------------------------------------------------------------
-
+//
+// Get inventory transfer common data (currently this is still stored in stock_moves table).
+//
function get_stock_transfer($trans_no)
{
- $result = get_stock_transfer_items($trans_no);
- if (db_num_rows($result) < 2)
- {
- display_db_error("transfer with less than 2 items : $trans_no", "");
- }
+ // retrieve common data from any two from/to move records
+ $sql = "SELECT loc_from.*, loc_to.*
+ FROM
+ (SELECT trans_no, type, tran_date, reference, move.loc_code as from_loc, loc.location_name as from_name
+ FROM ".TB_PREF."stock_moves move
+ LEFT JOIN ".TB_PREF."locations loc ON loc.loc_code=move.loc_code
+ WHERE type=".ST_LOCTRANSFER." AND trans_no=".db_escape($trans_no). " AND qty<0 LIMIT 1) loc_from,
+
+ (SELECT move.loc_code as to_loc, loc.location_name as to_name
+ FROM ".TB_PREF."stock_moves move
+ LEFT JOIN ".TB_PREF."locations loc ON loc.loc_code=move.loc_code
+ WHERE type=".ST_LOCTRANSFER." AND trans_no=".db_escape($trans_no). " AND qty>0 LIMIT 1) loc_to";
+
+ $result = db_query($sql, "Could not get transfer common data");
+
+ $data = db_fetch($result);
- // this function is very bad that it assumes that 1st record and 2nd record contain the
- // from and to locations - if get_stock_moves uses a different ordering than trans_no then
- // it will bomb
- $move1 = db_fetch($result);
- $move2 = db_fetch($result);
-
- // return an array of (From, To)
- if ($move1['qty'] < 0)
- return array($move1, $move2);
- else
- return array($move2, $move1);
+ return $data;
}
//-------------------------------------------------------------------------------------------------------------