Sales Order Allocations
A new object "GF Item Allocation Summary" is created to store summarized item allocation by warehouse by item and by unit of measure.
Trigger "GF_ItemAllocationTrigger" is added to detect Insert, Update, and Delete operations against the GFERP's Item Allocation object. The system will increase or decrease the quantity count in the summarized table base on the operation type/or the quantity change detected by the trigger.
A nightly job is scheduled to recalculate allocated quantity in the summarized table.
Night job will runs the bataches in following order.
Empty the summarized table - GF_DeleteSummarizedItemAllocationBatch
Prepare the item allocation table - GF_UpdateItemAllocationBatch
Generated summarized item allocation records - GF_SummarizeItemAllocationBatch
This is the schedulable class:
GF_SOAllocationAndWhseShiptCreationSched
To schedule, run this:
String cron = '0 0 0/1 1/1 * ? *'; //hourly GF_SOAllocationAndWhseShiptCreationSched sched = new_GF_SOAllocationAndWhseShiptCreationSched(); String jobId = System.schedule('Sales Order Allocation and Whse. Shipt. Creation Job', cron, sched);
It calls GF_salesOrderAllocationBatch with Batch Size = 1?
To look at all sales orders with Document Status = Open, sort by Order Date
Then it calls GF_CreateWhseShipmentBatch with Batch Size = 1?
Two fields were created to record errors. (the system will write the error msg to all records if one record failed in the batch)
Allocation_Processing_Error__c
Whse_Shipt_Processing_Error__c