Introduction
The JS7 - Daily Plan holds the orders that are scheduled for future execution. Typically orders are added to the Daily Plan for the near future, for example for one week. The orders are submitted to Controllers and Agents and will be executed independently from JOC Cockpit.
- 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.
JS7 - Daily Plan Projections are different from the Daily Plan:
- Projections calculate order execution for longer future periods. By default a period of 6 months is used. However, this can be prolonged to years.
- Projections do not hold orders but calculate future start times of orders based on the schedules used in the Daily Plan.
Schedules
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 and Agents which the workflow has been deployed to.
Daily Plan View
The Daily Plan view is available from JOC Cockpit's main menu like this:
Explanation:
- 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.
- Tags Panel:
- Users can filter visible workflows and orders by use of tags.
- For details see JS7 - Workflow Folders and Tags.
- Detail Panel: The detail panel displays the orders available for the 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 , for example 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. User should consider use of cyclic workflows instead of cyclic orders, see JS7 - Cycle Instruction.
Creating the Daily Plan
Users have a choice to automatically create the Daily Plan (default) or to manually plan for specific dates.
Creating the Daily Plan Automatically
By default the Daily Plan is created automatically. The JS7 - Daily Plan Service is running once per day and will plan orders and submit orders for the next few days.
- The Daily Plan Service does not add or submit orders for the current day.
- The start time of the Daily Plan Service and the period for which orders are planned and submitted is specified by tJS7 - Settings.
- The Daily Plan Service will not add orders to days for which the Daily Plan has been manually created.
Creating the Daily Plan Manually
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.
Explanation:
- Users can choose to create orders from all released schedules or from selected schedules.
- If orders exist in the Daily Plan for the current day then they can be overwritten, otherwise the existing orders remain in place.
- Orders can be immediately submitted to related Controllers.
- Users can specify to create orders from any schedules or from schedules that specify the flag for automated planning only.
Explanation:
- 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 and Agents 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.
Deleting Submissions
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 added, updated or removed. 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 manually 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.
Submitting, Cancelling and Removing 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 orders in the SUBMITTED state.
Suspending and Resuming Orders
- Run-time operations are not performed in the Daily Plan view, but in the Orders Overview available from the JS7 - Dashboard. Such operations include:
- to suspend orders for the order states INPROGRESS, RUNNING and WAITING.
- to resume orders in a SUSPENDED state.
Letting Run Orders
- The operation forces an order to start now. This does not modify the orders' assignment to a Daily Plan date.
- For example, if the Daily Plan starts at 11:30 each day and an order scheduled for 11:45 is forced to start at 10:45 then this will not change the order's assignment to today's Daily Plan, though technically the order is running in the period of yesterday's Daily Plan.
- The implication is relevant when using JS7 - Notice Boards as Notices are considered for the Daily Plan date assigned an order.
- The operation is available from one-time orders' action menu for orders in the SUBMITTED state.
FEATURE AVAILABILITY STARTING FROM RELEASE 2.7.0
- JOC-1763Getting issue details... STATUS
Modifying Order Start Times and Order Parameterization
Both operations to modify order start times and to modify the order parameterization 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.
Modifying 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 of an order.
Modifying start time of a one-time order
The operation offers the following options:
Now
: The order will be started immediately.Specific Date
: The order will be moved to a later Daily Plan date.Relative to Current Time
: The order will be moved to a point in time that is specified by a relative period (days, hours, minutes etc.) to the user's current time.Relative to Start Time
: The order will be moved to a point in time that is specified by a relative period (days, hours, minutes etc.) to the order's current start time.
All operations offered will consider the Daily Plan date of the updated start time. For example, if the Daily Plan starts at 11:30 each day and an order scheduled for 11:45 is forced to start at 10:45 then this will move the order to yesterday's Daily Plan. The implication is relevant when using JS7 - Notice Boards as Notices are considered for the Daily Plan date assigned an order.
Modifying the start time of a cyclic order
Modifying a cyclic orders includes to modify the begin, end and repeat time of the given order.
Related Changes:
FEATURE AVAILABILITY STARTING FROM RELEASE 2.5.8
FEATURE AVAILABILITY STARTING FROM RELEASE 2.6.5
Modifying Parameterization
This operation allows to modify an order's parameterization including its start position and end positions in a workflow and any variables assigned.
Users can 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.
Explanation:
- 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.
Use Cases
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.
Applying modified Workflows or Schedules to the Daily Plan
If a workflow is modified and is deployed to a Controller then this will create a new version of the workflow. The modified workflow is not automatically 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.
When deploying a modified workflow, schedule or calendar then users have a choice to update the Daily Plan:
Explanation:
Now
: Any orders for the given workflow starting from the current point in time will be updated to make use of the newly deployed version of the workflow. This option is active by default.Start Date
: Orders in the Daily Plan will be updated starting from the date specified by the user.No
: The Daily Plan will not be updated. Existing orders in the Daily Plan remain assigned the previous workflow version. The JS7 - Daily Plan Service will consider the new workflow version for newly created orders only.
As an alternative users can use the Advanced Filter in the Daily Plan View to identify orders assigned the modified workflow for a given date range and
- to cancel resulting orders which means to revoke them from the given Controller and Agents. Such orders will transition to the planned state.
- to re-submit orders for the given workflow there are two options:
- either allow the Daily Plan Service to submit orders automatically. No further action is required from the user as the Daily Plan Service will re-submit orders in the planned state.
- or to manually submit planned orders for each date.