Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Minor change to text

Table of Contents
outlinh1. true
outlinh1. true
1printablefalse
2stylh1. none
3indent20px

Introduction

Parameters can  can be set for Jobs and and for Orders.

...

Note that when jobs are programmed using the JobScheduler API, job and order parameters are separate objects. Order parameters have priority over - i.e. will overwrite - job parameters of the same name.

Parameters allow a general purpose jobs to be created that are then provided with specific information via the parameters. For example, the file name, current location and target address for a file transfer job could be easily specified using parameters.

Parameters can be used to provide information for either shell jobs - i.e. jobs that run a shell script - or API jobs - i.e. jobs that use the JobScheduler's API Interface. The most widely used API jobs are the JITL - JobScheduler Integrated Template Library jobs that can be included as part of each JobScheduler installation and allow the JobScheduler to carry out a wide range of standard functions.

Article Delimitation

Global Variables

...

Parameter elements can be found in JOE - JobScheduler Object Editor, in the JOE element Scheduler Elements tree as a sub-elements of every job and order. Each parameter consists of a name and a value.

...

Code Block
languagexml
titleA simple order with parameters
<order  job_chain="shell_with_parameter" id="Order1">
    <params >
        <param  name="param1" value="Value1-Order1"/>
        <param  name="param2" value="Value2-Order1"/>
    </params>

    <run_time />
</order>

Reading and Setting Parameters in Shell Scripts

Parameters are exposed as environment variables for shell scripts.

...

Setting Parameters for an Order in JOC

Order parameters can be set in JOC - JobScheduler Operations Center when an order start is configured.

This is done using the Order menu button as shown in the screenshot below.

Image Added

The Start order parametrized button opens the Start order shell_with_parameter form as shown in the next screen shot.

This form is used to specify a start time (or immediate start) for the order and any parameters

Image Added

The submit button will start the order at the time specified in the upper part of the form with the parameter name/value pair shown.

The new param button can be used to add a further name/value pair for the order.

A parameter set here will overwrite a parameter with the same name that has been configured for a job.

Using Parameters in Shell Script Jobs

  • Job and order Parameters are exposed to shell scripts as environment variables.
  • Environment variables are named using a predefined prefix and the name of the original parameter: 
    • The default value for the environment variable prefix is SCHEDULER_PARAM_ 
    • Environment variable names are provided with uppercase letters.
    • For example, a parameter param1 can be accessed by the SCHEDULER_PARAM_PARAM1 environment variable. This syntax applies for both job and order parameters.
    • For details see Which environment variables are provided by JobScheduler?

Examples for parameters defined for a job

The following two examples show a job parameter defined in a job <param> tag can be used in a shell script. Note that the parameter could have been equally well have been defined in the order.

Code Block
languagexml
titleExample for Windows showing how a task parameter can be used in a shell script
collapsetrue
 <job>
    <params>
        <param name="param1"  value="Test"/>
    </params>
    <script language="shell">
        <![CDATA[
 rem This is an example shell script to show the use of parameters
 echo Param1 has the value %SCHEDULER_PARAM_PARAM1%
        ]]>
    </script>
    <run_time/>
 </job>
Code Block
languagexml
titleExample for Unix showing how a task parameter can be used in a shell script
collapsetrue
 <job>
    <params>
        <param name="param1" value="Test"/>
    </params>
    <script language="shell">
        <![CDATA[
 # This is an example shell script to show the use of parameters
 echo "Parameter param1 has the value $SCHEDULER_PARAM_PARAM1"
        ]]>
    </script>
    <run_time/>
 </job

Examples for parameters defined on job start

The following example shows an XML command to start a job with parameters.

Code Block
languagexml
titleExample for Windows showing how a task parameter can be used in a shell script
collapsetrue
 <start_job job="my_job">
    <params>
        <param name="param1"  value="Test"/>
    </params>
 </start_job>
  • A parametrized job start can be used programmatically, e.g. by use of the JobScheduler start script.
  • Such parametrized job starts can be effected by JOC.

For further information see

Using Parameters in API Jobs

Job and order parameters are exposed to the API as objects.

This is described in detail in:

Further References

Job and Order Parameters

...