}
class ItemScheduler {
var stock_id:String;
+ var qoh: Int;
function new(stock_id: String) {
this.stock_id = stock_id;
+ qoh = untyped __call__('get_qoh_on_date', this.stock_id, 'DEF');
}
function tableHeader() {
- return ["A", "B", "C"];
+ return ["Order", "Customer", "Quantity", "Left", "On Hand", "Loc", "Required Date"];
}
function generateTable(): Void {
function formatRow(row) {
var array = php.Lib.hashOfAssociativeArray(row);
- php.Lib.print('<tr><td>'+array.get('stock_id')+'</td></tr>');
+ var quantity_before : Int = array.get('quantity_before');
+ var quantity_available = qoh - quantity_before;
+ var quantity: Int = array.get('quantity');
+
+
+ var status : String = if(quantity_available < quantity) 'overduebg';
+
+ var cells : Array<Dynamic> = [
+ array.get('order_id')
+ ,array.get('deliver_to')
+ ,quantity
+ ,quantity_available-quantity
+ ,quantity_available
+ ,array.get('from_stk_loc')
+ ,array.get('delivery_date')
+ ];
+
+ php.Lib.print('<tr class="'+status+'">');
+ for(cell in cells) {
+ php.Lib.print('<td>');
+ php.Lib.print(cell);
+ php.Lib.print('</td>');
+ }
+ php.Lib.print('</tr>');
+
}
var sql : String = "SELECT *
FROM "+tb+"denorm_order_details_queue
JOIN "+tb+"sales_orders ON (order_no = order_id)
- WHERE stock_id = '"+this.stock_id+"'";
+ WHERE stock_id = '"+this.stock_id+"'
+ ORDER by quantity_before";
+
return FA.query(sql);
}
}