11Enterprise Scheduler Job Definitions and Job Sets

This chapter contains the following:

Users run scheduled processes based on Oracle Enterprise Scheduler Services to process data and, in some cases, to provide report output. Using the Enterprise Scheduler Jobs tasks, you can define job definitions, list of values sources, and job sets.

The various Enterprise Scheduler Jobs tasks are:

  • Manage Enterprise Scheduler Job Definitions and Job Sets for Financial, Supply Chain Management, and Related Applications

  • Manage Enterprise Scheduler Job Definitions and Job Sets for Human Capital Management and Related Applications

  • Manage Enterprise Scheduler Job Definitions and Job Sets for Customer Relationship Management and Related Applications

Each task includes:

  • Job Definitions: Contain the metadata about the job and the options available to users. A job definition is defined by a job type, such as Oracle Business Intelligence Publisher or PL/SQL Job type or others.

  • List of Values Sources: Determine where a list of values for the parameters in a job definition comes from and what the specific values are.

  • Job Sets: Collections of several jobs in a single process set that the users submit instead of running separate jobs.

To access the Manage Enterprise Scheduler Job Definitions and Job Sets tasks, use the following in the Setup and Maintenance work area:

  • Functional Area: Application Extensions or a product-specific functional area

  • Task: Manage Enterprise Scheduler Job Definitions and Job Sets

A list of values source determines where a list of values comes from and what the specific values are. Use these lists to display values for the parameters and application defined properties in job definitions which the user can select. For example, a list of countries for a Country parameter. To manage list of values sources, open the Manage List of Values Sources tab using the Manage Enterprise Scheduler Job Definitions and Job Sets page. In the Setup and Maintenance work area, use the following:

  • Functional Area: Application Extensions or a product-specific functional area

  • Task: Manage Enterprise Scheduler Job Definitions and Job Sets

Editing and Deleting List of Values Source

You can edit and delete list of values sources using the Manage List of Values Sources tab. While the List of Values Source Definition Name is a fully qualified name of the view object, the User List of Values Source Name doesn't have validation. So, you can edit the User List of Values Source Name field and enter a name according to your preference.

Note: You can edit list of values sources for use only in job definitions that are not predefined.

Job Definitions

Scheduled processes are based on jobs that process data and, in some cases, provide output. Each job requires a job definition. A job definition can also include parameters and user properties that the user defines while submitting the scheduled process.

You can view, create, edit and duplicate job definitions on the Manage Job Definitions tab using the Manage Enterprise Scheduler Job Definitions and Job Sets page. In the Setup and Maintenance work area, use the following:

  • Functional Area: Application Extensions a product-specific functional area

  • Task: Manage Enterprise Scheduler Job Definitions and Job Sets

Viewing Job Definitions

Use the table on the Manage Job Definitions tab to view the job definitions created for the application. An asterisk in the name column indicates a predefined job definition.

This table describes the columns in the table on the Manage Job Definitions tab.

Column Name Description

Name

Name of the job definition.

Display Name

Name of the job definition as available to users while submitting scheduled processes.

Description

Description for the job definition.

Path

The full directory path where the job definition is saved.

Execution Type

The type of job request for the given job definition, such as a Java, C, PL/SQL, Perl, or hosted script job.

Job Type

The name of the job type upon which the job definition is based.

Tip: The table of job definitions shows only 10 to 20 items by default but you can use Query by Example to view other items.

Parameters

A parameter controls which records are included or how they are affected when the job runs. Parameters are available to users when they submit scheduled processes based on your job definitions. For example, a job updates only the records that are effective after the date that users enter in a Start Date parameter. You can create, edit and delete parameters for job definitions that are not predefined.

User Property

A user property is set in the job definition to attain some specific results.

Create Job Definitions

A job definition is defined by a Job type, such as Java or Oracle Business Intelligence (BI) Publisher reports. You can only create or duplicate job definitions which are based on BI Publisher reports, so that users can run the reports as scheduled processes. For more information about reports, see the Creating and Administering Analytics and Reports guides for your products.

Creating Job Definitions

Follow these steps:

  1. Click Navigator > Setup and Maintenance.

  2. In the Setup and Maintenance work area, go to the following:

    • Functional Area: Application Extensions or a product-specific functional area

    • Task: Manage Enterprise Scheduler Job Definitions and Job Sets

  3. On the Manage Enterprise Scheduler Job Definitions and Job Sets page, open the Manage Job Definitions tab.

  4. Click the Create icon.

  5. In the Job Definition section, complete the fields, some of which are shown in this table.

    Field What You Enter

    Display Name

    Provide a name that the users see while submitting the scheduled process.

    Name

    Provide a name with only alphanumeric characters, for example, AtkEssPrograms1. A job definition name can't contain space or any special characters.

    Job Application Name

    Select the name of the application to associate the job definition with.

    Job Type

    Select BIPJobType only.

    Report ID

    Specify the path to the report in the catalog, starting with the folder within Shared Folders, for example:User-Defined/<Family Name>/<Product Name>/<Report File Name>.xdo.

    Make sure to include the .xdo file extension for the report definition.

    Default Output Format

    Select the format of the output.

    Note: Don't select the Enable submission from Enterprise Manager check box.
  6. Use the Parameters tab to define parameters as required.

  7. The only user property you need to define is EXT_PortletContainerWebModule and this user property is automatically created.

    Caution: You must not create or edit a user property unless you have the accurate information that is required to create or edit one.
  8. Click Save and Close.

When you create a job definition, the privilege with the same name as the job definition is automatically created. For example, for a job definition named AtkEssPrograms, the privilege is named RUN_ATKESSPROGRAMS.

Duplicating Job Definitions

Users can also create job definitions by duplicating existing job definitions, including parameters. To duplicate a job definition:

  1. On the Manage Job Definitions tab, select the job definition you want to duplicate.

  2. Click Duplicate to get another row in the table with the duplicate job definition.

  3. Select the duplicate job definition and click Edit.

  4. Enter the name and path.

  5. You can update the parameters as needed.

  6. Click Save and Close.

When you duplicate a job definition, you automatically create a view object of the same name in the list of values sources.

Note: The attribute validations present on the attributes in the parameters view object are not copied over.

Edit Job Definitions

You can only edit certain fields in predefined job definitions, as some of the fields are read only. However, you can edit all aspects of job definitions that are not predefined.

Editing Job Definitions

Follow these steps:

  1. Click Navigator > Setup and Maintenance.

  2. In the Setup and Maintenance work area, go to the following:

    • Functional Area: Application Extensions or a product-specific functional area

    • Task: Manage Enterprise Scheduler Job Definitions and Job Sets

  3. On the Manage Enterprise Scheduler Job Definitions and Job Sets page, open the Manage Job Definitions tab.

  4. Select the job definition you want to edit.

  5. Click Edit.

  6. Make the changes that you want, for example:

    • You can edit the display name of the job definition to use terms that are more familiar to your users.

    • You can use the Prompt field to edit parameter display names.

  7. Click Save and Close.

Predefined Job Definitions

You cannot update parameters in predefined job definitions, but this table lists some of the other fields that you can edit.

Field Description

Retries

The number of times to automatically run this job again if the scheduled process fails.

Job Category

Specific to the application of the job definition, it's used to group definitions according to your requirements.

Timeout Period

The amount of time before stopping a scheduled process that couldn't complete.

Priority

Priority of scheduled processes submitted, with 0 as lowest. If other processes, based on the same or another job, are scheduled to run at the same time, then priority determines the run order.

Define Parameters for Job Definitions

A parameter controls which records are included or how they are affected when a job runs. Job definitions can have one or more parameters or none at all. You define parameters while creating or editing job definitions using the Manage Enterprise Scheduler Job Definitions and Job Sets page. In the Setup and Maintenance work area, use the following:

  • Functional Area: Application Extensions or a product-specific functional area

  • Task: Manage Enterprise Scheduler Job Definitions and Job Sets

When users run the scheduled process, the values they enter for the parameters determine the data to be included in the report. Also, the values are passed to the data model that the report is using.

The parameters that you define must be in the same order as parameters in the data model. For example, the data model has parameters in this order:

  • P_START_DATE

  • P_END_DATE

  • P_CURRENCY

You create parameters as follows:

  • Start Date

  • End Date

  • Currency

Defining Parameters: Job Definitions

To define parameters while creating or editing job definitions:

  1. On the Manage Job Definitions page, open the Parameters sub tab.

  2. Click Create.

  3. Enter the parameter prompt that users see when they submit the scheduled process.

  4. Select a data type and configure how the parameter and the data entered are displayed, as described in this table.

    Data Type Fields

    Boolean

    Select this if you want the parameter to be a check box.

    Select True or False to determine if the check box is selected or not.

    Date or time

    Select Date and time or Date only option.

    Select a value from the Default Date Format.

    Number

    Select a Number Format.

    Select Left or Right for data alignment.

    String

    Select a Page Element.

    Select Text box if you want the user to provide a text.

    Select Choice list if you want a list with limited options (maximum 10).

    Select List of values if you want a list with unlimited options with a search facility.

  5. Select the Read Only check box if you don't want to enable users to set this parameter. When a parameter is set as read only, the user is required to provide a default value to be passed to the job definition.

  6. If you select list of values or choice list page element, select a List of Values Source and an Attribute.

  7. From the list of available attributes, select the attributes you want to appear in the list and move them to the selected attributes section. These attributes determine the values that the user can see.

  8. Define a Default Value for the parameter.

  9. In the Tooltip Text field, provide additional information for the user to follow.

  10. Select the Required check box if users must set this parameter to submit the scheduled process.

  11. Select the Do not Display check box if users should not see this parameter while submitting the process.

  12. Click Save and Create Another or Save and Close.

Dependent Parameters

The attributes of some parameters depend on the attributes or values of certain other parameters. The attributes of a parameter would change if the value of its dependent parameter changes.

For example, you have three parameters, namely Country, State and, City. In this case, the value of the Country parameter would determine the values available in the State parameter. The values in the State parameter would determine the values available in the City parameter.

Define Dependent Parameters in Job Definitions

This example demonstrates how to define dependent parameters.

This table summarizes key decisions for this scenario.

Decisions to Consider In this Example

Which parameters do I want to make dependent?

Region, Country and City.

Region list of values includes the names of the regions like North America, EMEA, JAPAC and so on. The Country list of values includes the names of countries like USA, Canada, France, England, India, Japan and so on. Similarly City list of values includes the names of different cities like New York, Washington, London, Paris, Mumbai, Tokyo and so on. The Country parameter list of values includes only the countries like USA, Canada and so on, if user selects North America. The City parameter list of values includes the names of the cities in the country that the user has selected.

What are view criteria?

The view criteria determine the values that appear in the dependent parameter list of values for the users to see. The view criteria are used to filter the list and pass the required bind variables based on the user's selection.

To filter countries based on the selected region, you must select getCountriesByRegion and pass Region as a bind variable.

Prerequisites

Create the parameters Region, Country and City. The values available to the users in the Country parameter list of values depends on the value selected for the Region parameter. City parameter list of values depends on the value that the user selects for the Country parameter.

Defining Dependent Parameters

To define parameters with dependent lists of values:
  1. On the Manage Job Definitions tab, open the Parameters sub tab.

  2. Select the Region parameter.

  3. Click the Manage Dependencies button located next to the Delete button.

  4. From Available View Criteria, select getCountriesByRegion and move it to Selected View Criteria using the move icons.

    The selected view criteria appears in the Bind Variables section.

  5. In the Bind Variables section, for the getCountriesByRegion view criteria, select Country from the mapped parameters list of values.

    The Country parameter list of values is now dependent on the value selected for the Region parameter.

  6. Click OK.

  7. Repeat the steps with Country parameter. Select getCitiesByCountries from the available view criteria and pass City as a bind variable.

Job Sets

A job set is a collection of several jobs in a single process set that the users can submit instead of running individual jobs separately. The job set definition also determines if the jobs run in serial or parallel, or based on some other predetermined logic. In the Setup and Maintenance work area, go to the following:

  • Functional Area: Application Extensions or a product-specific functional area

  • Task: Manage Enterprise Scheduler Job Definitions and Job Sets

Use the Manage Enterprise Scheduler Job Definitions and Job Sets page to open the Manage Job Sets tab.

  • On this tab, you can view and define job sets, and use Query By Example to find a specific job set.

  • You can't edit or delete the predefined job sets which are indicated by an asterisk. You can create job sets, and also edit and delete job sets that are not predefined.

Job Set Steps

A job set can contain any number of individual jobs as well as other job sets. There can also be multiple levels of nested job sets within a single job set. For example, a job set can include three jobs and two job sets, one of which contains another job set. Each individual job or job set that's included within a job set is called a job set step. A job set and each of its job set steps can have additional parameters. Users provide the values for these parameters when they submit the process set.

Application Defined Properties

Some Job Sets require the user to enter certain additional properties before submitting a job request. Application Defined Properties are the additional properties that the user has to enter during runtime. For example, when enableDuplicateJobWithParamTaskflow property is set to True, it can be used to run a single job multiple times with different parameter values, within a job set.

System Properties

System Properties are the additional settings that determine how a job set runs. For example, you can use a system property to determine the number of retries for a job set that fails to execute. On this tab, you can view and define job sets, and use Query By Example to find a specific job set.

Create Job Sets

Create a job set so that users can run multiple jobs with a single submission. Before you create the job set, plan the sequence and hierarchy of the job steps within the job set. You can create job sets using the Manage Job sets tab. You can also edit and delete job sets that are not predefined.

Steps to create Job Sets

Follow these steps:

  1. Click Navigator > Setup and Maintenance.

  2. In the Setup and Maintenance work area, go to the following:

    • Functional Area: Application Extensions a product-specific functional area

    • Task: Manage Enterprise Scheduler Job Definitions and Job Sets

  3. On the Manage Enterprise Scheduler Job Definitions and Job Sets page, open the Manage Job Sets tab.

  4. Click Create.

  5. Complete the fields as shown in this table.

    Field Description

    Name

    Provide a name with only alphanumeric characters, for example, ExportMetadataTables1.

    Note: A job set name can't have space or any special character.

    Display Name

    Provide a name that the users see while submitting the scheduled process.

    Description

    Provide more information about what the job set does.

    Package

    Specify the path where you want to save the job set.

  6. In the Job Set Steps section, select Serial or Parallel to define the sequence of the job set.

  7. Click Add Job Set Step to open the Add Step dialog box.

  8. In the Step tab:

    1. Enter a Step ID to easily identify the steps.

    2. Search for and select a job or job set to include in your job set.

    3. Select Job definition or Job set.

    4. Type a valid name or package, or both of the Job or Job Set you are looking for and click search.

    5. Select the required job definition or job set and click OK.

    6. If you selected Parallel in step 4:

      • Select Insert into main diagram if you want the step to be executed independently.

      • Select Add to list of available steps if you want the step to be one of the outcomes in the available steps.

      • If you choose to add the step to the list of available steps, select an option for the possible job outcomes. For example, you can determine whether the process must stop or another step must be executed if the step fails to run successfully.

  9. In the Application Defined Properties tab:

    1. Click Add Application Defined Property icon and select a data type.

    2. Enter a name and an initial value.

    3. Select the Read Only check box if you don't want users to update this property when they submit the process set.

    4. Click OK.

  10. In the System Properties tab:

    1. Click Add System Property.

    2. From the name list, select a system property.

    3. Enter a value in the Initial Value field.

    4. Select Read Only check box if you don't want users to update this property when they submit the process set.

    5. Click OK.

    Note: You can also add and edit the Application Defined Properties and System Properties in the respective sections on the Create Job Set page.
  11. Click OK to add the Job Set Step.

  12. Add jobs and job sets as required. You can select job steps in the Job Set Steps section and edit, remove, or reorder (for Serial only). You can also switch between Serial and Parallel.

  13. Click Save and Close.

Note: When you create a Job Set, the privilege of the same name as the Job Set is automatically created. For example, for a Job Set named ExportAppsData, the privilege is named RUN_EXPORTAPPSDATA.

System Properties for Job Sets

System Properties are the additional settings that determine how a job set runs. For example, you can use a system property to determine the number of retries for a job set that fails to execute. You can open the Manage Job Sets tab using the Manage Enterprise Scheduler Job Definitions and Job Sets page. In the Setup and Maintenance work area, use the following:

  • Functional Area: Application Extensions or a product-specific functional area

  • Task: Manage Enterprise Scheduler Job Definitions and Job Sets

System Properties

This table lists some system properties with description.

System Property Name Description

SYS_allowMultPending

Specifies if the same job definition can have multiple pending requests.

SYS_application

Specifies the logical name of the Scheduling Services folder application used for request processing. Oracle Enterprise Scheduler automatically sets this property during request submission.

SYS_effectiveApplication

Specifies the logical name of the Scheduling Services folder application that is the effective application used to process the request. You can associate a job definition, job type, or a job set step with a different application by defining the EFFECTIVE_APPLICATION system property. This property can only be specified through metadata and cannot be specified as a submission parameter.

SYS_priority

Specifies the request processing priority. The priority interval is 0 to 9, where 0 is the lowest priority and 9 is the highest. If this property is not specified, the default value used is 4.

SYS_product

Specifies the product used for submitting the request.

SYS_request_timeout

Enables the job request to time out.

SYS_requestExpiration

Specifies the expiration time for a request. This represents the time (in minutes) that a request will expire after its scheduled execution time. An expiration value of zero (0) means that the request never expires. If this property is not specified, the default value used is 0.

Request expiration only applies to requests that are waiting to run. If a request waits longer than the specified expiration period, it does not run. After a request starts running, the request expiration no longer applies.

SYS_retries

Specifies the retry limit for a failed request. If request execution fails, the request is retried up to the number of times specified by this property until the request succeeds. If the retry limit is zero (0), a failed request is not retried. If this property is not specified, the default value used is 0.