- The Daily Plan is used to manage start times for orders that are executed by the workflows available with the connected Controllers.
- The Daily Plan runs existing JS7 - Schedules and generates orders for the resulting days and start times. This applies to schedules that specify a single start time for an order and to schedules that specify cyclic starts. For each start time in a cycle an individual order is created. Planned orders are available for any modification of start times and variables. In a subsequent step such orders are submitted to their respective Controllers.
- This functionality is available for automation with the JS7 - Daily Plan Service. In addition, JOC Cockpit offers a user interface to manage the Daily Plan, to create orders and to submit orders to Controllers.
Orders are created from schedules that indicate the workflow and variables to be used as well as the run-time specification, i.e. the rules for which days and start times orders should be created. Schedules are available from the Configuration view:
Use with the Daily Plan Service:
- The Plan Order automatically checkbox specifies that the schedule will be applied when running the Daily Plan Service. Orders created by this service are added with a PLANNED state.
- The Submit Order to Controller when planned checkbox specifies that any PLANNED orders - from the current Daily Plan run or from previous runs - will be submitted to a Controller and will result in a PENDING order state. Submission of an order to a Controller means that the order will be submitted to any Controllers which the workflow has been deployed to.
Daily Plan View
The Daily Plan view is available from JOC Cockpit's main menu like this:
- Calendar Panel: The calendar panel allows navigation to a specific date to display the Daily Plan.
- The panel shows the list of submissions, i.e. the points in time when orders have been created for the selected date.
- Detail Panel: The detail panel displays the orders available for a selected date.
- Filters are available to limit the list of orders to the given order state. In addition, late Orders can be filtered to find Orders that have over-run their start time.
- Groupings are available to display orders per Schedule, per Workflow or per Order.
- The Planned Start time is calculated from the Schedule. The Expected End time is calculated from all previous runs of the same workflow. Consider that the JS7 - Cleanup Service can be configured to limit the number of history entries to the given number of days and therefore impacts the calculation of average execution periods.
Depending on the run-time specification of a schedule, an order is created for one-off execution or for cyclic execution. Cyclic orders include that an individual order is created for each interval in the given period , e.g. for a cycle starting a workflow every 5 minutes between 10am and 11am, this will be 12 orders. The Daily Plan view - as with every other view except for the History - displays cyclic orders as a single order with the cycle icon. When modifying the start time or variables of a cyclic order then this change is applied to any orders included with the cyclic order. The History view displays cyclic orders individually to enable access to the order state and log for each order included with the cycle.
Create Daily Plan
The functionality for creating a Daily Plan is provided by the calendar panel of the Daily Plan view. It allows the creation of orders and optionally the submission of orders to Controllers.
- The Daily Plan can be created for any released schedules and it can be limited to a selection of schedules.
- If a Daily Plan has already been created for the same date then existing orders can be considered or can be overwritten.
- Creating a Daily Plan includes two steps:
- Plan Orders
- The planning step includes creating orders from schedules and making them available with the PLANNED state. Such orders are visible with the Daily Plan view for a given date.
- Submit Orders
- The submission step includes forwarding orders to any Controllers which the underlying workflow has been deployed to.
- Plan Orders
- Users can decide if they want orders to be submitted to a Controller immediately. If orders are not be submitted immediately then this can be done later on from the Daily Plan view. Note that the Daily Plan Service will automatically submit planned orders for a number of days ahead within the scope of its configuration.
Submissions are a means of avoiding conflicts with the Daily Plan Service that will not consider Daily Plan dates for which submissions are available. Submissions are automatically added when orders are submitted to a Controller. This includes that the Daily Plan Service will not run for a given Daily Plan date if it finds a submission from a previous Daily Plan Service run or from users creating the Daily Plan for the given date.
However, users are free to delete submissions with the Daily Plan view. Deleting a submission does not remove orders, it just hides the fact that for the given date a previous planning has been performed. If no submission is available for a given date then the Daily Plan Service will consider existing orders for this date and will create additional orders if required by the underlying schedules. Practically speaking: if a user drops for example 3 orders out of 10 for a given date and deletes the submission then the Daily Plan Service will re-create the supplemental 3 orders.
Operations on Orders
The Daily Plan view offers a number of operations on orders that are in part available as bulk operations. The availability of operations depends on the state of selected orders.
Operations to Submit, to Cancel and to Remove Orders
- The operations to submit and to remove orders from the Daily Plan can be performed for orders in a PLANNED state.
- Removal from the Daily Plan includes that such orders do not exist any longer. The Daily Plan Service takes account of the removal of orders and will not re-create removed orders.
- The operation to cancel orders can be performed for any order state except for the PLANNED and FINISHED states.
Operations to Suspend and to Resume Orders
- The run-time operations:
- to suspend orders can be performed for the order states INPROGRESS, RUNNING and WAITING.
- to resume orders can be performed for orders with a SUSPENDED state.
Operations to Modify Order Start Times and Order Parameterization
Both operations to modify order start times and to modify order parameterizations include dropping existing orders and re-creating them with a new Order ID. The operations are available from an order's action menu and from bulk operations offered when selecting a number of orders.
Modify Start Times
This operation allows specification of a new date and time for the execution of the order. The order will be added to the Daily Plan for the new date and time.
Invoke the operation from an order's action menu like this:
Invoke the operation for a number of selected orders like this:
The operation brings forward a popup window to specify the modified start time like this:
This operation allows modify an order's parameterization including its start position and end positions in a workflow and any variables.
Invoke the operation from an order's action menu like this:
JS7 - Order Variables can be declared per Workflow. When modifying variables then values have to be indicated for required variables. In addition, optional variables can be added or removed.
The operation brings forward a popup window to specify start position, end positions and variables like this:
Daily Plan Submission History View
The Daily Plan holds the history of submissions, i.e. the information about when orders have been submitted to Controllers and the successful/failed result of this operation.
The history of submissions is available from the History -> Submissions menu.
- This view allows selection of submissions for a range of Daily Plan dates.
- Note that the submission date is the point in time when an order has been submitted. The Daily Plan date is the point in time that the order is scheduled for.
- Filtering is available for the submission status being successful or failed.
- For each Daily Plan date a number of submissions can be available if the Daily Plan has been re-created for the date in question.
- Each submission includes the orders that are affected by the underlying operation.
- Note that as with any history view, the information displayed can be focused on the currently selected Controller or can include information from any connected Controllers.
Daily Plan Service
The Daily Plan Service is an unattended background service that plans and submits orders as indicated with schedules.
Find details from the JS7 - Daily Plan Service article.
Automation with the Daily Plan Service
In this scenario the user does not want to interact with the Daily Plan. Instead, all order management is automatically performed by the Daily Plan Service.
Schedules specify that orders should be planned and should be submitted automatically.
- Each day the Daily Plan Service creates and submits orders for the given days ahead.
- Such orders become visible with the Daily Plan View with a PLANNED state and with a PENDING state respectively.
This scenario works without user intervention.
Individual Order Management for the Daily Plan
In this scenario a user wants to individually control the management of the Daily Plan:
- The user will manually create the Daily Plan from the view.
- The user will submit orders either immediately when creating the Daily Plan or later on.
- At the same time the Daily Plan Service should not create or plan any orders. To this purpose the Daily Plan Service settings should be modified to plan and to submit no days ahead.
It remains the user's responsibility to create and to submit orders in good time and for all requested Schedules.
Note: When manually creating the Daily Plan for a given date then the Daily Plan Service will skip this date in order to prevent interference.
Apply modified Workflows to the Daily Plan
If a workflow is modified and deployed to a Controller then this will create a new version of the workflow. The modified workflow is not applied to existing orders that have been created for a previous version of the workflow.
- This allows changes to workflows to be applied for new orders only, giving the user full control about the date starting from which a modified workflow should be applied.
- This forces the user to drop orders from the Daily Plan if workflow modifications are to be applied to orders already existing in the Daily Plan.
This use case suggests that the user makes use of the Advanced Filter in the Daily Plan View to identify orders associated with the modified workflow for a given date range and to cancel the resulting orders.
To re-create orders for the given workflow there are two options:
- either allow the Daily Plan Service to plan and to submit orders automatically. If the users makes use of the Delete Daily Plan (available from a button with this name) then any orders and submissions are removed from the given Daily Plan date. Then no further action is required from the user as the Daily Plan Service will re-create orders from the underlying schedules.
- or the user does not want to make use of the automation capabilities and manually creates orders for each date using the Create Daily Plan operation (available from a button with this name).
- If the modified workflow has to be applied to the current day then it is necessary for orders to be re-created manually.