Redwood Documentation

Product Documentation

 

›Processes and Chains

RunMyJobsProcess and Chain Definitions

Process Definitions

  • Creating Process Definitions
  • Setting Chain Definition and Chain Definition Properties
  • Integrating Redwood Server with Web Services
  • Redwood Definition Types
  • Maintenance Process Definitions
  • Template Process Definitions
  • Top Level Process Definition
  • Submit Form Editor
  • Default System Process Definitions

Processes and Chains

  • Advanced Chain Diagram Quick Reference
  • Chain Diagram Quick Reference
  • Chain Runtime Viewer Quick Reference
  • Advanced Chain Definition Editor Quick Reference
  • Advanced Chain Runtime Viewer Quick Reference
  • Advanced Diagram Quick Reference
  • Parameter Validation using Constraints
  • Processes Waiting on Events
  • Setting the Scheduling Behavior on the Control Tab
  • Setting the Retention Period for Processes
  • Runtime Limits
  • Setting Process Definition Options
  • Defining Parameters
  • Constraint Definitions
  • Constraint Class
  • Raising Events
  • Processes with Locks
  • Reaction Processes
  • Restart Behavior on the Process Status Tab
  • Searching Files
  • Setting the Name and Editing the Process Definition Source
  • Customizing Processes with Specific Actions
  • Using Table Parameters
  • Automatically Deleting Old Processes and Chains
  • Editing Process Definitions Safely
  • Parameter Formats

Chain Definitions

  • Using Chain Definitions
  • Creating Chain Definitions
  • Steps
  • Chain Processes
  • Creating Chain Definitions with Sequential Processes
  • Creating Chain Definitions with Parameter Handling
  • Creating Chain Definitions with Parallel Chain Processes
  • Creating Chain Definitions with Chain Processes Dependencies
  • Creating Chain Definitions for Multiple SAP Systems
  • Precondition Functions

Restart Behavior

  • Controlling Global and Partition Restart Behavior
← Setting Process Definition OptionsConstraint Definitions →

Defining Parameters

Parameters are used to store values, which can optionally be changed at submit time. In chain definition, parameters can also be shared and updated between chain processes. Non-runtime parameters are evaluated in the submit wizard once according to their Display Order; Runtime parameters are evaluated immediately before the process, chain, or chain process reaches status Running according to their Display Order. This is particularly important when you create dependencies between parameters; a parameter value that references another parameter must be evaluated after all its referenced parameters; only Runtime parameters can reference other Runtime parameters.

Parameter Properties

The following properties define parameters:
  • _Name - is used in the source and in chains to refer to the parameter, you should only use alphanumeric characters and the underscore _ in names.
  • _Direction - defines how this parameter is to be used.
    • _In - value is provided in the process definition or the submit wizard and does not change.
    • _Out - value is provided at runtime.
    • _In/Out - value is provided in the process definition or the submit wizard and can be changed at runtime.
  • _Type - the data type of the parameter, you cannot store alphabetical characters in number parameters, for example.
    • _Character - parameter can only hold one single character.
    • _Number - parameter can only hold digits.
    • _Date Time Zone - parameter holds a date with time and time zone.
    • _Date Time - parameter holds date with time.
    • _Date - parameter holds a date.
    • _Time - parameter holds a time.
    • _String - parameter can hold one or more alphanumeric characters.
    • _File - parameter either holds the path to the file or a FileParameter object and allows you to attach files to the process in the submit wizard.
      • JobFile:<process_ID>:<file_name> - JobFile expression by process ID, such as JobFile:1234:stdout.log.
      • RelativeFile:<relative_process>:<file_name> - relative JobFile expression, such as RelativeFile:Initialization Step, Job 2:stdout.log.
      • doc:/<document_path> - Document path, where <document_path> is doc:partition:/<application_path>/<document_name>.<document_extension>, and <application_path> is <partition>.<application>[/<partition>.<application>]*. For example, doc:MyPartition:/MyTest.pdf or doc:MyPartition:/MyPartition2.MyApplication/MyTest.pdf.
      • Document:<partition>.[<application_bkpath>.]<document_name> - Document BusinessKey. For example, Document:MyPartition.MYFILE for a document without application or Document:MyPartition.MyPartition2%2e;MyApplication%2;$2.MYFILE for a document MYFILE in application MyPartition2.MyApplication; the <application_path> is the BuisinessKey of the application with dots (``.) replaced with %2;.
    • Table - parameter come in different types that can hold either inline XML data, a reference to a process file, or a table. Supported by RedwoodScript-based definition types, only. The syntax is as follows:
      • Inline:<xml> - The <xml> is raw XML data. The processing instruction (for example <?xml version="1.0" encoding="UTF-8"?>) is optional, however, if specified appropriate whitespace must separate it from the data.
      • JobFile:<process_ID>:<file_name> - JobFile expression by process ID, such as JobFile:1234:stdout.log.
      • RelativeFile:<relative_process>:<file_name> - relative JobFile expression, such as Initialization Step, Job 2:stdout.log.
      • Table:<partition>.<name> - business key of a table, such as Table:MyPartition.Variables.
  • Default Expression - the value of the parameter, can be a literal, like Hello World or a Redwood Expression Language expression, like =Time.now('Europe/Berlin'). Parameters of type File cannot have a default value.
    • See the Redwood Expression Language and Implicit Objects section below for a list of implicit objects that you can use in your REL expressions.
  • Description - is used as descriptive text in the user interface and while submitting; in editors you can switch between Name and Description.
  • Group Name - allows you to create tabs in the submit wizard to group parameters; the groups are ordered by the lowest Display Order of a parameter in the group. See the section below.
  • Documentation - is used to provide further information regarding the parameter, this will not be displayed in the submit wizard.
  • Length - maximum length of the parameter in characters.
  • Process Format - the format of the parameter value. You can use a specific syntax to format the value of your parameter, depending on its Type. You enable File type parameters to be available in RedwoodScript as FileParameter objects by setting this to FileParameter.
  • Array - array parameters can hold multiple values. Arrays must have unique elements.
    • Array length Min - minimum amount of values.
    • Array length Max - maximum amount of values.
    • Array Options - Duplicate values allowed (array had hold duplicate values), Sorted (Array values are sorted numerically or alphabetically)
  • Editable - Can the value be edited in the submit wizard?
  • Simple Constraint Type - Constraints allow you to enforce rules for parameter values. See Constraints for more information.
    • Simple Constraint Data
    • Simple Constraint Message
    • Simple Constraint Optional
    • Simple Constraint Sort
  • Parameter Options
    • Optional - parameter value can be null.
    • Display - parameter is displayed in the submit wizard Parameters dialog, submit wizard Summary dialog, and the processes monitor detail pane for the process when this option is enabled.
    • Part Of Key - parameter is used in keep clauses, see Automatically Deleting Old processes.
    • Runtime - In and In/Out runtime parameter Default Expressions are evaluated immediately before the process reaches status Running.
    • Password - password parameters hide the entered value.
  • Job Definition Parameter Sub Type - Internal use, only.
note

Array parameters are not supported by all definition types. In RedwoodScript process definitions, for example, you access them like regular Java arrays. See the documentation for the specific definition type.

note

File parameters created in versions prior to 9.0.20 hold the full path to the uploaded file; the upgrade does not change existing parameters. Any new parameters created will hold the FileParameter object.

note

The Display Order of parameters is also the order in which parameters are resolved. If you use Redwood Expression Language to define a parameter based on the value of another parameter, the parameter in the expression must have a lower Display Order than the parameter it defines or the latter will not get resolved.

Ordering of Groups

The groups are ordered by the Display Order of the parameters, only the lowest Display Order of a group is taken into account.

Example:

Group A

  • Parameter1 - Display Order 9.
  • Parameter2 - Display Order 8.
  • Parameter3 - Display Order 1.

Group B

  • Parameter4 - Display Order 7.
  • Parameter5 - Display Order 6.
  • Parameter6 - Display Order 2.

Group C

  • Parameter7 - Display Order 5.
  • Parameter8 - Display Order 4.
  • Parameter9 - Display Order 3.

The groups will be ordered by the parameters with the lowest Display Order in each group, so ordering is performed by the Display Order of Parameter3, Parameter6, and Parameter9 as follows:

Group A|Group B|Group C

Redwood Expression Language and Implicit Objects

The Default Expression field accepts REL expressions; the table below lists implicit objects that can be used within your REL expressions. You can find the list of REL functions in the REL-specific topic; see the See Also section below.

Implicit objectsDescriptionClass
parameters.<name>Value of parameter <name> of current jobjava.lang.String, java.lang.Number, java.util.Date, com.redwood.scheduler.api.date.DateTimeZone
outParameters.<name>Value of Out parameter <name> of current jobjava.lang.String, java.lang.Number, java.util.Date, com.redwood.scheduler.api.date.DateTimeZone
chainParameters.<name>Value of parameter <name> of inner-most chainjava.lang.String, java.lang.Number, java.util.Date, com.redwood.scheduler.api.date.DateTimeZone
chainOutParameters.<name>Value of out parameter <name> of inner-most chainjava.lang.String, java.lang.Number, java.util.Date, com.redwood.scheduler.api.date.DateTimeZone
JobChainParameters.getOutValueString(<jobName>, <parameter>)The value of the Out parameter <parameter> of the chain process (see placeholders below)java.util.String
JobChainParameters.getOutValueNumber(<jobName>, <parameter>)The value of the Out parameter <parameter> of the chain process (see placeholders below)java.lang.Number
JobChainParameters.getOutValueDate(<jobName>, <parameter>)The value of the Out parameter <parameter> of the chain process (see placeholders below)java.util.Date
chainJobIdID of the inner-most chain (needs to be a Runtime parameter)long
jobIdID of the current process (needs to be a Runtime parameter)long
topLevelJobIdID of highest parent in hierarchy (needs to be a Runtime parameter)long
returnCodeReturn code of current joblong
stepIterationsIteration number of the current step or joblong
waitEvents.<name>.finalPathThe path of the file that raised the wait event <name> (after move, if applicable)java.lang.String
waitEvents.<name>.originalPathThe path of the file that raised the wait event <name> (before move, if applicable)java.lang.String
waitEvents.<name>.raiserCommentThe comment of the raiser for wait event <name>java.lang.String
waitEvents.<name>.raiserJobIdThe ID of the process that raised the wait event <name> (if applicable)java.lang.Long

Example

Referencing the Value of one Parameter in Another Parameter

Your process definition has two parameters, param1 and param2. The data type of param1 is Number and its Default Expression is set to 1. The parameter param2 is also a Number parameter, its Default Expression is set to =parameters.param1 * 2.

Here, the Display Order is very important, if parameter param2 has a lower Display Order than param1 it will be displayed first. However, Redwood Server will not be able to resolve it and attempting to submit the process will result in an exception being thrown. This is due to the fact that param1, which is part of the Default Expression of param2, has not been evaluated, yet, when Redwood Server attempts to evaluate param2.

See Also

  • Redwood Expression Language
  • Parameter Constraints

Parameters JobParameter parameter JobChainParameter JobDefinitionParameter ProcessDefinitionParameter

← Setting Process Definition OptionsConstraint Definitions →
  • Parameter Properties
  • Ordering of Groups
  • Redwood Expression Language and Implicit Objects
  • Example
  • Referencing the Value of one Parameter in Another Parameter
  • See Also
Docs
Getting StartedInstallationFinance InstallationConcepts
TroubleshootingArchiving
Learn and Connect
Support Portal
BlogEventsResources
ISO/ IEC 27001 Information Security Management
Automate to be human

2023 All Rights Reserved |

Terms of Service | Policies | Cookies | Glossary | Third-party Software | Contact | Copyright | Impressum |