Event processing example
In this simple example, observe the Scheduler’s view of the events. Assume these conditions:
- Item BK-110 has a routing with one operation, Oper110.
- The operation Oper110 requires a resource from resource group ST1.
- ST1 contains one resource, Crew1. The resource is on-shift for the time illustrated in the example.
- Operation Oper110 has a run time of 15 minutes. Run time (also called "step time") is the time to complete a load on the operation. Depending on the operation’s Step Time Rule (JOBSTEP.STEPEXPRL), this could represent various times, including a fixed time or the item cycle time (that is, time per piece). In this example, the run time represents the item cycle time.
- Job110-000 for BK-110 is released on 2/27/2002 at 8:00 a.m. for a quantity of 3.
- The schedule starts on 2/27/2002 at 8:00 a.m.
The Scheduler processes this data in these events:
Event | Description |
---|---|
SCHEDULE TIME ADVANCE TO 02/27/2002 8:00:00 | The Scheduler moves to the time the first events occur (the schedule itself may have been set to start earlier). |
02/27/2002 8:00:00 START OF ORDER ARRIVAL EVENT FOR ORDER Job110-000 RELEASING LOADS FOR ORDER Job110-000 CREATING LOAD 1, SIZE 3 OPERATION Oper110, SELECTED AS FIRST | The job is released and the Scheduler places the job quantity into a unit called a load. In most situations, the load contains the entire job quantity (although the job quantity can be broken into several loads). The first job operation in the routing is identified. |
02/27/2002 8:00:00 START OF OPERATION EVENT PROCESSING OPERATION Oper110, LOAD 1 OF ORDER Job110-000 SCHEDULING END OF MOVE FOR OPERATION AT 02/27/2002 8:00:00 | If any Move time had been defined for this operation, the Scheduler would have calculated its duration here. In this example, the operation is not defined with any Move time. |
02/27/2002 8:00:00 START OF OPERATION EVENT PROCESSING OPERATION Oper110, LOAD 1 OF ORDER Job110-000 REQUESTING RESOURCE GROUP ST1 REQUESTING RESOURCE Crew1 FROM GROUP ST1 ALLOCATION NOT COMPLETE | The Scheduler forces the first operation event to delay allocating the resource until the resource can check its request queue for any pending requests. A request is entered into the resource’s request queue. (Request queues are described in detail later.) This delay covers the possibility that a higher-priority operation arrives at the same time as a lower-priority operation, allowing the more critical operation to allocate the resource. |
02/27/2002 8:00:00 START OF RESOURCE FREE CHECK EVENT FOR RESOURCE Crew1 PROCESSING OPERATION Oper110, LOAD 1 OF ORDER Job110-000 ALLOCATING 1 UNITS FROM RESOURCE GROUP ST1 CANCELING REQUEST FOR RESOURCE GROUP ST1 CANCELING REQUEST FOR RESOURCE Crew1 FROM GROUP ST1 ALLOCATING RESOURCE Crew1 FROM GROUP ST1 ALLOCATION COMPLETE SETUP NOT NECESSARY OR OF ZERO DURATION SCHEDULING END OF SERVICE FOR OPERATION AT 02/27/2002 8:45:00 | The Crew1 resource checks its request queue for any pending requests and finds the request from OperBK001’s load. The Scheduler allocates the Crew1 resource from the ST1 resource group and calculates the time when the operation will be complete. |
SCHEDULE TIME ADVANCE TO 02/27/2002 8:45:00 | The Scheduler moves to the time when the next events occur. |
02/27/2002 8:45:00 START OF OPERATION EVENT PROCESSING OPERATION Oper110, LOAD 1 OF ORDER Job110-000 FREEING 1 UNITS OF RESOURCE GROUP ST1 FREEING RESOURCE Crew1 FROM GROUP ST1 RESOURCE Crew1 IS NOW IDLE SCHEDULING END OF COOL FOR OPERATION AT 02/27/2002 8:45:00 | The operation completes and releases ("frees") the Crew1 resource. The Crew1 resource is now idle and available for any other operations to allocate it. If any Finish time (that is, cooling time) had been defined for this operation, the Scheduler would have calculated its duration here. In this example, there is no additional post-operation processing. |
02/27/2002 8:45:00 START OF RESOURCE FREE CHECK EVENT FOR RESOURCE Crew1 REQUEST QUEUE EMPTY | When a resource is freed, it checks whether any other operations have requested it while it was busy. In this example, there are no pending requests for the resource. |
02/27/2002 8:45:00 START OF OPERATION EVENT PROCESSING OPERATION Oper110, LOAD 1 OF ORDER Job110-000 END OF PROCESS FOUND SELECTING NEXT OPERATION END OF PROCESS FOR LOAD 1 OF ORDER Job110-000 0 LOADS OUTSTANDING ORDER Job110-000 COMPLETE | Each operation specifies the next operation in the routing. In this example, the Scheduler finds no next operation, so it completes the job. |
SCHEDULE HALTED BECAUSE THERE WERE NO MORE ORDERS TO PROCESS SCHEDULE END AT 02/27/2002 8:45:00 | The Schedule is now complete. |