Execution packages will automatically update the staging database, data warehouse, and OLAP cubes on a scheduled bases.
This article details the following:
- Creating a Notification
- Creating an Execution package
- Specify an Execution Schedule
- Usage Conditions on Execution Packages
- Committing Execution Package Changes
- Starting the Jet Data Manager Scheduler Service
Watch the Video!
Notifications will alert specified individuals when the execution package was successfully run, or in case something caused it to fail. Notifications are most commonly set up as email alerts but can be saved to the Event Log as well.
1. On the Execution tab, right-click Notifications , and then select Add Notification .
A window will appear with the following settings:
2. In the Name field, type a name for the notification.
3. In the Type field, select the type of notification you want to create. You have the following options.
|Option|| Description |
|Creates an email notification|
|Event Log||Writes a notification to the event log|
|Both||Creates both an email notification and writes to the event log|
4. In the Mail Server Name field, type the name of the mail server you want to send the email from. For secured servers you can input a specific Port as well as a User Name an Password.
5. In the From email field, type the email address you want to send the notification from.
6. In the To field, type the email address you want to send the notification to.
7. In the Cc field, type the email address you want to send a copy of the notification to
8. In the Subject field it is possible to use parameters to define the subject of the email. The supported parameters are:
|%Project%||Inserts the name of the project|
|%Status%||Inserts the status of the execution package (Success/Fail)|
|%ExecutionPackage%||Inserts the name of the execution package|
9. If relevant check the box for "Enable SSL/TLS" if SSL is required.
10. If relevant check the box for "Allow Invalid Certificate" is an invalid SSL certificate should be trusted.
11. Click OK .
The notification can now be selected when you create an execution package.
An execution package determines which elements of a project that will be deployed and executed.
1. On the Execution tab, right-click Execution Packages , and then select Add Execution Package .
2. In the Name field, type a name for the Execution Package .
3. Click and drag the Execute Project level from the All Steps tree on the left and drop it in the Selected Steps window on the right.
4. In the Action field, specify what should happen if the execution fails. You have the following options:
|FailPackage||Cancels the execution in case of failure|
|RestartPreviousStep||Restarts the execution from the previous step|
|RestartFirstStep||Restarts the execution process from the beginning|
If you select RestartPreviousStep or RestartFirstStep , specify in the Retries field how many times you want the execution package to restart, and then in the Wait field you specify the number of minutes to wait before retrying again.
5. In the Notification on Success / Notification of Failure select the notification to use when the execution package succeeds or fails. In this example we are only being notified if the execution package fails.
6. In the Managed Execution drop-down select a managed execution method.
When enabled the execution package will be managed internally, meaning the application will decide the order in which objects are executed based on dependencies and the degree of parallelism specified by the Max Threads setting.
You have the following options:
|Disabled||No managed execution will take place.|
|Execution Number||Based on the order of the objects in the project tree. The higher in the tree the sooner the execution.|
|Classification||The JDM will choose the order of objects based on their table classification: The order will be
If two tables have the same classification the JDM will use the Execution number as the secondary Criteria.
|Execution Time||The JDM will choose the object based on the average historical execution time for the object. If two objects have the same average execution time (i.e. new objects), then the JDM will use Execution Number as the secondary criteria.|
7. In the Max Threads box select the maximum number of tasks that the JDM can run in parallel.
The Execution Setup window has been updated in Jet Enterprise 2016 to include an “Exclude Steps” pane. Dragging objects into this pane will prevent these objects from being executed even if they are included in the Include Steps window. For example, this allows a user to drag “Execute Project” into the Include Steps pane and then drag in only those tables that the wish to exclude into the “Exclude Steps” pane which greatly simplifies the task of removing a small numbers of objects from the entire execution package.
It's possible to add a business unit, data warehouse, OLAP server or the entire project to the list of objects that should be fully loaded when the execution package is run. This way, you can simply add e.g. a business unit to the list and all current and future incrementally loaded tables in that business unit will be fully loaded when the execution package runs.
The “Full Load” tab in the Execution Setup window enables the user to select tables to be fully loaded during the execution. This will truncate the valid table as well as the _I or _INCR tables for selected objects that are incrementally loaded. This enables fully loading tables directly from the JDM without having to rely on additional scripting. The user simply needs to drag over any tables from the “All Tables” pane to the “Full Load Tables” table to specify which tables should be fully loaded during the execution.
Projects can be executed several times daily, once a night, or several times during the week. When you specify an execution schedule, the execution process is started automatically at the specified time.
1. Expand Execution Packages , right-click the Execution Package to which you want to add a schedule, and select Add Schedule .
A window will appear with the following settings:
2. Click the Daily radio button.
3. The Frequency option will allow the user to specify the time interval during which you want to execute the project throughout the day. This will run the execution at a specified interval during the specified hours.
4. In the Start time field, enter the start time of the time interval.
5. In the End time field, enter the end time of the interval.
6. In the Run every field, specify the number of hours and minutes between each project execution. The example below will run the execution package between 8:00AM and 5:00PM every two hours.
7. The Specified Hours option allows the user to select the exact times that the package will be executed.
8. If using Specified Hours , enter the exact time for the execution to run and then click Add Time . The example below will run the package at 10:00AM and 2:00PM.
9. Select Enabled to activate the schedule, and then click OK .
1. Expand Execution Packages , right-click the Execution Package to which you want to add a schedule, select Add Schedule . In the Schedule window select the Weekly radio button.
2. Select the day(s) when the project should execute.
3. Specify the start time for the execution, and then click Add Time to add the time to the schedule. Repeat this step for each day and time that you want to execute the project. A project can be executed several times a day and several times during the week.
4. To view the entire weekly schedule, click Show All .
5. Select Enabled to activate the schedule, and then click OK .
All events that happen during the execution are registered in the Windows Event Log
When you have multiple environments, you will often want to execute different execution packages depending on the environment. For instance, you might not want to run a multi-hour full load in your development environment, while this is important to do in the production environment.
You can now add usage conditions to execution packages to make this situation easier to handle. First, you will have to define an environment variable using the Project Variables feature. Next, you can simply right click on the relevant execution package, click on Add Usage Condition and add the usage condition, such as a selection rule on a table.
When a usage condition is not met on a manual execution, you will be notified with a warning message. The Jet Data Manager will write the same message to the execution log.
When an execution package is modified the following message will be displayed:
To commit the changes we must save the project as a deployed version. To do this right click on the project name → Advanced → Save project as deployed version.
If you are running a version of the Jet Data Manager prior to 15.11.1 you will not have the option to manually save the project as a deployed version. Instead you will have to deploy a single object such as a table to create a deployed version in the repository. It is recommend you locate a small table, i.e. the Company table and deploy and execute this after you have added or modified an execution package.
The scheduled execution packages are handled by a service on the machine named the Jet Data Manager Scheduler. This service is automatically installed during the Jet Data Manager installation process. This service needs to be started in order for the execution packages to run. The best practice is to identify a service account to be used to start this service as the "Log on As" for the service. This account should log in to the server once, open the Jet Data Manager, and point to the project repository database. This will create a configuration file for the account that will allow the service to start. The Start up type for the service should always be set to Automatic or Automatic (Delayed Start)
1. From the Tools tab click Windows Service Setup .
2. Right click the Jet Data Manager Scheduler service.
3. Set the start mode to Automatic or Automatic Delayed
4. Click Change User Name and Password . Assign a account that the service can run as. Click Update.
5. Start the Service