1,Parameter and Variable Types:
Service variables: $PMSuccessEmailUser, $PMSessionLogCount, and $PMSessionErrorThreshold等等
Service process variables: $PMRootDir, $PMSessionLogDir, and $PMBadFileDir 等等
Workflow variables: $TaskName.PrevTaskStatus is a predefined workflow variable
$$VariableName is a user-defined workflow variable.
Worklet variables: You can use predefined worklet variables in a parent workflow, but you cannot use workflow variables from the parent workflow in a worklet.
Session parameters:$PMSessionLogFile and $ParamName are user-defined session parameters;
Session parameters do not have default values. If the Integration Service cannot find a value for a session parameter, it may fail the session, take an empty string as the default value, or fail to expand the parameter at run time.
Mapping parameters: $$ParameterName is a user-defined mapping parameter
Mapping variables: $$VariableName is a mapping variable.The Integration Service saves the value of a mapping variable to the repository at the end of each successful session run and uses that value the next time you run the session.
2,The Integration Service looks for the start value of a variable in the following order:
1. Value in parameter file
2. Value saved in the repository (if the variable is persistent)
3. User-specified default value
4. Datatype default value
3,You can update the following types of parameters and variables before or after a session runs:
Pre-session variable assignment
Post-session on success variable assignment
Post-session on failure variable assignment
4,Rules and Guidelines for Using Worklet Variables
Use the following rules and guidelines when you work with worklet variables:
¨ You cannot use parent workflow variables in the worklet.
¨ You can assign the value of a workflow variable to a worklet variable to initialize it.
¨ You cannot use user-defined worklet variables in the parent workflow.
¨ You can use predefined worklet variables in the parent workflow, just as you use predefined variables for other tasks in the workflow.
5,参数文件里面的内容,scope越小priority越高,即session部分高于workflow部分
If you define the same parameter or variable in multiple sections in the parameter file, the parameter or variable
with the smallest scope takes precedence over parameters or variables with larger scope. For example, a
parameter file contains the following sections:
[HET_TGTS.WF:wf_TGTS_ASC_ORDR]
$DBConnection_ora=Ora2
[HET_TGTS.WF:wf_TGTS_ASC_ORDR.ST:s_TGTS_ASC_ORDR]
$DBConnection_ora=Ora3
In session s_TGTS_ASC_ORDR, the value for session parameter $DBConnection_ora is “Ora3.” In all other
sessions in the workflow, it is “Ora2.”
6,选用哪个参数文件,则scope越大priority越高,即workflow参数文件高于session参数文件
When you define a workflow parameter file and a session parameter file for a session within the workflow, the
Integration Service uses the workflow parameter file, and ignores the session parameter file. To use a variable to
define the session parameter file name, you must define the session parameter file name and set
$PMMergeSessParamFile=TRUE in the workflow parameter file. The $PMMergeSessParamFile property causes
the Integration Service to read both the session and workflow parameter files.
If you use a variable as the session parameter file name, and you define the same parameter or variable in both
the session and workflow parameter files, the Integration Service sets parameter and variable values according to
the following rules:
¨ When a parameter or variable is defined in the same section of the workflow and session parameter files, the
Integration Service uses the value in the workflow parameter file.
¨ When a parameter or variable is defined in both the session section of the session parameter file and the
workflow section of the workflow parameter file, the Integration Service uses the value in the session parameter
file.
Functions to Set Mapping Variables
SetCountVariable -- Counts the number of evaluated rows and increments or decrements a mapping variable for each row