4 * fill in any fifo basic entries that have not been processed..
5 * -- does not fill in values.. - just qty's
8 require_once 'ProcessBase.php';
10 class Pman_Xtuple_Fifo_ProcessBasic extends Pman_Xtuple_Fifo_ProcessBase
12 static $cli_desc = "Fill in basic Fifo values.";
14 static $permitError = false;
19 // set up the failure code..
20 PEAR::setErrorHandling(PEAR_ERROR_CALLBACK, array($this, 'onPearError'));
22 // we have to have a pointer to work out where we left off..
23 // this process can go by invdetail_id ASC..
25 $id = DB_DataObject::Factory('invdetail');
26 $id->autoJoinLocation();
28 $id->selectAdd('distinct(invdetail_location_id) as location_id, join_location.location_name as location_name');
30 $locs = $id->fetchAll('location_id', 'location_name');
32 foreach($locs as $loc=>$name) {
34 $id = DB_DataObject::Factory('invdetail');
36 $id->invdetail_location_id = $loc;
38 $id->selectAdd('distinct(join_invhist.invhist_itemsite_id) as itemsite_id');
39 $is = $id->fetchAll('itemsite_id');
42 $mu = memory_get_usage();
43 echo "Processing $name ({$tot}) - memory $mu\n";
45 foreach($is as $n=>$itemsite) {
46 $id = DB_DataObject::Factory('invdetail');
47 $id->query("SELECT invfifo_fill_all($loc, $itemsite)");