Reference of DAL
This section shows the DAL elements in alphabetic order from A-Z.
$ACCT
Description: Account Field From JOB Statement
Type: Character string Descriptor.
Maximum Length: 142 characters.
This Descriptor represents the account number from the JOB statement. This field has the same meaning as if $ACCTFLD(1,string) had been specified.
$ACCT(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-142 alphabetic, numeric, or national (#, @, $) characters. It can also include the hyphen (-) and the wildcard characters '?' and '*'. If pattern contains a blank, or any characters other than those previously listed, it must be enclosed in apostrophes.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to “Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
This compares the string A123 to the account field from the JOB statement:
This compares the account field from the JOB statement against the entries contained in the subtable ACCOUNTS from TABLE1.
See Also: $ACCTFLD.
Notes:
This Descriptor, along with the $ACCTFLD Descriptor, is a special case, in that the Language Processor does not know the actual length of the Descriptor. This results in an exception in the way comparisons are done.
The job accounting data provided in the JOB statement can be composed of an arbitrary number of fields each with an arbitrary length. The fields are delimited by commas. The total aggregate length is known (142 characters) by the Language Processor, but the length of each field is not known until DAL execution time. In this case, at DAL execution time, the shorter of the strings is extended on the right with blanks until it matches the length of the larger string.
For example, if $ACCT('ABC ') is coded in a DAL statement, and the character string in the account field in the JOB statement was 'ABC', then at the time DAL is executed, the account field from JOB statement would be extended by a blank on the right:
In this case, when the strings are compared, they are equal. The pattern matching function returns a value of TRUE.
Similarly, if $ACCT('ABC') is coded in a DAL statement, and the character string in the account field in the JOB statement was 'ABC ', then at the time DAL is executed, the string coded in the pattern matching function would be extended by a blank on the right, again resulting in a TRUE value.
$ACCTFLD | $ACCTF
Description: Accounting Related Fields
Type: Character string Descriptor.
Maximum Length: 142 characters.
This Descriptor represents an accounting related field from the JOB statement.
$ACCTFLD(field#,pattern) |
Indicates the field reference number of the accounting related field and must be specified as decimal digit(s) 1-68.
This is a hard-coded string. It can be 1-142 alphabetic, numeric, or national (#, @, $) characters. It can also include the hyphen (-) and the wildcard characters '?' and '*'. If pattern contains a blank, or any characters other than those previously listed, it must be enclosed in apostrophes.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to “Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
These compare the specified string with the fields from the JOB statement:
//JOBNAME JOB (12345,PAYROLL,'A/P DEPT'), ...
$ACCTF(1,$TABLE2(PAYROLL))
This compares the entries from the subtable PAYROLL of TABLE2 against the first accounting field from the JOB statement.
See Also: $ACCT.
Notes:
If you use this Descriptor with the character substring function the format is:
This Descriptor, along with the $ACCT Descriptor, is a special case, in that the Language Processor does not know the actual length of the Descriptor. This results in an exception in the way comparisons are done.
The job accounting data provided in the JOB statement can be composed of an arbitrary number of fields each with an arbitrary length. The fields are delimited by commas. The total aggregate length is known (142 characters) by the Language Processor, but the length of each field is not known until DAL execution time. In this case, at DAL execution time, the shorter of the strings is extended on the right with blanks until it matches the length of the larger string.
For example, if $ACCTFLD(1,'ABC ') is coded in a DAL statement, and the character string in the account field in the JOB statement was 'ABC', then at the time DAL is executed, the account field from JOB statement would be extended by a blank on the right:
In this case, when the strings are compared, they are equal. The pattern matching function returns a value of TRUE.
Similarly, if $ACCTFLD(1,'ABC') is coded in a DAL statement, and the character string in the account field in the JOB statement was 'ABC ', then at the time DAL is executed, the string coded in the pattern matching function would be extended by a blank on the right, again resulting in a TRUE value.
$ACF2_LIDUSER
Description: Extract Substring from ACF2 User Information
Type: Character string Descriptor.
Maximum Length: 192 characters.
This Descriptor allows you to extract a substring from the ACF2 user information.
STRINGDEF %stringid ($ACF2_LIDUSER,length[,start]) |
Is the identification name for the character string that is extracted. The first character must be % followed by 1 to 23 alphabetic, numeric, national (#, @, $), or underscore (_) characters. The name must be unique.
Is the number of characters to be extracted, from the range 1-192.
Is the starting position within the ACF2 user information at which extraction is to begin. If this parameter is omitted, the default is 1 (the first character).
Usage:
This Descriptor can be used only in STRINGDEF definition statements.
Examples:
In this example, the 8 bytes starting at byte 10 in the ACF2 user information are extracted and placed in the string variable %ACF2INFO.
See Also: $ACF2_LIDUSERX and STRINGDEF.
Notes:
This Descriptor contains data only in an ACF2 environment. In other environments, it returns blanks.
$ACF2_LIDUSERX
Description: Extract Substring from ACF2 User Information
Type: Character string Descriptor.
Maximum Length: 192 characters.
This Descriptor allows you to extract a substring from the ACF2 user information extension.
STRINGDEF %stringid ($ACF2_LIDUSER,length[,start]) |
Is the identification name for the character string that is extracted. The first character must be % followed by 1 to 23 alphabetic, numeric, national (#, @, $), or underscore (_) characters. The name must be unique.
Is the number of characters to be extracted, from the range 1-192.
Is the starting position within the ACF2 user information extension at which extraction is to begin. If this parameter is omitted, the default is 1 (the first character).
Usage:
This Descriptor can be used only in STRINGDEF definition statements.
Examples:
In this example, the 32 bytes starting at byte 4 in the ACF2 user information extension are extracted and placed in the string variable %ACF2XINFO.
See Also: $ACF2_LIDUSER and STRINGDEF.
Notes:
This Descriptor contains data only in an ACF2 environment. In other environments, it returns blanks.
$ACFLID
Description: ACF2 Logon ID
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor represents the 8 byte ACF2 logon ID.
$ACFLID(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to “Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$ACFLID(AB1234)
$ACFLID(JONES)
$ACFLID($TABLE3(*))
See Also: $ACFSID and $ACFUID.
Notes:
ACF2 data is only available if the optional ThruPut Manager ACF2 support is installed and activated on your system.
$ACFSID
Description: ACF2 Source ID
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor represents the 8 byte ACF2 source id.
$ACFSID(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters. It can also include the hyphen (-), the period (.), and the wildcard characters '?' and '*'. If pattern contains a blank, or any characters other than those previously listed, it must be enclosed in apostrophes.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to “Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$ACFSID(READER1)
$ACFSID($TABLE1(SOURCES))
See Also: $ACFLID and $ACFUID.
Notes:
ACF2 data is only available if the optional ThruPut Manager ACF2 support is installed and activated on your system.
$ACFUID
Description: ACF2 UID String
Type: Character string Descriptor.
Maximum Length: 24 characters.
This Descriptor represents the 24 byte ACF2 UID string.
$ACFUID(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-24 alphabetic, numeric, or national (#, @, $) characters. It can also include the hyphen (-), the period (.), and the wildcard characters '?' and '*'. If pattern contains a blank, or any characters other than those previously listed, it must be enclosed in apostrophes.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$ACFUID(OPERATIONS)
$ACFUID('CICS TEST #4')
$ACFUID($TABLE3(OPS))
See Also: $ACFLID and $ACFSID.
Notes:
ACF2 data is only available if the optional ThruPut Manager ACF2 support is installed and activated on your system.
$ADDRSPC
Description: Type of Storage Request
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to check the type of storage that the job has requested. The type of storage is set with the ADDRSPC or REGION keyword of the JOB statement or with the SET REGION Action statement.
$ADDRSPC(REAL | VIRT) |
Returns a TRUE value if central (real) storage was requested.
Returns a TRUE value if virtual storage was requested.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
$BLANK
Description: Test for blanks in a field.
Type: Reserved Word.
Maximum Value: Not applicable.
This reserved word is used as a pattern to see if a character Descriptor is all blanks.
$Descriptor($BLANK) |
A character string Descriptor.
The name of a character string created with the STRINGDEF statement.
Usage:
The $BLANK reserved word is designed to test for string character Descriptors that are "blank".
Examples:
The Property FIELD3_BLANK has a value of TRUE if the third account field was not specified or is all blanks.
$BYTES
Description: Estimated Output Bytes
Type: Range Definition Descriptor.
Maximum Value: 99999 expressed in 1000's of bytes.
This Descriptor represents the estimated number of output bytes.
$BYTES [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired. Starting points are specified in thousands of bytes as 1-5 decimal digits.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $CARDS, $LINES, and $PAGES.
Notes:
This Descriptor represents cards as well as printed output.
$CARDS
Description: Estimated Output Cards
Type: Range Definition Descriptor.
Maximum Value: 9999999 expressed in number of cards.
This Descriptor represents the estimated number of output cards.
$CARDS [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified in number of cards as 1-7 decimal digits.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $BYTES, $LINES, and $PAGES.
$CA7
Description: CA7 Submitted Job
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the job was submitted by the CA7 job scheduler.
$CA7(NO | YES) |
This job was not submitted by the CA7 job scheduler.
Indicates that this job was submitted by the CA7 job scheduler.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
Examples:
IF ($CA7(YES))
WTCA7 ...
ELSE
WTU ...
ENDIF
$CA7_DUEOUT_DATE
Description: CA7 Due Out Date
Type: Display Variable.
Maximum Length: 8 characters.
This Display Variable allows you to display in a message, in Julian format, the year and date that the job is due out.
$CA7_DUEOUT_DATE |
Is a valid insert in a MSGDEF statement.
Usage:
This Variable can be used only as an insert in message definition statements.
See Also: $CA7 and $CA7_DUEOUT_TIME.
Notes:
If the job was not submitted by CA7, this Descriptor returns zeroes.
$CA7_DUEOUT_TIME
Description: CA7 Due Out Time
Type: Display Variable.
Maximum Length: 5 characters.
This Display Variable allows you to display in a message, in the format hh:mm, the time that the job is due out.
$CA7_DUEOUT_TIME |
Is a valid insert in a MSGDEF statement.
Usage:
This Variable can be used only as an insert in message definition statements.
See Also: $CA7 and $CA7_DUEOUT_DATE.
Notes:
If the job was not submitted by CA7, this Descriptor returns zeroes.
$CA7_ENTRY
Description: CA7 Entry Method
Type: Character string Descriptor.
Maximum Length: 4 characters.
This Descriptor allows you to determine the method used to bring the job into the CA7 request queue.
$CA7_ENTRY(method) |
Is one of the methods by which the job is brought into the CA7 request queue, such as RUN (for a job brought in by the RUN command) or EXTL (for a job submitted external to CA7). The method is matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a list of valid methods, see to the CA7 supplier-provided documentation.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
See Also: $CA7.
Notes:
If the job was not submitted by CA7, this Descriptor returns blanks.
$CA7_INSTANCE_ALIAS
Description: CA7 Tracking Instance Alias
Type: Character string Descriptor.
Maximum Length: 4 characters.
This Descriptor allows you to determine the alias of the CA7 tracking instance that submitted the job.
$CA7_INSTANCE_ALIAS(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-4 alphabetic, numeric, or national (#, @, $) characters. It can also include the hyphen (-) and the wildcard characters '?' and '*'. If pattern contains a blank, or any characters other than those previously listed, it must be enclosed in apostrophes.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and JAL Logic statements. This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
• In JLS_LIMITDEF and JLS_CNTLDEF statements.
Examples:
$CA7_INSTANCE_ALIAS(PROD)
$CA7_INSTANCE_ALIAS(PTABLE(NAMES))
See Also: $CA7 and $CA7_INSTANCE_ID.
Notes:
If the job was not submitted by CA7, this Descriptor returns blanks.
If the CA7 tracking instance has no alias, this Descriptor returns the CA7 instance ID.
$CA7_INSTANCE_ID
Description: CA7 Tracking Instance ID
Type: Character string Descriptor.
Maximum Length: 4 characters.
This Descriptor allows you to determine the ID of the CA7 tracking instance that submitted the job.
$CA7_INSTANCE_ID(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-4 alphabetic, numeric, or national (#, @, $) characters. It can also include the hyphen (-) and the wildcard characters '?' and '*'. If pattern contains a blank, or any characters other than those previously listed, it must be enclosed in apostrophes.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and JAL Logic statements. This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
• In JLS_LIMITDEF and JLS_CNTLDEF statements.
Examples:
$CA7_INSTANCE_ID(CA73)
$CA7_INSTANCE_ALIAS(PTABLE(CA7IDS))
See Also: $CA7 and $CA7_INSTANCE_ALIAS.
Notes:
If the job was not submitted by CA7, this Descriptor returns blanks.
$CA7_JCLID
Description: CA7 JCL ID
Type: Display Variable.
Maximum Length: 3 characters.
This Display Variable allows you to display in a message the CA7 job ID.
$CA7_JCLID |
Is a valid insert in a MSGDEF statement.
Usage:
This Variable can be used only as an insert in message definition statements.
See Also: $CA7, $CA7_JOB# and $CA7_SCHID.
Notes:
If the job was not submitted by CA7, this Descriptor returns zeroes.
$CA7_JOB#
Description: CA7 Job Number
Type: Display Variable.
Maximum Length: 4 characters.
This Display Variable allows you to display in a message the CA7 job number.
$CA7_JOB# |
Is a valid insert in a MSGDEF statement.
Usage:
This Variable can be used only as an insert in message definition statements.
See Also: $CA7_JCLID and $CA7_SCHID.
Notes:
If the job was not submitted by CA7, this Descriptor returns zeroes.
$CA7_SCHID
Description: CA7 Schedule ID
Type: Display Variable.
Maximum Length: 3 characters.
This Display Variable allows you to display in a message the CA7 schedule ID.
$CA7_SCHID |
Is a valid insert in a MSGDEF statement.
Usage:
This Variable can be used only as an insert in message definition statements.
See Also: $CA7_JCLID and $CA7_JOB#.
Notes:
If the job was not submitted by CA7, this Descriptor returns zeroes.
$CHANGED
Description: Check for Environment Changes
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Descriptor allows you to check for changes in the ThruPut Manager environment, such as refreshed DAL or newly disabled/enabled tables.
$CHANGED name (DAL JSS_TABLE | TABLES) |
Specifies the Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
Returns a value of TRUE if this is the first invocation for this type of DAL after a /DAL REFRESH operator command, or after ThruPut Manager has been started.
Returns a value of TRUE if this is the first invocation of this type of DAL after a /TBL DISABLE,
/TBL ENABLE, or /TBL REFRESH operator command has been issued for the JSS table, or after ThruPut Manager has been started.
Returns a value of TRUE if this is the first invocation of this type of DAL after a /TBL DISABLE, /TBL ENABLE, or /TBL REFRESH operator command, or after ThruPut Manager has been started.
Examples:
PROCEDURE ID(DAL) TYPE(DCS)
...
$CHANGED FIRST_TIME (DAL)
This statement evaluates to TRUE the first time DCS DAL is invoked after ThruPut Manager starts, or after a /DAL REFRESH DCS operator command is issued, but is FALSE for other types of DAL and subsequent invocations of DCS DAL, even within the same job.
Notes:
This Descriptor evaluates to TRUE for the first and only the first invocation of each type of DAL after a change, regardless of the job in which this occurs. The DAL types are TM, DCS, and SOS.
This Descriptor is set to FALSE if you check for changes to tables that have never been loaded.
CHARSET
Description: Define character set
Type: Definition statement.
Maximum Value: 255 characters.
This statement allows you to define sets of characters that can be used with the PATTERNDEFX Definition statement.
CHARSET %setid (‘chars’) |
Is 1-255 characters (enclosed in single quotes) that will result in a TRUE value when a character in a Descriptor is tested using a PATTERNDEFX statement. Because the string is enclosed in quotes, the set can include a blank character.
Is the identification name for the character set that is created with this statement. The first character must be %, followed by 1 to 23 alphabetic, numeric, national (#, @, $), or underscore (_) characters. The name must be unique.
Usage:
A CHARSET definition can be used only in a PATTERNDEFX statement. Each occurrence of the CHARSET name in the PATTERNDEFX statement is compared against one character in the target Descriptor.
Examples:
Assume you want to test for odd digits. The definition would be:
You could then test for a four digit odd number, for example:
CHARSET %ODD (‘13579’)
PATTERNDEFX %TEST_ODD_NUM (###,%ODD)
See Also: PATTERNDEFX.
$CONCAT
Description: Concatenation Indicator
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine if the data set being processed is associated with a concatenation group of DD statements. Note that the first DD statement of the concatenation returns a TRUE value. If you want to know if it is the first, you can test the range Descriptor $CONCAT# for a value of 0.
$CONCAT(NO | YES) |
When this subparameter is coded, $CONCAT is TRUE for data sets that are not concatenated.
When this subparameter is coded, $CONCAT is TRUE for data sets that are concatenated.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
See Also: $CONCAT#.
$CONCAT#
Description: Concatenation Number for DD
Type: Range Definition Descriptor.
Maximum Value: 99999 concatenated DD statements.
This Descriptor allows you to determine the concatenation number for the DD/data set being processed. The first DD statement of a group of concatenated DD statements has a value of 0.
$CONCAT# [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
See Also: $CONCAT.
Notes:
A DD statement that is not part of a concatenation returns a value of zero. This is the same value as the first statement in a concatenation group of DD statements. To determine whether or not a DD statement is part of a concatenation, use the logic variable $CONCAT.
$CONTROL_M
Description: CONTROL-M Submitted Job
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the job was submitted by the Control-M job scheduler.
$CONTROL_M(YES | NO) |
This function returns a TRUE/FALSE value depending on whether or not the job was submitted by the Control-M job scheduler.
Returns a value of TRUE if this job was submitted by the Control-M job scheduler, otherwise it returns a FALSE value.
Returns a value of TRUE if this job was not submitted by the Control-M job scheduler, otherwise it returns a FALSE value.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
Examples:
IF ($CONTROL_M(YES))
ELSE
WTU ...
ENDIF
$CONVERTER_ERROR
JBS ONLY |
Description: Detect Converter Error
Type: Logic Variable.
Maximum Value: Not applicable.
This descriptor allows you to determine whether the job was failed because of an error in the converter.
$CONVERTER_ERROR(NO | YES) |
This job did not encounter errors during JCL conversion.
Indicates that this job was failed because of an error during JCL conversion.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
Examples:
IF ($CONVERTER_ERROR(YES))
WTU CONVERT_ERR_MSG
...
Notes:
This Descriptor is only useful in cases where asymmetric nodes exist, and jobs submitted on one node fail during conversion although they do not fail on the node at which they will actually run. By testing for a converter error and inserting an appropriate JBS XMIT agent, you can allow the job to remain in the system and ultimately be transmitted to the target node.
$CURCLASS | $CRCL
Description: Current Class
Type: Character string Descriptor.
Maximum Length: 1 character.
This Descriptor represents the class in which the ThruPut Manager Job Analyzer is currently processing the job (the Job Analysis Class or a Deferred Job Analysis Class).
$CURCLASS(class | *) |
A hard-coded single character from A-Z or 0-9.
Job Analysis Class.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$CURCLASS(Z)
$CRCL(9)
See Also: $INCLASS.
Notes:
This is not the Job Submission class.
The use of * allows you to be independent of the specific Job Analysis class. You can alter it without having to change DAL.
$CURMSGCLASS
Description: Current Message Class
Type: Character string Descriptor.
Maximum Length: 1 character.
This Descriptor represents the current message class. This could differ from the message class at job submission, since an SOS SET MSGCLASS statement could have been executed (in JAL) during a previous analysis.
$CURMSGCLASS(class) |
A hard-coded single character from A-Z or 0-9.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
Examples:
See Also: $INMSGCLASS.
$CURPRIO | $CRPR
Description: Current Priority
Type: Character string Descriptor.
Maximum Length: 6 characters.
This Descriptor represents the execution queue priority that the job had at the time it was selected by the Job Analyzer for analysis.
$CURPRIO(priority-value) |
A value to be tested for equal. It must in the range of 0 to 15.
The low end of a range to be tested. It must be in the range 0 to 14.
Is the high end of a range of priorities. It must be in the range 1 to 15, and must be higher than low. The value in $CURPRIO must be greater than or equal to low but less than high in order for this Descriptor function to evaluate to TRUE.
If you want to include jobs with priority 15 use MAX instead of high.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
Examples:
This function returns a TRUE value only for jobs with a current priority of 9.
This returns a TRUE value for all jobs with a priority in the range 5 to 14, because the value tested must be less than 15. Note that to specify a range that includes priority 15, you must use the MAX parameter:
See Also: $INPRIO.
Notes:
This is not the Job Submission priority.
$CURRENT_DAY_OF_MONTH
Description: Current Day of the Month
Type: Range Definition Descriptor.
Maximum Value: 31
This Descriptor provides a number representing the current day of the month.
$CURRENT_DAY_OF_MONTH [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $CURRENT_DAY_OF_WEEK, $CURRENT_DAY_OF_YEAR, $CURRENT_MONTH, $CURRENT_TIME_OF_DAY, and $CURRENT_YEAR.
$CURRENT_DAY_OF_WEEK
Description: Current Day of the Week
Type: Range Definition Descriptor.
Maximum Value: 7
This Descriptor provides a number representing the current day of the week, with Monday returning a value of 1 and Sunday returning a value of 7.
$CURRENT_DAY_OF_WEEK [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $CURRENT_DAY_OF_MONTH, $CURRENT_DAY_OF_YEAR, $CURRENT_MONTH, $CURRENT_TIME_OF_DAY, and $CURRENT_YEAR.
$CURRENT_DAY_OF_YEAR
Description: Current Day of the Year
Type: Range Definition Descriptor.
Maximum Value: 366
This Descriptor provides a number representing the current day of the year, counting from January 1 as day 1. This is the ddd portion of the Julian date (yyyyddd).
$CURRENT_DAY_OF_YEAR [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $CURRENT_DAY_OF_MONTH, $CURRENT_DAY_OF_WEEK, $CURRENT_MONTH, $CURRENT_TIME_OF_DAY, and $CURRENT_YEAR.
$CURRENT_MONTH
Description: Current Month
Type: Range Definition Descriptor.
Maximum Value: 12
This Descriptor provides a number representing the current month, with January returning a value of 1 and December returning a value of 12.
$CURRENT_MONTH [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $CURRENT_DAY_OF_MONTH, $CURRENT_DAY_OF_WEEK, $CURRENT_DAY_OF_YEAR, $CURRENT_TIME_OF_DAY, and $CURRENT_YEAR.
$CURRENT_TIME_OF_DAY
Description: Current Time of Day
Type: Range Definition Descriptor.
Maximum Value: 23:59
This Descriptor provides the current time of day in the format hh:mm, using the 24-hour clock.
$CURRENT_TIME_OF_DAY [00:00,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 00:00, but can be omitted if desired.
Starting points are specified in hours and minutes on a 24-hour clock, with 00:00 representing midnight.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $CURRENT_DAY_OF_MONTH, $CURRENT_DAY_OF_WEEK, $CURRENT_DAY_OF_YEAR, $CURRENT_MONTH, and $CURRENT_YEAR.
$CURRENT_YEAR
Description: Current Year
Type: Range Definition Descriptor.
Maximum Value: 9999
This Descriptor provides a number representing the current year, including the century designation. The format is ccyy, for example 2005.
$CURRENT_YEAR [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $CURRENT_DAY_OF_MONTH, $CURRENT_DAY_OF_WEEK, $CURRENT_DAY_OF_YEAR, $CURRENT_TIME_OF_DAY, and $CURRENT_MONTH.
$DAL_DESCRIPTION
Description: Display DAL Description
Type: Display Variable.
Maximum Length: 24 characters.
This Display Variable allows you to display in a message the DAL description from the PROCEDURE statement.
$DAL_DESCRIPTION |
Is a valid insert in a MSGDEF statement.
Usage:
This Variable can be used only as an insert in message definition statements.
See Also: PROCEDURE and $DAL_TEXT_DSNAME.
$DALNODE
Description: Name of Node on which DAL Is Executing
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor allows you to determine the name of the JES2 node where the DAL is executing.
$DALNODE(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters, the first of which must be alphabetic or national. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
See Also: $DALSYS.
$DALSYS
Description: JES2 System ID Where DAL Is Executing
Type: Character string Descriptor.
Maximum Length: 4 characters.
This Descriptor represents the JES2 system id of the system where DAL is executing.
$DALSYS(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-4 alphabetic, numeric, or national (#, @, $) characters. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
See Also: $DALNODE and $INSYSAFF.
$DAL_TEXT_DSNAME
Description: Display a data set name of currently running DAL
Type: Display Variable.
Maximum Length: 54 characters.
This Display Variable allows you to display in a message the data set name of currently running DAL.
$DAL_TEXT_DSNAME |
Is a valid insert in a MSGDEF statement.
Usage:
This Variable can be used only as an insert in message definition statements.
See Also: $DAL_DESCRIPTION
$DATASET_ALIAS
Description: Alias of data set Name
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine if the name of the data set currently being processed is actually an alias.
$DATASET_ALIAS(NO | YES) |
Returns a value of TRUE when the data set name is not an alias.
Returns a value of TRUE when the data set name is an alias.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
$DATASET_CATALOGED
Description: Catalog Status of data set
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine if the data set currently being processed is cataloged.
$DATASET_CATALOGED(NO | YES) |
Returns a value of TRUE when the data set is not cataloged.
Returns a value of TRUE when the data set is cataloged.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
Notes:
If both UNIT and VOL=SER are coded for the data set, the catalog is not checked. The value returned by this Descriptor therefore assumes that the data set is not cataloged.
$DATASET_GDG
Description: Generation Data Group Dataset
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine if the data set currently being processed is part of a generation data group regardless of whether or not the data set was specified as relative or absolute.
$DATASET_GDG(NO | YES) |
Returns a value of TRUE when the data set is not part of a GDG.
Returns a value of TRUE when the data set is part of a GDG.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
See Also: $DATASET_GDGTYPE.
$DATASET_GDGALL
Description: Generation Data Group data set (All)
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine if the data set currently being processed is part of a generation data group and specifies all generations (i.e. does not specify a relative generation number).
$DATASET_GDGALL(NO | YES) |
Returns a value of TRUE when the data set is not part of a GDG or does not specify all generations.
Returns a value of TRUE when the data set is part of a GDG and specifies all generations (omits a relative generation number).
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
See Also: $DATASET_GDG and $DATASET_GDGTYPE.
Notes:
TM DAL is invoked for all associated data sets when $DATASET_GDGALL(YES) is TRUE.
$DATASET_GDGTYPE
Description: DATASET GDG Type
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine how the GDG data set was specified in JCL.
$DATASET_GDGTYPE(ABSOLUTE | RELATIVE) |
Returns a value of TRUE if the data set was specified as an absolute GDG.
Returns a value of TRUE if the data set was specified as a relative GDG.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
See Also: $DATASET_GDG and $DATASET_GDGALL.
$DATASET_MIGRATED
Description: Dataset Migrated
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to test whether a data set has been migrated, and if so, where it has been migrated.
$DATASET_MIGRATED(DISK | NO | TAPE | YES) |
Returns a value of TRUE if the data set has been migrated to disk.
Returns a value of TRUE if the data set has not been migrated.
Returns a value of TRUE if the data set has been migrated to tape.
Returns a value of TRUE if the data set has been migrated to disk or tape.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
Notes:
This Descriptor is meaningless for a GDG base ($DATASET_GDGALL(YES) is TRUE) in DCS DAL.
$DATASET_ON
Description: Dataset on TAPE/DISK/VTS/VIO
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine if the data set currently being processed resides on tape or disk, or uses VTS or VIO.
$DATASET_ON(CART | DISK | HFS | REEL | TAPE | VIO | VTS) |
Returns TRUE if the data set resides on a cartridge, otherwise it returns FALSE.
Returns TRUE if the data set resides on disk, otherwise it returns FALSE.
Returns TRUE if the data set resides on HFS, otherwise returns FALSE.
Returns TRUE if the data set resides on a reel, otherwise it returns FALSE.
Returns TRUE if the data set resides on tape (cartridge or reel), otherwise it returns FALSE.
Returns TRUE if the data set is using VIO, otherwise it returns FALSE.
Returns TRUE if the data set is using Virtual Tape volumes, otherwise it returns FALSE.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
Example:
$DISP1 TAPE_DISP (SHR)
EVALUATE SHR_TAPE ($DATASET_ON(TAPE) & TAPE_DISP))
/* MAKE SURE WE DO NOT LOCK OUT THE ENTIRE GDG */
EVALUATE GDG_SAFE ($DATASET_GDG(NO) | $DATASET_GDGTYPE(ABSOLUTE))
EVALUATE OK_TO_ALTER (SHR_TAPE & GDG_SAFE)
...
IF (OK_TO_ALTER)
DCS ALTER DISP1(OLD)
...
Notes:
You should always test for the value you want to verify. That is, rather than assuming that the data set is DISK resident because a test for TAPE returned a FALSE value, you should specifically test for DISK.
$DATASET_ON(DISK) always returns TRUE for a data set that has been migrated. This is because the data set will be on DISK after a successful recall.
$DATASET_SEQ#
Description: File Sequence Number
Type: Range Definition Descriptor.
Maximum Value: 9999
This Descriptor allows you to determine the file sequence number for the data set associated with the DD being processed.
$DATASET_SEQ# [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified as 1-4 decimal digits.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
$DATASET_VOL#
Description: Number of Volumes for the data set.
Type: Range Definition Descriptor.
Maximum Value: 255 volumes.
This Descriptor allows you to determine, for a multi-volume data set, the sequence number of the volume on which the file associated with the DD statement begins.
$DATASET_VOL# [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified as number of cartridges in 1-3 decimal digits.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
$DATASET_VSAM
Description: VSAM data set
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine if the data set currently being processed is a VSAM data set.
$DATASET_VSAM(NO | YES) |
Returns a value of TRUE when the data set is not a VSAM data set.
Returns a value of TRUE when the data set is a VSAM data set.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
DBS ASSIGN
Description: Assign Devices to an Installation Drive Pool
Type: Action statement.
Maximum Value: Not applicable.
This statement allows you to assign tape devices to a DBS Installation Drive Pool.
DBS ASSIGN INSTALLATION_POOL(poolname) |
This keyword indicates that the tape devices described on the current DD statement is to be assigned to a DBS Installation Drive Pool.
Identifies a DBS Installation Drive Pool that is defined in the ACTIVE Configuration.
Notes:
The DBS ASSIGN statement is the only way you can assign tape devices to Installation Drive Pools.
Installation Drive Pools are used to define pools of tape devices that your installation has grouped at some level other than their generic device type, such as those for which your installation has created esoteric unit names.
If the specified Installation Drive Pool is not defined in the ACTIVE Configuration, an error message is issued. After Job Analysis, the job is requeued in the Job Analysis class and held in the MHS_TM category.
If the DBS ASSIGN statement is encountered more than once in the same invocation of DAL, the last one encountered takes effect.
DBS RESERVE
Description: Specify Unit Counts for DBS
Type: Action statement.
Maximum Value: Not applicable.
This statement specifies the number of devices that a step will request through dynamic allocation.
DBS RESERVE poolname(dynamic#) |
Is one of the defined Drive Pools for your installation. See the Notes below for a description o f how you can obtain a list of the defined Drive Pools.
Is a number from 1-255, representing the highwater mark for dynamically allocated devices that the step will request.
Notes:
To obtain a list of the Device Pools in your installation's ACTIVE Configuration, see to the DBS Monitor Services display of Defined Pools.
If DBS RESERVE is executed more than once specifying the same Device Pool for the same step, the last one encountered takes effect.
Multiple DBS RESERVE statements specifying different Device Pools are cumulative regardless of the step.
The JAL unit counts for affected devices will be updated to include reserved devices.
$DCJECL
DCS ONLY |
Description: Detect DCS JECL Usage
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Descriptor lets you determine whether or not a particular DCS control statement is present in the job input-stream.
$DCJECL name (JECL-statement-type | ANY) |
Specifies the Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
A list of DCS JECL statements to be detected. The Property returns a value of TRUE if a match occurs for any element in the list. The possible values are:
ALERT
NAG
REPO
This subparameter is a short form for a list including all the possible values. It is mutually exclusive with the subparameters listed above.
Usage:
This Descriptor can be used only in the Definition Section of DAL.
Example:
$DCJECL REPO_USER (REPO)
...
IF (REPO_USER)
WTU ...
DCS ALTER
DCS ONLY |
Description: Alter Status(SHR/OLD) Disposition
Type: Action statement.
Maximum Value: Not applicable.
This action statement allows you to alter the SHR/OLD status first parameter of the DISP keyword for the DD currently being processed. If more than one DCS ALTER is encountered for an invocation of DAL, the last one takes effect.
Note: If NEW or MOD is specified a request to ALTER the disposition is invalid. The request is ignored and a warning message is issued.
DCS ALTER DISP1(SHR | OLD) |
Requests that the first parameter for the DISP keyword be set to SHR for the DD statement being processed.
Requests that the first parameter for the DISP keyword be set to OLD for the DD statement being processed.
Usage:
This action statement can be used only in the Logic Section of DAL.
Example:
IF ($DSNAME(SYS1.PROCLIB))
DCS ALTER DISP1(SHR)
...
See Also: $DISP1.
Notes:
This action statement operates only on the DD statement being processed. If you want to change the disposition for all the occurrences of a data set in a job, you must do it for each DD statement.
The effect of altering the disposition is exactly the same as if you coded the new disposition in JCL.
Altering the disposition of a GDG data set to OLD results in serialization of all jobs requesting the GDG. For an alternate approach, you can use DCS data set Reservation. see to the DCS SET statement in the JAL-Reference-Guide and the section "Altering data set Disposition" in the System Programming Guide: TM/DCS Component.
DCS NAG
DCS ONLY |
Description: NAG Dataset Holder
Type: Communication statement.
Maximum Value: Not applicable.
This communication statement allows you to issue a customized "nagging" message to TSO users holding a data set that is causing conflicts.
You can code multiple DCS NAG statements per data set. This allows you to issue different "nagging" messages to different holders. It also allows the suppression of "nagging" to particular holders.
DCS NAG dcnagdef-name [USERID(pattern[,...,pattern]) |
The name of a DCS_NAGDEF statement that describes the text of the "nagging" message.
You can use this keyword if you do not want to change the default "nagging" text.
This mandatory keyword indicates that the "nagging" is only applicable to TSO users that match the userid pattern specified.
A 1- 7 character matching pattern for a TSO userid. It can be either a hard-coded string or a %patid.
Up to 5 patterns can be specified in one DCS NAG statement. The pattern matching rules are as follows:
• If a list of patterns is provided the matching analysis always proceeds from left to right.
• If more than one DCS NAG request is present for the same data set, the matching analysis handles the requests in the same order in which they were made.
• The first specific user id match is honored. That is, if any of the specified patterns represents a complete user id (7 characters), an attempt is made to match it with the TSO user holding the data set. As soon as a specific user id match occurs the search is stopped. This process includes all the elements in a list for a DCS NAG request and all the DCS NAG requests for the same data set.
• If there is no specific match, then a pattern match is attempted. As soon as a match occurs the search is stopped.
If you want the customized nagging to apply to all TSO users causing contention, code USERID(*).
This optional keyword indicates that you want to specify the number of nagging times and/or the frequency of the nagging.
If this keyword is omitted, the default values are used.
A numeric value from 1 to 99 that indicates the number of times DCS is to nag the data set holder.
If this value is not specified the default value is used. You can specify an installation value in the DCS statement DCS SET. The built-in value is 3 times.
A numeric value from 1 to 99, expressed in minutes, that represents the interval between "nagging" messages.
If this value is not specified the default value is used. You can specify an installation value in the DCS statement DCS SET. The built-in value is 5 minutes.
This keyword indicates that "nagging" is to be suppressed for TSO users that match the patterns specified.
You can suppress all "nagging" by coding:
Usage:
This communication statement can be used only in the Logic Section of DAL.
Example:
See Also: $DCJECL and DCS_NAGDEF.
Notes:
Requests to "nag" from JECL take precedence over DAL.
Requests to "nag" from DAL take precedence over JAL.
DCS_NAGDEF
DCS ONLY |
Description: Define NAG Text
Type: Definition Statement.
Maximum Value: Not applicable.
This statement allows you to customize the second line of a message that is to be generated to a holder, or holders, of a data set in contention status.
DCS_NAGDEF nagdef-name (‘nag-text’) |
A name identifier used in the DCS NAG action statement. It consists of 1-24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. The first character must be alphabetic or national. Note that the first character cannot be a dollar sign ($) or underscore (_). This operand is positional and required. This symbol must be unique.
The text to be printed as the second line of a NAG to TSO data set holders. The maximum length is 120 characters. The text can consist of a combination of
– Hard-coded characters enclosed in apostrophes
– Character type Descriptors to be substituted for the values when the NAG is generated
– STRINGDEF Definition Statements
Usage:
This statement can be used only in the DAL Definition Section.
Example:
DCS_NAGDEF PROC_NAG ('YOU ARE HOLDING PROCLIB-JOB ',$JOBNAME,' NEEDS IT')
STRINGDEF %NAME1 ($PGMR,5)
DCS_NAGDEF NAG ('APPLICATION ID ',%NAME1)
See Also: $DCJECL, DCS NAG and STRINGDEF.
Notes:
The following Descriptors are allowed as part of the text:
• $ACCT
• $ACCTFLD
• $ACFLID
• $ACFSID
• $ACFUID
• $DALNODE
• $DALSYS
• $DISPLAY_name
• $INDEVICE
• $INNODE
• $INRMT
• $INSYSAFF
• $INSYSID
• $JOBNAME
• $JOBID
• $JOBNUMBER
• $NJEUSER
• $NOTIFY
• $PGMR
• $RACFG
• $RACFU
• $READER_DATE
• $READER_TIME
• $ROOM
• $SUBMITTER_RACFG
• $SUBMITTER_RACFU
• $SUBMITTER_TSSU
• $TSSUSER
• $USERCnn
DCS REPO
DCS ONLY |
Description: Request Dataset Repossessing
Type: Action statement.
Maximum Value: Not applicable.
This action statement allows you to request repossessing data sets from TSO users. You can specify the TSO user, or users, to repossess from. You can also request that a particular user, or users, be excluded from any repossessing. A DCS REPO statement will not take effect for GDG data sets.
DCS REPO USERID (pattern[,...,pattern]) [INPUT | EXCLUDE] |
This is a mandatory keyword. It specifies which TSO users are to be affected by the repossessing statement.
A 1- 7 character matching pattern for a TSO userid. It can be either a hard-coded string or a %patid.
Up to 5 patterns can be specified in one DCS REPO statement.
The pattern matching rules are as follows:
• If a list of patterns is provided the matching analysis always proceeds from left to right.
• If more than one DCS REPO request is present for the same data set, the matching analysis handles the requests in the same order as they were made.
• The first specific user id match is honored. That is, if any of the specified patterns represents a complete user id (7 characters), an attempt is made to match it with the TSO user holding the data set. A soon as a specific user id match occurs the search is stopped. This process includes all the elements in a list for a DCS REPO request and all the DCS REPO requests for the same data set.
• If there is no specific match, then a pattern match is attempted. As soon as a match occurs the search is stopped.
Indicates that data sets opened for input are to be repossessed. If this keyword is not coded, only data sets that are not opened are repossessed.
This keyword is mutually exclusive with EXCLUDE.
Indicates that the specified TSO user ids are to be excluded from any data set repossessing.
This keyword is mutually exclusive with INPUT.
Usage:
This action statement can be used only in the Logic Section of DAL.
Example:
In this example repossessing for data sets opened for input can take place for TSO users with ids starting with AP8 and AP9.
See Also: $DCJECL and DCS SERVICE.
Notes:
For this statement to take effect, you must have coded CLAIM(R) as the last element of the DCS SERVICE request.
DCS SERVICE
DCS ONLY |
Description: Request Dataset Service
Type: Action statement.
Maximum Value: Not applicable.
This action statement allows you to define the data set contention service level for the data set being processed.
If more than one statement is encountered for an execution of DAL, the last one determines the service level.
Since service level requests can also be made with JECL statements from the job stream, precedence rules are required. They are as follows:
• ‘/*DCS SERVICE' JECL statement for data set, if present.
• ‘/*DCS SERVICE' JECL statement for job, if present.
• DAL request, if made.
• JAL request, if made.
• Installation default, if set (DCS SET initialization statement).
• DCS system default. It is 'STANDBY'.
DCS SERVICE (serv-level(interval),...,serv-level(interval),serv-level) |
The name of a data set service level. It can be one of the following:
You can include a list of up to 7 service level terms. Each one of them, with the exception of the last one in the list, must include a time interval.
DCS will attempt to service the data set (or data sets) using the first service level coded. Once the interval for that service level has expired, the service level is altered to reflect the value of the next element in the list. When the last element of the list is reached, DCS will remain at this service level until the request is honored.
The last element of the list cannot have an interval time coded since DCS will maintain that service level until the data set becomes available.
If you want to request data set repossessing you must code CLAIM(R) as the last element in the list. This represents a request to DCS to repossess data sets from TSO users that have the data set allocated but not in use (opened).
If you also want repossessing of data sets that are opened for input you must code a DCS REPO statement in addition to CLAIM(R) in the SERVICE statement.
Repossession will not take effect for GDG data sets.
For an explanation about data set service and repossessing see to the System Programming Guide: TM/DCS Component.
A time interval from 1 to 999 minutes. It specifies the time that DCS is to keep a particular service level.
The last element in the service list cannot have an time interval coded.
Usage:
This action statement can be used only in the Logic Section of DAL.
Example:
In this example the initial service requested is STANDBY. If a contention situation occurs and has not been satisfied in 35 minutes, the service is upgraded to CLAIM.
In this example, for the first 30 minutes the default service level is used. After 30 minutes the service is upgraded to CLAIM with the repossessing attribute.
See Also: $DCJECL and DCS REPO.
Notes:
If several requests are made for the same data set in different invocations of DAL, DCS uses the one requesting the highest initial service level.
This is not to be confused with making several DCS SERVICE requests during the same invocation of DAL. In this case, the last one takes effect.
$DDNAME
Description: DD Statement Name
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor allows you to determine the DD name for the DD statement currently being processed by DAL.
$DDNAME(pattern | %patid | table-id) |
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Example:
See Also: $CONCAT#.
Notes: For a concatenated DD statement, the DD name is the name of the first DD statement in the concatenation. You can determine whether or not it is the actual DD name by testing the Descriptor $CONCAT#.
$DDTYPE
Description: Determine Type of DD Statement
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Unique Descriptor lets you determine the type of DD statement that DAL is examining.
$DDTYPE name (ddtype) |
Specifies the Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
This operand is positional and required.
Represents the type of DD statement to check for, and can be one of:
Checks for a data set, either permanent or temporary.
Checks for a DD DUMMY statement.
Checks for an HFS data set.
Checks for a DD * instream data set.
Checks for a permanent data set.
Checks for a data set of telecommunications access method (TCAM) messages.
Checks for a data set that requests a subsystem.
Checks for a SYSOUT data set. This subparameter is not permitted in SOS DAL, since the only possible value it can return is TRUE.
Checks for a temporary data set.
Usage:
This Unique Descriptor cannot be used with any other statement and can be used only in the Definition Section of DAL.
Examples:
$DISPLAY_name
Description: Display DAL and ThruPut Manager Information
Type: Display Variable.
Maximum Value: Not applicable.
This Display Variable allows you to insert certain DAL and ThruPut Manager related information into messages.
$DISPLAY_name |
Varies depending on the information desired. It can be one of:
Display the time the DAL was created, in the form ccyy.ddd (Julian).
Displays the time the DAL was created, in the form hh:mm:ss.
Displays the version of the Language Processor used to create the DAL, in the form Vv Rr.r. For example, V7 R1.0.
Displays the version of ThruPut Manager, in the form Vv Rr.r. For example, V7 R1.0.
Usage:
This Variable can be used only as an insert in message definition statements.
Examples:
$DISP1
Description: Status Disposition Specification
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Unique Descriptor allows you to determine the status (first) parameter of the DISP keyword for the DD statement currently being processed by DAL.
$DISP1 name (disp1,disp2,...) |
Specifies the Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
This operand is positional and required.
A list of valid first parameters for the DISP keyword for the DD being processed. It can contain any of the following:
MOD
NEW
OLD
SHR
The list is treated as an OR condition. That is, a match with any element in the list makes this function return a value of TRUE.
Usage:
This Unique Descriptor cannot be used with any other statement and can be used only in the Definition Section of DAL.
See Also: DCS ALTER, $DISP2, and $DISP3.
Notes:
Datasets with DISP of MOD are treated as NEW if there is not a corresponding entry in the catalog.
$DISP2
Description: Normal Termination Disposition Specification
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Unique Descriptor allows you to determine the normal termination (second) parameter of the DISP keyword for the DD statement currently being processed by DAL.
$DISP2 name (disp1,disp2,...) |
Specifies the Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
This operand is positional and required.
A list of valid first parameters for the DISP keyword for the DD being processed. It can contain any of the following:
DELETE
KEEP
PASS
CATLG
UNCATLG
The list is treated as an OR condition. That is, a match with any element in the list makes this function return a value of TRUE.
Usage:
This Unique Descriptor cannot be used with any other statement and can be used only in the Definition Section of DAL.
See Also: $DISP1 and $DISP3.
$DISP3
Description: Abnormal Termination Disposition Specification
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Unique Descriptor allows you to determine the abnormal termination (third) parameter of the DISP keyword for the DD statement currently being processed by DAL.
$DISP3 name (disp1,disp2,...) |
Specifies the Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
This operand is positional and required.
A list of valid first parameters for the DISP keyword for the DD being processed. It can contain any of the following:
DELETE
KEEP
CATLG
UNCATLG
The list is treated as an OR condition. That is, a match with any element in the list makes this function return a value of TRUE.
Usage:
This Unique Descriptor cannot be used with any other statement and can be used only in the Definition Section of DAL.
See Also: $DISP1 and $DISP2.
$DJC_CLOSE
DJC ONLY |
Description: DJC Group CLOSE Indicator
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the DJC GROUP JECL statement included the CLOSE keyword.
This function call returns a true/false value depending on whether or not there is a CLOSE keyword coded on the JECL statement DJC GROUP.
$DJC_CLOSE(YES | NO) |
Returns a TRUE value if the CLOSE keyword was coded on the DJC GROUP JECL statement.
Returns a TRUE value if the CLOSE keyword was not coded on the DJC GROUP JECL statement.
Usage:
This Variable can be used in DAL Logic statements, and also as an insert in message definition statements.
Examples:
IF ($DJC_CLOSE(YES))
...
$DJC_CLOSE_TIME
DJC ONLY |
Description: Number of Hours a DJC Group Remains Open
Type: Range Definition Descriptor.
Maximum Value: 99 expressed in hours.
This Descriptor represents the maximum number of hours a DJC Group remains open if no job or operator command requests that it be closed.
$DJC_CLOSE_TIME [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
Notes:
If there was no CLOSE_TIME keyword coded on the DJC GROUP JECL statement, the value returned is 0. The absence of a CLOSE_TIME keyword does not indicate that the DJC Group does not have an associated CLOSE_TIME period. The CLOSE_TIME period could have been specified on another job in the DJC Group.
$DJC_GROUP
DJC ONLY |
Description: Name of DJC Group for the Job
Type: Character string Descriptor.
Maximum Length: 17 characters.
This Descriptor allows you to determine the name of the DJC Group for the job. If the job does not include a DJC GROUP JECL statement, the $DJC_GROUP Descriptor returns blanks.
$DJC_GROUP(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters, the first of which must be alphabetic or national. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
• In JLS_LIMITDEF and JLS_CNTLDEF statements.
$DJC_HISTORY_COUNT
DJC ONLY |
Description: Number of Levels of DJC Group History
Type: Range Definition Descriptor.
Maximum Value: 9 expressed in levels.
This Descriptor represents the maximum number of levels of history retained for the history of a DJC Group.
$DJC_HISTORY_COUNT [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $DJC_HISTORY_DAYS.
Notes:
If there was no HISTORY_COUNT keyword coded on the DJC GROUP JECL statement, the value returned is 0. The absence of a HISTORY_COUNT keyword does not indicate that the DJC Group does not have an associated HISTORY_COUNT parameter. The HISTORY_COUNT keyword could have been specified on another job in the DJC Group, or it could be taken from the defaults specified by the DJC SET operator command.
DJC Group history is also limited by the HISTORY_DAYS keyword. A DJC Group history can therefore expire before HISTORY_COUNT is reached.
$DJC_HISTORY_DAYS
DJC ONLY |
Description: Number of Days to Keep DJC Group History
Type: Range Definition Descriptor.
Maximum Value: 365 expressed in days.
This Job Descriptor represents the maximum number of days the history of a DJC Group is retained.
$DJC_HISTORY_DAYS [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $DJC_HISTORY_COUNT.
Notes:
If there was no HISTORY_DAYS keyword coded on the DJC GROUP JECL statement, the value returned is 0. The absence of a HISTORY_DAYS keyword does not indicate that the DJC Group does not have an associated HISTORY_DAYS period. The HISTORY_DAYS period could have been specified on another job in the DJC Group, or it could be taken from the defaults specified by the DJC SET operator command.
DJC Group history is also limited by the HISTORY_COUNT keyword. A DJC Group history can therefore expire before HISTORY_DAYS is reached.
$DJC_HOLD
DJC ONLY |
Description: DJC Group HOLD Indicator
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the DJC GROUP JECL statement included the HOLD keyword.
$DJC_HOLD(YES | NO) |
This function call returns a true/false value depending on whether or not there is a HOLD keyword coded on the JECL statement DJC GROUP.
Returns a TRUE value if the HOLD keyword was coded on the DJC GROUP JECL statement.
Returns a TRUE value if the HOLD keyword was not coded on the DJC GROUP JECL statement.
Usage:
This Variable can be used in DAL Logic statements, and also as an insert in message definition statements.
Examples:
IF ($DJC_HOLD(YES))
...
$DSNAME
Description: Dataset Name
Type: Character string Descriptor.
Maximum Length: 44 characters.
This Descriptor allows you to determine the data set name for the DD currently being processed by DAL.
$DSNAME(pattern | %patid | table-id) |
This is a hard-coded valid data set name pattern to be matched against the data set name on the DD statement being processed.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Example:
EVALUATE Z_GROUP ($DSNAME(Z5900.**))
...
IF (Z_GROUP)
...
$DSNAME_QUALIFIER
Description: Insert Dataset Name Qualifier
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Descriptor allows you to insert a specific qualifier level of the data set name into a STRINGDEF statement.
$DSNAME_QUALIFIER(nn | LAST) |
Is a number from the range 1-21, indicating the qualifier level that is to be inserted.
Indicates that the last qualifier level is to be inserted.
Usage:
This Descriptor can be used only in STRINGDEF statements.
Examples:
STRINGDEF %LEVEL3 ($DSNAME_QUALIFIER(3))
STRINGDEF %LEVEL_LAST ($DSNAME_QUALIFIER(LAST))
In this example, if the data set name is PR03.PAYROLL.MONTHLY.UPDATE, then %LEVEL3 evaluates to MONTHLY and %LEVEL_LAST evaluates to UPDATE.
$DSNAME_REALNAME
Description: Real Dataset Name
Type: Character string Descriptor.
Maximum Length: 44 characters.
This Descriptor allows you to determine the real data set name of an alias coded on the DD currently being processed by DAL.
$DSNAME(pattern | %patid | table-id) |
This is a hard-coded valid data set name pattern to be matched against the alias name on the DD statement being processed.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Example:
EVALUATE REAL_NAME ($DSNAME_REALNAME(Z5900.**))
...
IF (REAL_NAME)
...
$DX_sos-descriptor
SOS ONLY |
Description: SOS DAL Display Variables
Type: Display Variable.
Maximum Length: Dependent on SOS Descriptor.
SOS DAL Display Variables allow you to display the execution time value of a character or range SOS Descriptor. These Display Variables therefore reflect the effect of any changes to the SOS Descriptor that you have made in your DAL.
$DX_sos-descriptor |
Can be any SOS character or range Descriptor, including the leading dollar sign ($). See to the tables accompanying the descriptions for $SOS Character and $SOS Range. The format and length of the Display Variable depends on the SOS Descriptor chosen.
The value displayed is either:
• The value of the SOS Descriptor as set by a previously executed SOS ALTER statement.
• If no SOS ALTER statement has been executed for the selected SOS Descriptor, the value at job submission time.
Usage:
SOS DAL Display Variables can be used only as inserts in message definition statements.
Examples:
MSGDEF DEST_ALTERED ('ORIGINAL DEST ',$SOS_DEST,' CHANGED TO ', +
$DX_$SOS_DEST,' BECAUSE OF CLASS=B')
See Also: SOS ALTER, $SOS Character, and $SOS Range.
ELSE
Description: Specify Alternative Action
Type: Logic statement.
The ELSE statement is part of an IF logical construction. It must follow an IF statement, and specifies the alternate action(s) taken when the expression evaluated with the IF statement has a FALSE value.
IF (expression) |
A logical expression combining Properties and/or Descriptors.
Any valid DAL statements which are to be performed should the IF expression evaluate to TRUE.
Any valid DAL statements which are to be performed should the IF expression evaluate to FALSE.
Examples:
IF(OKAY)
RETURN CONTINUE
ELSE
RETURN FAIL
ENDIF
See Also: IF, ORIF, OTHERWISE, and ENDIF.
Notes:
ELSE statements are paired with and follow IF statements. For every IF, there can be only one ELSE.
Logical constructions that include ORIF statements cannot include an ELSE statement. In that type of construction use an OTHERWISE statement.
$ENABLED
Description: Test Status of TM Installed Options
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Unique Descriptor allows you to determine whether any one of installed ThruPut Manager options is enabled or disabled.
$ENABLED name (DBS | DCS | DJC | JBS | JCS | JES3 | JLS | JSS | JTS | MELLON | |
This function call returns a true/false value depending on whether the specified option is enabled.
Specifies the Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. The first character must be alphabetic or national. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
Indicate existing ThruPut Manager options.
Examples:
EVALUATE JBS_DISABLED ($ENABLED(JBS))
...
IF (JBS_DISABLED)
WTO ERROR_MSG
ELSE
JBS ADD BIND
...
ENDIF
END
Description: Indicate End of DAL Statements
Type: Language Directive.
This statement indicates the end of DAL input. Its purpose is to guard against accidentally truncated DAL input.
END |
Notes:
Your DAL input must terminate with an END statement. If it does not, a warning message is generated.
Only one END statement is permitted.
ENDIF
Description: Terminate a Logical IF Construction
Type: Logic statement.
The ENDIF statement signals the end of an IF, an IF-ELSE, or an IF-ORIF-OTHERWISE construction. ENDIF serves to delimit a block of DAL that is associated with a previous IF statement. It also indicates where execution should resume after executing DAL as a result of a TRUE IF or ORIF expression.
IF(expression) |
A logical expression combining Properties and/or Descriptors.
DAL statements that are part of the IF construct. These can include other logical statements, action statements and communication statements.
Examples:
IF (NEW_DASD_DS)
SET $USERL1_TM(TRUE)
ELSE
SET $USERL1_TM(FALSE)
ENDIF
See Also: IF, ELSE, ORIF, and OTHERWISE.
Notes:
Each IF must have an ENDIF statement paired with it.
ENDIF statements are associated with IF statements only. In the case of ORIF statements, they are part of the IF logical construction and they do not require an ENDIF statement.
$ESTTIME
Description: Estimated Elapsed Execution Time
Type: Range Definition Descriptor.
Maximum Value: 9999 in minutes of real time.
This Descriptor represents the estimated amount of job execution time in real time (the value coded for the TIME= parameter on the /*JOBPARM JECL statement).
$ESTTIME [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified as minutes of real time in 1-4 decimal digits.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
Notes:
This Descriptor is not related to CPU time, it represents an estimate of job elapsed time.
EVALUATE | EVAL
Description: EVALUATE a Property
Type: Definition statement.
EVALUATE statements allow you to define and initialize a Property that is the result of an expression. This expression can have one or more Descriptors of the character string type and can also have previously defined Properties of any type. The defined Property can then be used in an expression on another EVALUATE statement and/or in an IF statement (also an ORIF statement).
EVALUATE name (expression) |
Is the name of the Property that contains the value of an expression. It is a required positional operand that can be 1-24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. The first character must be alphabetic or national but it cannot be a $.
An expression, consisting of Descriptors and/or Properties combined through the use of logical operators. For more information on expressions, see to "Section. Elements-of-action-languages Elements of Action Languages" in the DAL/JAL User Guide.
Examples:
This statement defines the Property Name NEW_DASD, which is TRUE for statements that allocate new data sets on DASD. DISP_NEW is a Property previously defined using the $DISP1 Unique Descriptor.
This statement defines the Property Name PRODUCTION_DS, which is TRUE for jobs with the characters PROD as the first four characters of 6, in the third field of the account field on the JOB statement, or those which have a room number of PROD.
EVALUATE PAYROLL_DS (PRODUCTION_DS & $PGMR(ACCOUNTING))
This statement uses the previously defined Property Name PRODUCTION_DS. The Property PAYROLL_DS is TRUE for production data sets (i.e. those for which the PRODUCTION_DS Property is TRUE) which have a programmer name of ACCOUNTING. This example shows how it can be useful to combine previously evaluated Property Names with additional Properties to help isolate or identify a subset of a large group of data sets that fall into the same category.
Notes:
Note: We strongly advise you to set up Properties with EVALUATE statements, as opposed to testing character Descriptors in your logic section.
$EXEMPT
Descriptor: Exempt Class Job
Type: Logic Variable.
Maximum Value: Not applicable.
This Descriptor allows you to determine if the job belongs to a class that is exempted from ThruPut Manager processing unless certain types of JECL statements are present.
$EXEMPT(NO | YES) |
This job is not exempted.
Indicates this job has been submitted in one of the exempted classes. It is being processed by ThruPut Manager because of JECL statements.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
Examples:
IF ($EXEMPT(YES))
WTU...
ENDIF
Notes:
If any ThruPut Manager JECL statements are encountered when processing the job, it is then selected for Job Analysis, even if it belongs to an exempt class. This Descriptor gives you the ability to decide whether to allow ThruPut Manager processing or fail the job.
$FIRST_VOLUME
Description: Volser of First Volume
Type: Character string Descriptor.
Maximum Length: 6 characters.
This Descriptor allows you to determine the volume serial number of the first volume for a data set.
$FIRST_VOLUME($BLANK | pattern | %patid | table-id) |
Allows you to test for an "all blanks" condition. See Notes below.
This is a hard-coded string. It can be 1-6 alphabetic, numeric, or national (#, @, $) characters. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to “Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$FIRST_VOLUME(SYS001)
$FIRST_VOLUME(ZZ*)
In this second example, the Descriptor returns a TRUE value if the first volume serial number begins with ZZ.
See Also: $BLANK.
Notes:
If the data set has not yet been created, this Descriptor returns blanks. You can test for this condition by using the reserved word $BLANK. Note that the absence of a volume serial number is not a reliable means of determining that the data set is NEW, since the seeence could be to a data set that will be created before this job runs.
GLOBAL DEFINE
Description: Define Global Logic Variable
Type: Definition statement.
Maximum Value: Not applicable.
This definition statement allows you to define logic variables that can be set by any DAL and then tested in subsequent DAL or JAL. Global Logic Variables must be defined before they can be used. Until a value is assigned by a GLOBAL SET statement, these variables have the value NOT_SET.
GLOBAL DEFINE (name1[,name2,...]) |
Is the name of a Global Logic Variable. It is a required positional operand that can be 1-24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. The first character must be alphabetic or national but it cannot be a $.
Usage:
Global Logic variables can be used only in EVALUATE statements and in the DAL action statement GLOBAL SET.
Examples:
GLOBAL DEFINE (PRODUCTION,DAILY)
...
IF ...
GLOBAL SET PRODUCTION(TRUE)
ELSE
GLOBAL SET PRODUCTION(FALSE)
ENDIF
Note that this example sets the Global Logic Variable for both TRUE and FALSE cases. That is because the initial value of the variable is NOT_SET, which allows you to test whether the variable has ever been set.
See Also: EVALUATE and GLOBAL SET.
Notes:
If you are defining a single Global Logic Variable, you can omit the parentheses.
GLOBAL SET
Description: Set Global Logic Variable
Type: Action statement.
This action statement assigns a value of TRUE or FALSE to a Global Logic Variable, which must be defined in the DAL that references it.
GLOBAL SET name(TRUE | FALSE) |
Is the name of a Global Logic Variable. It can be 1-24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. The first character must be alphabetic or national but it cannot be a $.
Assigns a TRUE value to the Global Logic Variable.
Assigns a FALSE value to the Global Logic Variable.
See Also: GLOBAL DEFINE.
Notes:
The following aliases can also be used to set values:
• ON and YES for TRUE.
• OFF and NO for FALSE.
IF
Description: Make a Decision
Type: Logic statement.
An IF statement evaluates an expression, allowing you to execute statements conditionally. It marks the beginning of a logical IF construction that allows several alternate courses of action. IF constructions must be terminated with a corresponding ENDIF statement. IF constructions can be of two types. One form is the IF-ELSE-ENDIF construction. The other form is the IF-ORIF-OTHERWISE-ENDIF construction.
IF statements can be nested up to a maximum of 10 levels.
IF (expression) |
A valid DAL expression enclosed in parenthesis. Expressions include character Descriptors, DD Properties and logical operators. The expression is evaluated, resulting in a TRUE/FALSE value that controls the flow of DAL logic.
For an explanation of DAL expressions and examples, see to the section "DAL and JAL Expressions" in "Section. Elements-of-action-languages Elements of Action Languages" in the DAL/JAL User Guide.
Specifies the action to be taken should the expression evaluate to FALSE.
Specifies an alternate IF statement. There can be more than one ORIF statement within an IF construction.
Specifies the action to be taken when the previous IF and all previous ORIF evaluate to FALSE.
A required statement which delimits a block of statements associated with an IF statement.
Examples:
IF ($DATASET_ON(CART))
WTU MOVE_TO_VTS
ENDIF
The previous example represents the simplest form of an IF construction. There are no alternate decisions.
IF (ILLEGAL)
SET $USERL1_TM(TRUE)
RETURN CONTINUE
ELSE
WTU ERROR1
RETURN FAIL
ENDIF
In this example an alternate decision, when the IF statement evaluates to FALSE, is included. The ELSE indicates the beginning of the DAL statements to be executed.
IF (ILLEGAL)
WTU ERROR2
RETURN FAIL
ORIF (MOUNT)
SET $USERL2_TM(TRUE)
RETURN CONTINUE
OTHERWISE
SET $USERL2_TM(FALSE)
RETURN CONTINUE
ENDIF
In the example above, the use of the ORIF and OTHERWISE logical statements is shown.
In general we recommend that you do not use character Descriptors in the DAL logic section because it makes it affects performance and makes it more difficult to read; however, the following statement is valid:
IF ($JOBNAME(PP200*) & $ACCTFLD(2,PROD))
...
...
ELSE
...
...
ENDIF
See Also: ELSE, ENDIF, ORIF, and OTHERWISE.
$INCLASS | $INCL
Description: Input Job Submission Class
Type: Character string Descriptor.
Maximum Length: 1 character.
This Descriptor represents the job submission class (the class requested on the JOB statement).
$INCLASS(class | *) |
A single hard-coded character from A-Z or 0-9.
*
Job Analysis class.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
Examples:
$INCLASS(A)
$INCL(0)
See Also: $CURCLASS.
Notes:
A job's $INCLASS is not affected by any requeueing done by ThruPut Manager. For example, if a job is submitted in class A but requeued in class D for Deferred Processing, its INCLASS is still A. Likewise, it is not altered by any operator command.
$INDEVICE | $INDEV
Description: Name of Device on Which Job Entered System or TSO User
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor represents the name of the device on which the job entered the system.
$INDEVICE(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters. It can also include the period (.) and the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
table-id
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to “Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$INDEVICE(READER1)
$INDEVICE(INTRDR)
$INDEV(TSO)
$INDEV(L123.JR4)
$INDEV(R345.RD1)
$INDEV($TABLE2(DEVICES))
Notes:
This descriptor can be checked for INTRDR as well as TSO. They will both be true for a job submitted by a TSO user.
$INJOB#
Description: How Many Times data set in Job
Type: Range Definition Descriptor.
Maximum Value: 99999
This Descriptor allows you to determine how many times you have already "seen" this data set for the job. This allows you to determine if the data set has already been processed within the job.
$INJOB# [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Example:
$INJOB# FIRST,2,DONE
EVALUATE PAY_FIRST ($DSNAME(PAY*.**) & FIRST)
...
IF (PAY_FIRST)
...
See Also: $INSTEP#.
$INMSGCLASS
Description: Message Class from JOB Statement.
Type: Character string Descriptor.
Maximum Length: 1 character.
This Descriptor represents the message class requested by the JOB statement at job submission.
$INMSGCLASS(class) |
A hard-coded single character from A-Z or 0-9.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
Examples:
See Also: $CURMSGCLASS.
$INNODE
Description: Name of Node on Which Job Was Submitted
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor specifies the name of the JES2 node on which the job was submitted.
$INNODE(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters, the first of which must be alphabetic or national. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to “Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$INNODE(HQ)
$INNODE(CITY1)
$INNODE($TABLE1(NODELIST))
$INPRIO | $INPR
Description: Input Execution Queue Priority
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Descriptor represents the job priority at submission time.
$INPRIO(priority-value) |
A value to be tested for equal. It must in the range of 0 to 15.
The low end of a range to be tested. It must be in the range 0 to 14.
Is the high end of a range of priorities. It must be in the range 1 to 15, and must be higher than low. The value in $INPRIO must be greater than or equal to low but less than high in order for this Descriptor function to evaluate to TRUE.
If you want to include jobs with priority 15 use MAX instead of high.
Usage:
This Descriptor can be used only in the Definition Section of DAL.
Examples:
This function returns a TRUE value only for jobs with an input priority of 8.
This returns a TRUE value for all jobs that have a priority in the range 9 to 14, because the value tested must be less than 15. Note that to specify a range that includes priority 15, you must use the MAX parameter:
See Also: $CURPRIO.
Notes:
This Descriptor can be used to test a job for a specific priority, or to see if it falls within a range of priorities.
$INRMT
Description: Input Remote Number
Type: Character string Descriptor.
Maximum Value: Not applicable.
This Descriptor represents the input remote number.
$INRMT(LOCAL) |
Represents a local device.
Can be 1-4 digits.
Can be 1-4 digits.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
Examples:
$INRMT(7)
$INRMT(LOCAL)
$INRMT(3:299)
Notes:
To indicate a range of remotes, specify nnnn:mmmm, where (nnnn < mmmm < 9999).
This Descriptor does not support pattern matching functions.
$IN_SCHENV
Description: Input Scheduling Environment
Type: Character string Descriptor.
Maximum Length: 16 characters.
This Descriptor represents the scheduling environment for the job at submission.
$IN_SCHENV(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-16 alphabetic, numeric, underscore (_), or national (#, @, $) characters. Underscores must be imbedded. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to “Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$IN_SCHENV(PRODUCTION)
$IN_SCHENV($TABLE2(ENVIRONS))
$IN_SERVICE_CLASS
Description: Input WLM Service Class
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor represents the WLM service class for the job at submission.
$IN_SERVICE_CLASS(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-8 alphabetic, numeric, underscore (_), or national (#, @, $) characters. Underscores must be imbedded. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to “Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$IN_SERVICE_CLASS(HI_SPEED)
$IN_SERVICE_CLASS($TABLE1(WLMCLASS))
$INSTEP#
Description: How Many Times data set in Step
Type: Range Definition Descriptor.
Maximum Value: 99999
This Descriptor allows you to determine how many times you have already "seen" this data set for this step. This allows you to determine if the data set has already been processed within the step.
$INSTEP# [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Example:
$INSTEP# FIRST,2,DONE
EVALUATE PAY_FIRST ($DSNAME(PAY*.**) & FIRST)
...
IF (PAY_FIRST)
...
See Also: $INJOB#.
$INSYSAFF
Description: Job Submission System Affinity
Type: Character string Descriptor.
Maximum Length: 4 characters.
This Descriptor represents the JES2 system affinity at job submission time.
Note that system affinity can be assigned to jobs by assigning a default to the input device (local or remote). If a job specifies system affinity it overrides the input device assignment.
$INSYSAFF(ANY) |
Allows you to determine if the job can be executed in any system.
Allows you to determine if the job requested independent mode. When coded alone, this keyword allows you to determine whether or not independent mode is used regardless of the system affinity.
Allows you to determine if the job can execute in the system named.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
Examples:
In this case, for $INSYSAFF to evaluate TRUE, the job submission system affinity for this job must include SYS1 and be in independent mode.
See Also: $DALSYS and $INDEVICE.
Notes:
If you use the input device as a way to assign system affinity defaults, you can use $INDEVICE to test for it. When using the Job Extract Facility, the value returned is the 32 bit System Affinity Mask. Systems prior to JES2 5.1 return an 8 bit mask in the first byte.
This Descriptor does not support pattern matching functions.
$INSYSID
Description: JES2 ID of Submission System
Type: Character string Descriptor.
Maximum Length: 4 characters.
This Descriptor represents the JES2 system ID where the job was last read. If the job was submitted at node X and transmitted to node Y, $INSYSID would be the system at node Y that read the job.
$INSYSID(pattern|%patid|table-id) |
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$IZWS
Description: A //*IZWS Statement was encountered
Type: Logic Variable.
Maximum Value: Not applicable.
This Descriptor indicates that this job is managed by IZWS.
$IZWS(YES/NO) |
This function call returns a TRUE/FALSE value depending on whether this is an IZWS job.
YES
Returns a TRUE value the job is managed by IZWS.
NO
Returns a TRUE value if the job is not managed by IZWS.
Usage:
This Variable can be used in EVALUATE definition statements and JAL Logic statements, and as an insert in message definition statements.
Example:
$IZWS_ADID
Description: An ADID= keyword was encountered on the //*IZWS Statement
Type: Character string Descriptor.
Maximum Length: 16 characters.
This Descriptor indicates the value of the ADID= keyword on the //*IZWS statement.
This is the Application Name.
$IZWS_ADID(pattern | %patid | table-id) |
pattern
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters, the first of which must be alphabetic or national. It can also include the wildcard characters ‘?’ and ‘*’.
%patid
The name of a pattern created with the PATTERNDEF statement.
table-id
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities refer to “Chapter 5. Character String Facilities Tutorial” in the DAL/JAL User Guide. For a description of table support, refer to “Chapter 6. DAL and JAL Table Management”.
$IZWS_CRITICALJOB(Yes/No)
Description: A CRITICALJOB= keyword was encountered on the //*IZWS Statement
Type: Logic Variable.
Maximum Value: Not applicable.
This Descriptor indicates the value of the CRITICALJOB= keyword on the //*IZWS statement.
This indicates that the job is on critical path.
$IZWS_CRITICALJOB(Yes/No) |
This function call returns a TRUE/FALSE value depending on the value of the CRITICALJOB= keyword.
YES
Returns a TRUE value if CRITICALJOB=YES was encountered.
NO
Returns a TRUE value if CRITICALJOB=NO was encountered.
Usage:
This Variable can be used in EVALUATE definition statements and JAL Logic statements, and as an insert in message definition statements.
Example:
EVALUATE IZWS_CRITICALJOB ($IZWS_CRITICALJOB(YES))
...
$IZWS_CRITICALPRED(Yes/No)
Description: A CRITICALPRED= keyword was encountered on the //*IZWS Statement
Type: Logic Variable.
Maximum Value: Not applicable.
This Descriptor indicates the value of the CRITICALPRED= keyword on the //*IZWS statement.
This indicates that the job is a critical predecessor.
$IZWS_CRITICALPRED(Yes/No) |
This function call returns a TRUE/FALSE value depending on the value of the CRITICALPRED= keyword.
YES
Returns a TRUE value if CRITICALPRED=YES was encountered.
NO
Returns a TRUE value if CRITICALPRED=NO was encountered.
Usage:
This Variable can be used in EVALUATE definition statements and JAL Logic statements, and as an insert in message definition statements.
Example:
EVALUATE IZWS_CRITICALPRED ($IZWS_CRITICALPRED(YES))
...
$IZWS_DEADLINE_DATE
Description: A DEADLINE= keyword was encountered on the //*IZWS Statement. This descriptor is the date portion.
Type: Range Definition Descriptor.
Maximum Value: 2155/366 expressed as year/day.
This Descriptor indicates the date value of the DEADLINE= keyword on the //*IZWS statement.
This indicates the date when the job must end.
$IZWS_DEADLINE_DATE [0,]name1,start2,name2[,...,startN,nameN] |
start
The starting point of a segment. The first starting point must be 0, but can be omitted if desired
Starting points are specified as year/day pairs, separated by a slash.
name
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of JAL, and also as an insert in message definition statements.
Examples:
$IZWS_DEADLINE_DATE DATE_ONE,1999/365,NEVER_DATE,2000/001,DATE_TWO
$IZWS_DEADLINE_TIME
Description: A DEADLINE= keyword was encountered on the //*IZWS Statement. This is the time portion.
Type: Range Definition Descriptor.
Maximum Value: 24:00
This Descriptor indicates the time value of the DEADLINE= keyword on the //*IZWS statement.
This indicates the TIME when the job must end.
$IZWS_DEADLINE_TIME [0,]name1,start2,name2[,...,startN,nameN] |
start
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified as mmmm:ss, where:
- mmmm ranges from 0 to 9999. It represents minutes.
- ss ranges from 0 to 59. It represents seconds.
The value mmmm can be specified without seconds but ss must be preceded by mmmm (e.g., 30 seconds is specified as 0:30).
name
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of JAL, and also as an insert in message definition statements.
Examples:
$IZWS_DEADLINE_TIME DT1,99:30,DT2,199,DST3,999:30,SPECIAL_DT
$IZWS_DURATION
Description: A DURATION= keyword was encountered on the //*IZWS Statement.
Type: Range Definition Descriptor.
Maximum Value: 99999999.
This Descriptor indicates the numeric value of the DURATION= keyword on the //*IZWS statement.
This is the estimated duration of the job in seconds.
$IZWS_DURATION [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.start
name
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of JAL, and also as an insert in message definition statements.
Examples:
$IZWS_DURATION D0,1,D1,2,…,D998,999
$IZWS_IA_DATE
Description: A IA= keyword was encountered on the //*IZWS Statement. This descriptor is the date portion.
Type: Range Definition Descriptor.
Maximum Value: 2155/366 expressed as year/day.
This Descriptor indicates the date value of the IA= keyword on the //*IZWS statement.
This is the input arrival date.
$IZWS_IA_DATE [0,]name1,start2,name2[,...,startN,nameN] |
start
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified as year/day pairs, separated by a slash.
name
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of JAL, and also as an insert in message definition statements.
Examples:
$IZWS_IA_DATE DATE_ONE,1999/365,NEVER_DATE,2000/001,DATE_TWO
$IZWS_IA_TIME
Description: An IA= keyword was encountered on the //*IZWS Statement. This is the time portion.
Type: Range Definition Descriptor.
Maximum Value: 24:00.
This Descriptor indicates the time value of the IA= keyword on the //*IZWS statement.
This is the input arrival time.
$IZWS_IA_TIME [0,]name1,start2,name2[,...,startN,nameN] |
start
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified as mmmm:ss, where:
–mmmm ranges from 0 to 9999. It represents minutes.
–ss ranges from 0 to 59. It represents seconds.
The value mmmm can be specified without seconds but ss must be preceded by mmmm (e.g., 30 seconds is specified as 0:30).
name
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of JAL, and also as an insert in message definition statements.
Examples:
$IZWS_IA_TIME IA1,99:30,IA2,199,IA3,999:30,SPECIAL_IA
$IZWS_JECL_OK
Description: All //*IZWS keywords are acceptable
Type: Logic Variable.
Maximum Value: Not applicable.
This Descriptor indicates that all //*IZWS keywords are syntactically correct.
$IZWS_JECL_OK(YES/NO) |
This function call returns a TRUE/FALSE value depending on whether all keywords on the //*IZWS statement are acceptable.
YES
Returns a TRUE value if all //*IZWS keywords are acceptable.
NO
Returns a TRUE value if any of the //*IZWS keywords are not acceptable.
Usage:
This Variable can be used in EVALUATE definition statements and JAL Logic statements, and as an insert in message definition statements.
Example:
$IZWS_LATESTOUT_DATE
Description: A LATESTOUT= keyword was encountered on the //*IZWS Statement. This descriptor is the date portion.
Type: Range Definition Descriptor.
Maximum Value: 2155/366 expressed as year/day.
This Descriptor indicates the date value of the LATESTOUT= keyword on the //*IZWS statement.
This is the latest date when the job should start.
$IZWS_LATESTOUT_DATE [0,]name1,start2,name2[,...,startN,nameN] |
start
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified as year/day pairs, separated by a slash.
name
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of JAL, and also as an insert in message definition statements.
Examples:
$IZWS_LATESTOUT_DATE DATE_ONE,1999/365,NEVER_DATE,2000/001,DATE_TWO
$IZWS_LATESTOUT_TIME
Description: A LATESTOUT= keyword was encountered on the //*IZWS Statement. This is the time portion.
Type: Range Definition Descriptor.
Maximum Value: 24:00.
This Descriptor indicates the time value of the LATESTOUT= keyword on the //*IZWS statement.
This is the latest time when the job should start.
$IZWS_LATESTOUT_TIME [0,]name1,start2,name2[,...,startN,nameN] |
start
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified as mmmm:ss, where:
–mmmm ranges from 0 to 9999. It represents minutes.
–ss ranges from 0 to 59. It represents seconds.
The value mmmm can be specified without seconds but ss must be preceded by mmmm (e.g., 30 seconds is specified as 0:30).
name
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of JAL, and also as an insert in message definition statements.
Examples:
$IZWS_LATESTOUT_TIME DT1,99:30,DT2,199,DST3,999:30,SPECIAL_DT
$IZWS_OPNO
Description: An OPNO= keyword was encountered on the //*IZWS Statement.
Type: Range Definition Descriptor.
Maximum Value: 255.
This Descriptor indicates the time value of the OPNO= keyword on the //*IZWS statement.
This is the operation number.
$IZWS_OPNO [0,]name1,start2,name2[,...,startN,nameN] |
start
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
name
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of JAL, and also as an insert in message definition statements.
Examples:
$IZWS_OPNO O0,1,O1,2,O2,8,O9
$IZWS_PRIORITY
Description: A PRIORITY= keyword was encountered on the //*IZWS Statement.
Type: Range Definition Descriptor.
Maximum Value: 9.
This Descriptor indicates the time value of the PRIORITY= keyword on the //*IZWS statement.
This is the job’s priority from 1 to 9, where 9 is the most urgent.
$IZWS_PRIORITY [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.start
name
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of JAL, and also as an insert in message definition statements.
Examples:
$IZWS_PRIORITY P0,1,P1,2,P2,8,P9
$IZWS_SUCCESSOR(YES/NO)
Description: A SUCCESSOR= keyword was encountered on the //*IZWS Statement
Type: Logic Variable.
Maximum Value: Not applicable.
This Descriptor indicates the value of the SUCCESSOR= keyword on the //*IZWS statement.
This indicates that the job, when completed, will free jobs successor to start.
$IZWS_SUCCESSOR(Yes/No) |
This function call returns a TRUE/FALSE value depending on the value of the SUCCESSOR= keyword.
YES
Returns a TRUE value if SUCCESSOR=YES was encountered.
NO
Returns a TRUE value if SUCCESSOR=NO was encountered.
Usage:
This Variable can be used in EVALUATE definition statements and JAL Logic statements, and as an insert in message definition statements.
Example:
$IZWS_SUBSYS
Description: A SUBSYS= keyword was encountered on the //*IZWS Statement
Type: Character string Descriptor.
Maximum Length: 4 characters.
This Descriptor indicates the value of the SUBSYS= keyword on the //*IZWS statement.
This is the IZWS subsystem name.
$IZWS_SUBSYS(pattern | %patid | table-id) |
pattern
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters, the first of which must be alphabetic or national. It can also include the wildcard characters ‘?’ and ‘*’.
%patid
The name of a pattern created with the PATTERNDEF statement.
table-id
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For more information about the description of character string facilities see Character String Facilities Tutorial in the DAL/JAL User Guide. For a description of table support, see DAL and JAL Table Management section.
$IZWS_TIMEDEP(YES/NO)
Description: A TIMEDEP= keyword was encountered on the //*IZWS Statement
Type: Logic Variable.
Maximum Value: Not applicable.
This Descriptor indicates the value of the TIMEDEP= keyword on the //*IZWS statement.
The job is time dependent. It can not start before IA (input arrival).
$IZWS_TIMEDEP(Yes/No) |
This function call returns a TRUE/FALSE value depending on the value of the TIMEDEP= keyword.
YES
Returns a TRUE value if TIMEDEP=YES was encountered.
NO
Returns a TRUE value if TIMEDEP=NO was encountered.
Usage:
This Variable can be used in EVALUATE definition statements and JAL Logic statements, and as an insert in message def
$JBACT
JBS ONLY |
Description: Job Binding Activate Name Reference
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Descriptor lets you determine whether or not a particular Binding Agent is activated in JECL statements. It also allows you to determine if it is activated using Job Binding Services API, or whether the specified Agent is the only one being activated.
$JBACT name AGENT(pattern | %patid | table-id) |
Specifies the Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
Indicates that a search pattern for a Binding Agent follows.
A search pattern for a Binding Agent. The name can only be two levels. This pattern must be 1 to 17 characters and conform to the rules described in the section "Pattern Matching for Binding Agent Names" in "Section. Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide.
The name of a pattern constructed with a PATTERNDEF statement.
Identifies a specific table and indicates how it is to be searched. For a description of table support, see to "Section. DAL-and-JAL-table-management" in the DAL-and-JAL-user-guide.
Allows you to determine if the API is to be used. If the AGENT keyword is coded, the Property is assigned a TRUE value if a Binding Agent that matches the pattern that is specified.
Allows you to test whether the Binding Agents specified are the only ones being activated.
Usage:
This Descriptor can be used only in the Definition Section of TM DAL.
Examples:
$JBACT IMS_TEST AGENT(IMS.TEST)
$JBACT BMP_TEST AGENT($TABLE9(BMP_AGENTS))
$JBACT PRODUCTION_TEST AGENT(PRODJOBS) ONLY
See Also: $EXEMPT, $JBACT#, $JBBIND, $JBBIND#, $JBDEACT, and $JBDEACT#.
Notes:
When using the Job Extract Facility, one Agent name per XFE is returned (if present). Each possible level (up to 2) is returned in an 8-character field left justified.
If ONLY is specified together with a pattern or table entry for the AGENT keyword, the Property Name is assigned a TRUE value only if all Binding Agents found match the pattern or table entry.
$JBACT#
JBS ONLY |
Description: Number of Job Binding ACTIVATE JECL Statements
Type: Range Definition Descriptor.
Maximum Value: 99 expressed in number of ACTIVATE JECL statements.
This Descriptor represents the number of JECL ACTIVATE statements present in a job.
$JBACT# [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of TM DAL, and also as an insert in message definition statements.
Examples:
$JBACT# NO_ACTIVATE_JECL,1,ACTIVATE_JECL
See Also: $EXEMPT, $JBACT, $JBBIND, $JBBIND#, $JBDEACT, and $JBDEACT#.
$JBBIND
JBS ONLY |
Description: Job Binding Agent Name Reference
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Descriptor lets you determine whether or not there is a BIND statement for a particular Binding Agent in JECL statements. It also allows you to test whether the specified Agent is the only Agent bound to.
$JBBIND name AGENT(pattern | %patid | table-id) [ONLY] |
Specifies the Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
Indicates that a search pattern for a Binding Agent follows.
A search pattern for a Binding Agent. The name can only be two levels. This pattern must be 1 to 17 characters and conform to the rules described in the section "Pattern Matching for Binding Agent Names" in "Section. Elements of Action Languages Elements of Action Languages" in the DAL/JAL User Guide.
The name of a pattern constructed with a PATTERNDEF statement.
Identifies a specific table and indicates how it is to be searched. For a description of table support, see to "Section. DAL-and-JAL-table-management" in the DAL-and-JAL-user-guide.
Allows you to test whether the Binding Agents specified are the only ones being bound to.
Usage:
This Descriptor can be used only in the Definition Section of TM DAL.
Examples:
$JBBIND IMS AGENT(IMS.*)
$JBBIND BILL_OF_MATERIALS AGENT($TABLE3(BMPAGNTS))
See Also: $EXEMPT, $JBACT, $JBACT#, $JBBIND#, $JBDEACT, and $JBDEACT#.
Notes:
If ONLY is specified together with a pattern or table entry for the AGENT keyword, the Property Name is assigned a TRUE value only if all Binding Agents found match the pattern or table entry.
When using the Job Extract Facility, up to four Agent names per XFE could be returned. Each possible level (up to 2) is returned in an 8-character field left justified.
$JBBIND#
JBS ONLY |
Description: Number of Job BIND JECL Statements
Type: Range Definition Descriptor.
Maximum Value: 99 expressed in number of BIND JECL statements.
This Descriptor represents the number of JECL BIND statements present in a job.
$JBBIND# [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of TM DAL, and also as an insert in message definition statements.
Examples:
See Also: $EXEMPT, $JBACT, $JBACT#, $JBBIND, $JBDEACT, and $JBDEACT#.
$JBDEACT
JBS ONLY |
Description: Job Binding DEACTIVATE Agent Name Reference
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Descriptor lets you determine whether or not a particular binding agent is deactivated in JECL statements. It also allows you to determine if it is deactivated using Job Binding Services API, and whether the specified Agent is the only one deactivated.
$JBDEACT name AGENT(pattern | %patid | table-id) |
Specifies the Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
Indicates that a search pattern for a Binding Agent follows.
A search pattern for a Binding Agent. The name can only be two levels. This pattern must be 1 to 17 characters and conform to the rules described in the section "Pattern Matching for Binding Agent Names" in "Section. Elements of Action Languages Elements of Action Languages" in the DAL/JAL User Guide.
The name of a pattern constructed with a PATTERNDEF statement.
Identifies a specific table and indicates how it is to be searched. For a description of table support, see to "Section. DAL-and-JAL-table-management" in the DAL-and-JAL-user-guide.
Allows you to determine if the API is to be used. If the AGENT keyword is coded, the Property is assigned a TRUE value if a Binding Agent that matches the pattern that is specified.
Allows you to test whether the Binding Agents specified are the only ones being deactivated.
Usage:
This Descriptor can be used only in the Definition Section of TM DAL.
Examples:
$JBDEACT IMS_TEST AGENT(IMS.TEST)
$JBDEACT PAYROLL AGENT($TABLE1(PAYAGNTS))
See Also: $EXEMPT, $JBACT, $JBACT#, $JBBIND, $JBBIND#, and $JBDEACT#.
Notes:
When using the Job Extract Facility, one Agent name per XFE is returned (if present). Each possible level (up to 2) is returned in an 8-character field left justified.
If ONLY is specified together with a pattern or table entry for the AGENT keyword, the Property Name is assigned a TRUE value only if all Binding Agents found match the pattern or table entry.
$JBDEACT#
JBS ONLY |
Description: Number of DEACTIVATE JECL Statements
Type: Range Definition Descriptor.
Maximum Value: 99 expressed in number of DEACTIVATE JECL statements.
This Descriptor represents the number of JECL DEACTIVATE statements present in a job.
$JBDEACT# [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of TM DAL, and also as an insert in message definition statements.
Examples:
See Also: $EXEMPT, $JBACT, $JBACT#, $JBBIND, $JBBIND#, and $JBDEACT.
JBS ADD BIND
JBS ONLY |
Description: Adds a BIND request.
Type: Action statement.
This action statement allows you to "insert" a BIND request for the job.
JBS ADD BIND(agent-name-list[,$$DELETE]) |
This keyword indicates that a BIND request is to be inserted for the job.
For each invocation of DAL you can have up to 24 BIND requests. That is, you can execute up to 24 JBS ADD BIND statements without an intervening JBS DELETE BIND statement.
DAL BIND requests are additions to any JECL BIND requests the job might have.
A list, separated by commas, of up to four Binding Agents that can satisfy the BIND request.
The names represent an OR condition. That is, if any one of them is Active the job can be selected for execution.
$$DELETE is a special Agent name that causes the Bind request to be ignored if it causes an incompatibility. If included, $$DELETE counts as one of the four allowable Agent names, and must be the last name in the list.
Examples:
In this example two Binding Agents are listed. If either of them is active the job can be selected for execution.
If the Agent PREFER.SYS3 is incompatible with another Bind request for this job, the special Agent name $$DELETE causes this Bind request to be ignored.
See Also: JBS DELETE BIND, JBS REPLACE BIND, $JXJBANY, and $JXJBMAX.
Notes:
This facility is equivalent to the user placing the JECL statement /*JBS BIND in the job stream.
You can determine if you have previously added any BIND request by testing the logic variable $JXJBANY.
You can determine if you can add any more requests by testing the logic variable $JXJBMAX. If this variable returns a value of TRUE, it means that you have already reached the maximum number allowed.
The Language Processor parameter VERIFY allows you to verify whether JBS agents exist on the system on which the processor is running. This is a useful final step before implementing a new DAL.
JBS DELETE BIND
JBS ONLY |
Description: Deletes Bind request
Type: Action statement.
This action statement deletes the last previously executed JBS ADD BIND or JBS REPLACE BIND request.
JBS DELETE [BIND | ALL_BINDS] |
This keyword indicates that the previously executed JBS ADD BIND or JBS REPLACE BIND request is to be deleted. Only the last BIND request prior to the JBS DELETE BIND request is affected.
This keyword indicates that all existing Binding Agent requests are to be deleted.
See Also: JBS ADD BIND, JBS REPLACE BIND, $JXJBANY, and $JXJBMAX.
Notes:
This facility covers situations where in your main logic you might JBS ADD or JBS REPLACE a BIND request that in your "exception conditions" logic you may want to eliminate.
The source of the last previously executed BIND request (from DAL or from exits) does not affect JBS DELETE BIND processing.
If no JBS ADD BIND or JBS REPLACE BIND request has been previously executed, this statement is ignored.
$JBS_NEEDS
Description: JBS NEEDS Environment Reference
Type: Unique Descriptor.
Maximum Value: Not applicable. Component: JBS.
This Descriptor lets you determine whether or not a particular JBS Environment is requested in JECL statements, and whether the specified Environment is the only one requested.
$JBS_NEEDS name ENVIRONMENT(pattern | %patid | table-id) [ONLY] |
Specifies the Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
Indicates that a search pattern for a JBS Environment follows.
This keyword can be abbreviated to ENV.
A search pattern for an Environment. This pattern must be 1 to 16 characters and conform to the naming conventions for JBS Environments.
The name of a pattern constructed with a PATTERNDEF statement.
Identifies a specific table and indicates how it is to be searched. For a description of table support, see to "Section. DAL-and-JAL-table-management" in the DAL-and-JAL-user-guide.
Allows you to test whether the Environment specified is the only one being requested.
Usage:
This Descriptor can be used only in the Definition Section.
Examples:
$JBS_NEEDS MAINT ENVIRONMENT(MAINTENANCE)
$JBS_NEEDS BACKUP ENV($TABLE3(ENVIRONS))
See Also: $JBS_NEEDS#.
$JBS_NEEDS#
Description: Number of NEEDS Statements
Type: Range Definition Descriptor.
Maximum Value: 1.
Component: JBS.
This Descriptor represents whether or not a JECL JBS NEEDS statement is present in the job. In this case only one statement can be present.
$JBS_NEEDS# name1,1,name2 |
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section and also as an insert in message definition statements.
Examples:
See Also: $JBS_NEEDS.
JBS REPLACE BIND
JBS ONLY |
Description: Replaces a previous JBS ADD BIND request
Type: Action statement.
This action statement allows you to replace the last previously executed JBS ADD BIND request for the job.
JBS REPLACE BIND(agent-name-list) |
This keyword indicates that the previously executed JBS ADD BIND request is to be replaced with a new Agent list. Only the last BIND request prior to the JBS REPLACE BIND request is affected.
If no JBS ADD BIND statement has been executed, this statement is treated as the first JBS ADD BIND statement.
A list, separated by commas, of up to four Binding Agents that can satisfy the BIND request.
The names represent an OR condition. That is, if any one of them is Active the job can be selected for execution.
Usage:
Normally used with exception conditions logic, where in your main line you may have a JBS ADD BIND request that is replaced under some unique logic conditions.
Examples:
See Also: JBS ADD BIND, JBS DELETE BIND, $JXJBANY, and $JXJBMAX.
Notes:
The Language Processor parameter VERIFY allows you to verify whether JBS agents exist on the system on which the processor is running. This is a useful final step before implementing a new DAL.
The source of the last previously executed BIND request (from DAL or from exits) does not affect JBS REPLACE BIND processing.
$JBS_SET
Description: JBS SET Resource Element Reference
Type: Unique Descriptor. Maximum Value: Not applicable. Component: JBS.
This Descriptor lets you determine whether or not a particular JBS Resource Element is SET by JECL statements, and whether the specified Resource is the only one set.
$JBS_SET name RESOURCE(pattern | %patid | table-id) [ONLY] |
Specifies the Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
Indicates that a search pattern for a JBS Resource Element follows. This keyword can be abbreviated to RES.
A search pattern for a Resource Element. This pattern must be 1 to 16 characters and conform to the naming conventions for JBS Resource Elements.
The name of a pattern constructed with a PATTERNDEF statement.
Identifies a specific table and indicates how it is to be searched. For a description of table support, see to "Section. DAL-and-JAL-table-management" in the DAL-and-JAL-user-guide.
Allows you to test whether the Resource Element specified is the only one being set.
Usage:
This Descriptor can be used only in the Definition Section.
Examples:
$JBS_SET SETS_SHIFT RESOURCE(SHIFT)
$JBS_SET SETS_DAY RES($TABLE3(RESOURCE))
See Also: $JBS_SET#.
$JBS_SET#
Description: Number of JBS SET JECL Statements
Type: Range Definition Descriptor.
Maximum Value: 99 expressed in number of JBS SET JECL statements.
Component: JBS.
This Descriptor allows you to determine the number of JBS SET JECL statements present in a job.
$JBS_SET# [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section and also as an insert in message definition statements.
Examples:
See Also: $JBS_SET.
JCL ADD
TM ONLY |
Description: Add a DD Statement
Type: Action statement.
This statement allows you to add a DD statement to the current step.
• The disposition of an added DD statement is SHR.
• All applicable DALs are driven for added DD statements.
JCL ADD DDN(ddname) DSN(DATASETname) [FIRST | LAST] |
Specifies the name of the DD statement to be added. If the DD name already exists in the job, the addition is treated as a concatenation. The position of the data set in the concatenation is determined by the FIRST or LAST keyword.
Is a valid DD name.
Specifies the name of the data set for the DD statement to be added.
Is a valid data set name.
If the added data set is part of a concatenation, indicates that it is to be added as the first data set.
This is the default.
If the added data set is part of a concatenation, indicates that it is to be added as the last data set.
Undoes the effect of all previous JCL ADD statements in this invocation of TM DAL. This keyword is mutually exclusive with all other JCL ADD keywords.
See Also: $JCL_ADD.
$JCL_ADD
Description: Check Whether DD Statement Was Added
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the current DD statement was added by a previous TM DAL.
$JCL_ADD(NO | YES) |
Returns a TRUE value if the current DD statement was not added by a previous TM DAL.
Returns a TRUE value if the current DD statement was added by a previous TM DAL.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
See Also: JCL ADD.
JCL ALTER
TM ONLY |
Description: Alter DD Statement Keywords
Type: Action statement.
This statement allows you to alter certain DD statement keywords during DAL type TM analysis of a DD statement.
JCL ALTER keyword[,keyword,...] [ANALYSIS_ONLY] |
Alters JCL for the purpose of analysis. The changes will not affect execution.
Undoes the effects of any previous JCL ALTER statement and restores the DD statement to its original state. This keyword is mutually exclusive with all other JCL ALTER keywords.
Is one or more of the following keywords:
BLKSIZE(blksize)
BUFL(bufl)
BUFND(bufnd)
BUFNI(bufni)
BUFNO(bufno)
BUFSP(bufsp)
DSORG(dsorg)
EXPDT(expdt)
FREE(free)
LRECL(lrecl)
RETPD(retpd)
RETPD(retpd)
STRNO(strno)
TRTCH(trtch)
Allows you to set values for the corresponding DD statement keyword. The new value must be valid according to the DD statement syntax, e.g. EXPDT(2002/365).
The name of a character string created with the STRINGDEF statement.
DATACLAS(dataclas | %stringid)
MGMTCLAS(mgmtclas | %stringid)
STORCLAS(storclas | %stringid)
Allows you to set SMS parameters for the corresponding DD statement, provided that the option has been enabled with the JES2 initialization TMPARM.
Specifies a new value that must be valid according to the SMS keyword syntax.
The name of a character string created with the STRINGDEF statement.
Allows you to control requests for deferred mounts.
Alters the UNIT keyword to include DEFER.
If DEFER was coded, it is removed.
Hides any volume serial numbers coded on the DD statement from further JAL/DAL processing. To remove volumes from the DD statement, use REMOVE_VOL_SER.
Allows you control requests to PROTECT data sets.
Adds a PROTECT=YES keyword to the DD statement.
If PROTECT=YES was coded, it is removed.
Allows you control requests for RETAINed volumes.
Alters the VOLUME keyword to include RETAIN.
If RETAIN was coded, it is removed.
Removes any volume serial numbers that were coded on the DD statement. To hide volume serial numbers from further JAL/DAL processing without removing them from the DD statement, use the keyword IGNORE_VOLUMES.
Allows you to specify a new unitname. If the DD statement refers to a cataloged data set, the specified unit must be of the same device type, otherwise MVS allocation ignores it. This behavior is identical to coding UNIT on the DD statement. If the DD statement refers to an SMS managed data set, the unitname may be ignored. See SMS message IGDxxxxI in the job output.
NOTE: The original unitname (if coded) must be valid.
The name of a character string created with the STRINGDEF statement. If the intent is to remove the unitname, use a blank STRINGDEF, e.g. STRINGDEF %BLANKS (' ').
Allows you to provide a specific unit count, or override an existing count.
Allows you to provide a specific volume count, or override an existing count.
Examples:
JCL ALTER BLKSIZE(1024) DSORG(PS)
JCL ALTER UNITNAME(3480) ANALYSIS_ONLY
JCL ALTER EXPDT(2002/365)
Notes:
JCL ALTER actions are logged in SYSMSGS of the affected job unless the JAL statement JCL SET is used to turn off logging.
$JCL_BLKSIZE
Description: Blocksize from JCL
Type: Range Definition Descriptor.
Maximum Value: 65535 bytes.
This Descriptor represents the blocksize coded in JCL, if any was coded.
$JCL_BLKSIZE [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
$JCL_BUFL
Description: Buffer Length from JCL
Type: Range Definition Descriptor.
Maximum Value: 32,760 bytes.
This Descriptor represents the buffer length coded in JCL, if any was coded.
$JCL_BUFL [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
$JCL_BUFND
Description: Number of VSAM Data Buffers from JCL
Type: Range Definition Descriptor.
Maximum Value: 32,767 bytes.
This Descriptor represents the BUFND= value coded in JCL, if any were coded.
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
$JCL_BUFNI
Description: Number of VSAM Data Buffers from JCL
Type: Range Definition Descriptor.
Maximum Value: 32,767 bytes.
This Descriptor represents the BUFNI= value coded in JCL, if any were coded.
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
$JCL_BUFNO
Description: Number of Buffers from JCL
Type: Range Definition Descriptor.
Maximum Value: 15 buffers.
This Descriptor represents the buffer length coded in JCL, if any was coded.
$JCL_BUFNO [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
$JCL_BUFSP
Description: Maximum number of bytes in user area specified in JCL
Type: Range Definition Descriptor.
Maximum Value: 8388607 bytes.
This Descriptor represents the BUFSP= value coded in JCL, if any was coded.
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
$JCL_CODED
Description: Test for Certain Keywords
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Unique Descriptor allows you to determine whether any of the following keywords were coded anywhere in the job:
• DEFER
• EXEC_REGIONX
• EXPDT
• JOB_REGIONX
• LABEL=EXPDT
• LABEL=RETPD
• RETPD
• PROTECT=YES
• UNIT=AFF
• UNITNAME
• VOL=REF
• VOL=SER
This function call returns a true/false value depending on whether the keyword you are testing for was coded on any DD statement in the job.
$JCL_CODED name (DEFER | EXEC_REGIONX| EXPDT | JOB_REGIONX | EXPDT_OLD | EXPDT_ |
Specifies the Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. The first character must be alphabetic or national. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
Indicates that you want to know whether the DEFER subparameter of the UNIT keyword was coded on any DD statement in the job. If this subparameter is present, $JCL_CODED assumes a TRUE value.
Indicates that you want to know whether REGIONX was coded on any EXEC statement in the job.
If $JCL_CODED is coded in JAL it will be TRUE if any step of the job contains the REGIONX keyword.
If $JCL_CODED is coded in DAL it will be TRUE if the current step of the job contains the REGIONX keyword.
Indicates that you want to know whether the EXPDT or LABEL=EXPDT keyword was coded on any DD statement in the job. If either of these keywords is present, $JCL_CODED assumes a TRUE value.
Indicates that you want to know whether the EXPDT or LABEL=EXPDT keyword was coded on any DD statement in the job using the new (ccyy/ddd) form for the expiry date. If either of these keywords is present and uses the new date format, $JCL_CODED assumes a TRUE value.
Indicates that you want to know whether the EXPDT or LABEL=EXPDT keyword was coded on any DD statement in the job using the old (yyddd) form for the expiry date. If either of these keywords is present and uses the old date format, $JCL_CODED assumes a TRUE value.
Indicates that you want to know whether the REGIONX keyword was coded on the JOB statement. If this keyword is present, $JCL_CODED assumes a TRUE value.
Indicates that you want to know whether the PROTECT=YES keyword was coded on the DD statement. If this keyword is present, $JCL_CODED assumes a TRUE value.
Indicates that you want to know whether the RETPD or LABEL=RETPD keyword was coded on any DD statement in the job. If either of these keywords is present, $JCL_CODED assumes a TRUE value.
Indicates that you want to know whether UNIT=AFF was coded on any DD statement in the job. If this keyword is present, $JCL_CODED assumes a TRUE value.
Indicates that you want to know whether a unit name was coded on any DD statement in the job. If a unit name is present, $JCL_CODED assumes a TRUE value.
Indicates that you want to know whether VOL=REF was coded on any DD statement in the job. If this keyword is present, $JCL_CODED assumes a TRUE value.
Indicates that you want to know whether VOL=SER was coded on any DD statement in the job. If this keyword is present, $JCL_CODED assumes a TRUE value.
$JCL_COND
Description: Check COND Keyword
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the COND keyword was coded for the current step.
$JCL_COND(NO | YES) |
Returns a TRUE value if the COND keyword does not apply to the current step.
Returns a TRUE value if the COND keyword applies to the current step.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
$JCL_COND_EVEN
Description: Check COND=EVEN Keyword
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the current step contains COND=EVEN.
$JCL_COND_EVEN(NO | YES) |
Returns a TRUE value if the COND=EVEN keyword does not apply to the current step.
Returns a TRUE value if the COND =EVEN keyword applies to the current step.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
$JCL_COND_ONLY
Description: Check COND=ONLY Keyword
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the current step contains COND=ONLY.
$JCL_COND_ONLY(NO | YES) |
Returns a TRUE value if the COND=ONLY keyword does not apply to the current step.
Returns a TRUE value if the COND =ONLY keyword applies to the current step.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
JCL DELETE
TM ONLY |
Description: Delete the Current DD Statement
Type: Action statement.
This statement deletes the current DD statement from the job.
JCL DELETE [RESET] |
Undoes the effect of a previous JCL DELETE statement.
$JCL_DSKEYLBL
Description: Check DSKEYLBL DD Keyword
Type: Logic Variable.
Maximum Value: 64 characters.
This Logic Variable allows you to determine the value coded for the DSKEYLBL keyword on the DD statement being processed. $BLANK Allows you to test for an "all blanks" condition.
$JCL_DSKEYLBL($BLANK | key value) |
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
$JCL_DSNTYPE
Description: Check DSNTYPE DD Keyword
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine the value coded for the DSNTYPE keyword on the DD statement being processed.
$JCL_DSNTYPE($BLANK | LIBRARY | HFS | PDS | PIPE) |
Allows you to test for an "all blanks" condition.
Indicates that you want to know whether the LIBRARY subparameter was coded for the DSNTYPE keyword on the DD statement. If LIBRARY was coded, $JCL_DSNTYPE returns a TRUE value.
Indicates that you want to know whether the HFS subparameter was coded for the DSNTYPE keyword on the DD statement. If HFS was coded, $JCL_DSNTYPE returns a TRUE value.
Indicates that you want to know whether the PDS subparameter was coded for the DSNTYPE keyword on the DD statement. If PDS was coded, $JCL_DSNTYPE returns a TRUE value.
Indicates that you want to know whether the PIPE subparameter was coded for the DSNTYPE keyword on the DD statement. If PIPE was coded, $JCL_DSNTYPE returns a TRUE value.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
$JCL_DSORG
Description: Check DSORG DD Keyword
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine the value coded for the DSORG keyword on the DD statement being processed.
$JCL_DSORG(CX | DA | DAU | GS | IS | ISU | PO | POU | PS | PSU) |
Allows you to test for the CX (communications line group) data set organization.
Allows you to test for the DA (direct access) data set organization.
Allows you to test for the DAU (direct access with location-dependent information) data set organization.
Allows you to test for the GS (graphic data control block) data set organization.
Allows you to test for the IS (indexed sequential) data set organization.
Allows you to test for the ISU (indexed sequential with location-dependent information) data set organization.
Allows you to test for the PO (partitioned, PDS or PDSE) data set organization.
Allows you to test for the POU (partitioned (PDS) with location-dependent information) data set organization.
Allows you to test for the PS (physical sequential) data set organization.
Allows you to test for the PSU (physical sequential with location-dependent information) data set organization.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
$JCL_EATTR
Description: Support for Extended Attributes
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Descriptor allows you to determine whether the data set can support extended attributes (format 8 and 9 DSCBs) or not.
$JCL_EATTR(OPT | NO) |
Indicates that extended attributes are optional. The data set can have extended attributes and reside in EAS. This is the default value for VSAM data sets. .
Indicates that there are no extended attributes. The data set cannot have extended attributes (format 8 and 9 DSCBs) or reside in EAS. This is the default value for non-VSAM data sets.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
$JCL_EXEC_REGIONX_ABOVE
Description: Above-the-line Storage Allocation
Type: Range Definition Descriptor.
Maximum Value: Not applicable.
This Descriptor represents above-the-line storage allocation coded on an EXEC statement.
$JCL_EXEC_REGIONX_ABOVE [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified in K.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $JCL_JOB_REGIONX_ABOVE, $JCL_JOB_REGIONX_BELOW, and $JCL_EXEC_REGIONX_BELOW.
$JCL_EXEC_REGIONX_BELOW
Description: Below-the-line Storage Specification
Type: Range Definition Descriptor.
Maximum Value: 99999 expressed in K and M.
This Descriptor represents below-the-line storage specification coded on an JOB statement.
$JCL_EXEC_REGIONX_BELOW [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified in K, M and G bytes of memory as 1-5 decimal digits.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $JCL_JOB_REGIONX_ABOVE, $JCL_JOB_REGIONX_BELOW, and $JCL_EXEC_REGIONX_ABOVE.
$JCL_EXPDT
Description: Expiration Date from JCL
Type: Range Definition Descriptor.
Maximum Value: 2155/366 expressed as year/day.
This Descriptor represents the expiration date from JCL, if any was coded. It was either specified as an expiration date or as a retention cycle in JCL.
$JCL_EXPDT [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified as year/day pairs, separated by a slash.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
$JCL_EXPDT SCRATCH_LOW,2009/365,NEVER_SCRATCH,2010/001,SCRATCH_HIGH
$JCL_EXPDT JCL_NO_DATE,1900/001,JCL_DATE
See Also: $JCL_RETPD.
$JCL_FILEDATA
Description: Check FILEDATA DD Keyword
Type: Logic variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine the value coded for the FILEDATA keyword on the DD statement being processed.
$JCL_FILEDATA($BLANK | BINARY | TEXT | RECORD) |
Allows you to test for an "all blanks" condition.
Indicates that you want to know whether the BINARY subparameter was coded for the FILEDATA keyword on the DD statement. If BINARY was coded, $JCL_FILEDATA returns a TRUE value.
Indicates that you want to know whether the TEXT subparameter was coded for the FILEDATA keyword on the DD statement. If TEXT was coded, $JCL_FILEDATA returns a TRUE value.
Indicates that you want to know whether the RECORD subparameter was coded for the FILEDATA keyword on the DD statement. If RECORD was coded, $JCL_FILEDATA returns a TRUE value.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
$JCL_FREE
Description: Check FREE Keyword
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine what has been coded for the FREE keyword.
$JCL_FREE(CLOSE | END) |
Returns a TRUE value if CLOSE was coded for the FREE keyword.
Returns a TRUE value if END was coded for the FREE keyword.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
Notes:
If the FREE keyword was not coded, $JCL_FREE(END) returns a TRUE value, since FREE=END is the IBM default value.
$JCL_FREEVOL
Description: Check FREEVOL DD Keyword
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine the value coded for the FREEVOL keyword on the DD statement being processed.
$JCL_FREEVOL(EOV | END) |
Indicates that you want to know whether the EOV subparameter was coded for the FREEVOL keyword on the DD statement. If EOV was coded, $JCL_FREEVOL returns a TRUE value.
Indicates that you want to know whether the END subparameter was coded for the FREEVOL keyword on the DD statement. If EOV was coded, $JCL_FREEVOL returns a TRUE value.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
Examples:
The following example provides the JAL to verify if FREEVOL was NOT coded.
EVAL FREE_EOV ($JCL_FREEVOL(EOV))
EVAL FREE_END ($JCL_FREEVOL(END))
EVAL FREEVOL_NOT_SPECIFIED (FREE_EOV & FREE_END)
$JCL_GDGORDER
Description: Check GDGORDER DD Keyword
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine the value coded for the GDGORDER keyword on the DD statement being processed.
$JCL_GDGORDER (USECATLG| LIFO | FIFO) |
Indicates that you want to know whether the USECATLG subparameter was coded for the GDGORDER keyword on the DD statement. If USECATLG was coded, $JCL_GDGORDER returns a TRUE value.
Indicates that you want to know whether the LIFO subparameter was coded for the GDGORDER keyword on the DD statement. If LIFO was coded, $JCL_GDGORDER returns a TRUE value.
Indicates that you want to know whether the FIFO subparameter was coded for the GDGORDER keyword on the DD statement. If FIFO was coded, $JCL_GDGORDER returns a TRUE value.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
$JCL_JOB_DSENQSHR
Description: Check if DSENQSHR Value Coded on the JOB Statement
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the DSENQSHR value was coded on the JOB statement or a default value was assigned.
$JCL_JOB_DSENQSHR(YES | NO) |
Returns a TRUE value if the DSENQSHR = is coded on the JOB statement by user .
NO
Returns a TRUE value if the DSENQSHR= is not user coded and the system default value is assigned.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
$JCL_JOB_REGIONX_ABOVE
Description: Above-the-line Storage Allocation
Type: Range Definition Descriptor.
Maximum Value: Not applicable.
This Descriptor represents above-the-line storage allocation coded on a JOB statement.
$JCL_JOB_REGIONX_ABOVE [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified in K.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $JCL_JOB_REGIONX_BELOW, $JCL_EXEC_REGIONX_ABOVE, and $JCL_EXEC_REGIONX_BELOW.
$JCL_JOB_REGIONX_BELOW
Description: Below-the-line Storage Specification
Type: Range Definition Descriptor.
Maximum Value: Not applicable.
This Descriptor represents below-the-line storage allocation coded on a JOB statement.
$JCL_JOB_REGIONX_BELOW [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified in K.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $JCL_JOB_REGIONX_ABOVE, $JCL_EXEC_REGIONX_ABOVE, and $JCL_EXEC_REGIONX_BELOW.
$JCL_JOB_SYSAFF
Description: Check SYSAFF Keyword Coded on the JOB Statement
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the SYSAFF keyword was coded on the JOB statement.
$JCL_JOB_SYSAFF(YES | NO) |
Returns a TRUE value if the SYSAFF keyword coded on the JOB statement.
Returns a TRUE value if the SYSAFF keyword is not coded on the JOB statement.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
$JCL_JOB_SYSTEM
Description: Check SYSTEM Keyword Coded on the JOB Statement
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the SYSTEM keyword was coded on the JOB statement.
$JCL_JOB_SYSTEM(YES | NO) |
Returns a TRUE value if the SYSTEM keyword coded on the JOB statement.
Returns a TRUE value if the SYSTEM keyword is not coded on the JOB statement.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
$JCL_JOB_UJOBCORR
Description: Defines the UJOBCORR Value on a JOB Statement
Type: Character Descriptor.
Maximum Value: 32 characters.
This Descriptor represents UJOBCORR value coded on the JOB statement.
$JCL_JOB_UJOBCORR (user-correlator | $BLANK) |
Indicates UJOBCORR value coded on the JOB statement.
Is a special subparameter that allows you to check for blanks.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
$JCL_LABEL
Description: Indicates the Type of Label
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Descriptor allows you to determine what has been coded in the DD LABEL field.
$JCL_LABEL name TYPE(label) [PROCESS_AS(IN | OUT)] |
Specifies the Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. The first character must be alphabetic or national. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
This keyword indicates you want to determine if a particular label type was coded.
Can be one of the following:
This keyword indicates you want to determine the type of processing requested in JCL.
Tests for the presence of IN in the JCL.
Tests for the presence of OUT in the JCL.
Usage:
This Descriptor can be used only in the Definition Section of DAL.
Notes:
The keywords TYPE and PROCESS_AS are treated as an AND if both are specified, that is, both conditions must be met to assign a TRUE value to the Property Name.
$JCL_LRECL
Description: Record Length from JCL
Type: Range Definition Descriptor.
Maximum Value: 32,761 bytes.
This Descriptor represents the record length coded in JCL, if any was coded.
$JCL_LRECL [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
$JCL_MAXGENS
Description: Maximum Number of Generations for Members in a Version 2 PDSE.
Type: Range Definition Descriptor.
Maximum Value: 2,000,000,000.
This parameter specifies the maximum number of generations for members in a Version 2 PDSE.
$JCL_MAXGENS [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified in number of days as 1-4 decimal digits.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
$JCL_MODELDSN
Description: Model data set Name
Type: Character string Descriptor.
Maximum Length: 44 characters.
This Descriptor allows you to determine the MODEL data set name as coded in the DCB keyword for the DD currently being processed in DAL
$JCL_MODELDSN(pattern | %patid | table-id) |
This is a hard-coded valid data set name pattern to be matched against the data set name on the DD statement being processed.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to “Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Example:
EVAL MODEL1
($JCL_MODELDSN(Z5900.TESTMDL))
EVAL MODEL2
($JCL_MODELDSN(Z5900.**))
...
$JCL_PROC_LIBRARY
Description: Procedure Library Name
Type: Character string Descriptor.
Maximum Length: 44 characters.
This Descriptor represents the procedure library name.
$JCL_PROC_LIBRARY(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
Note:
For INSTREAM TYPE the library name is "INSTREAM"
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
See Also: $JCL_PROC_NAME and $JCL_PROC_TYPE.
$JCL_PROC_NAME
Description: Procedure Name
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor represents the procedure name.
$JCL_PROC_NAME(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
See Also: $JCL_PROC_LIBRARY and $JCL_PROC_TYPE.
$JCL_PROC_TYPE
Description: Procedure Library Type
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine the TYPE of procedure library.
$JCL_PROC_TYPE(INSTREAM | PRIVATE | SYSTEM) |
Returns a TRUE value if the procedure Type is INSTREAM.
Returns a TRUE value if the procedure Type is PRIVATE
Returns a TRUE value if the procedure Type is SYSTEM.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
See Also: $JCL_PROC_LIBRARY and $JCL_PROC_NAME.
$JCL_PROTECT
Description: Check PROTECT Keyword
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the PROTECT=YES keyword was coded on the current DD statement.
$JCL_PROTECT(NO | YES) |
Returns a TRUE value if the keyword PROTECT=YES was not coded on the current DD statement.
Returns a TRUE value if the keyword PROTECT=YES was coded on the current DD statement.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
JCL REPLACE
TM ONLY |
Description: Replace data set Name for Current DD Statement
Type: Action statement.
This statement allows you to replace the data set named on the current DD statement. All other parameters for the data set are unchanged..
JCL REPLACE DSN(DATASETname) |
Specifies the data set name to replace the current data set name.
Is a valid data set name.
Undoes the effect of any previous JCL REPLACE statement. This keyword is mutually exclusive with the DSN keyword.
See Also: $JCL_REPLACE.
Notes:
If multiple JCL REPLACE statements are executed, the last one encountered takes effect.
$JCL_REPLACE
Description: Check Whether data set Name Was Replaced
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the data set name on the current DD statement was replaced by a previous TM DAL.
$JCL_REPLACE(NO | YES) |
Returns a TRUE value if the data set name on the current DD statement was not replaced by a previous TM DAL.
Returns a TRUE value if the current DD statement was added by a previous TM DAL.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
See Also: JCL REPLACE.
$JCL_RETPD
Description: Retention Period for the DD Statement
Type: Range Definition Descriptor.
Maximum Value: 9999 expressed in days.
This Descriptor allows you to determine the retention period specified in JCL for the DD statement being processed.
$JCL_RETPD [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified in number of days as 1-4 decimal digits.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
See Also: $JCL_EXPDT.
$JCL_SCHEDULE_AFTER
Description: Indicate if AFTER Parameter is coded on the SCHEDULE Statement
Type: Logic Descriptor.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the AFTER parameter is coded on the SCHEDULE statement.
$JCL_SCHEDULE_AFTER (YES | NO) |
This function returns a TRUE/FALSE value depending on whether or not the job AFTER parameter was coded.
Returns a value of TRUE if AFTER parameter was coded, otherwise it returns a FALSE value.
Returns a value of TRUE if AFTER parameter was not coded, otherwise it returns a FALSE value.
Usage:
This Variable can be used in EVALUATE definition statements and D45AL Logic statements, and also as an insert in message definition statements.
See Also: $JCL_SCHEDULE_BEFORE, $JCL_SCHEDULE_JOBGROUP, and $JCL_SCHEDULE_WITH.
$JCL_SCHEDULE_BEFORE
Description: Indicate if BEFORE Parameter is coded on the SCHEDULE Statement
Type: Logic Descriptor.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the BEFORE parameter is coded on the SCHEDULE statement.
This function returns a TRUE/FALSE value depending on whether or not the job BEFORE parameter was coded.
$JCL_SCHEDULE_BEFORE (YES | NO) |
Returns a value of TRUE if BEFORE parameter was coded, otherwise it returns a FALSE value.
Returns a value of TRUE BEFORE parameter was not coded, otherwise it returns a FALSE value.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
See Also: $JCL_SCHEDULE_AFTER, $JCL_SCHEDULE_JOBGROUP, and $JCL_SCHEDULE_WITH.
$JCL_SCHEDULE_HOLDUNTL
Description: HOLDUNTL Time Parameter on the SCHEDULE Statement
Type: Range Definition Descriptor.
Maximum Value: 357912:00.
This Descriptor represents the difference between the specified "hold until" time and the time of analysis.
$JCL_SCHEDULE_HOLDUNTL [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified as mmmmmm:ss, where:
– mmmmmm ranges from 0 to 357912. It represents minutes.
– ss ranges from 0 to 59. It represents seconds.
The value mmmmmm can be specified without seconds but ss must be preceded by mmmmmm (e.g., 30 seconds is specified as 0:30).
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $JCL_SCHEDULE_JOBGROUP and $JCL_SCHEDULE_STARTBY.
Notes:
This descriptor is displayed in messages in the same format as HOLDUNTL parameter is coded in the SCHEDULE statement (+hh:mm or hh:mm mm/dd/yyyy or hh:mm ddd/yyyy).
$JCL_SCHEDULE_JOBGROUP
Description: JOBGROUP Name Specified on the SCHEDULE Statement
Type: Character Descriptor.
Maximum Value: 17 characters.
This Descriptor represents the JOBGROUP name coded on the SCHEDULE statement.
$JCL_SCHEDULE_JOBGROUP (pattern | %patid | table-id | $BLANK) |
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters, the first of which must be alphabetic or national. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Is a special subparameter that allows you to check for blanks.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$JCL_SCHEDULE_JOBGROUP(GROUP.PROD)
$JCL_SCHEDULE_JOBGROUP($TABLE3(GROUPN))
EVALUATE FIELDGR_BLANK ($JCL_SCHEDULE_JOBGROUP(3,$BLANK))
See Also: $JCL_SCHEDULE_AFTER, and $JCL_SCHEDULE_WITH, and $JCL_SCHEDULE_HOLDUNTL.
$JCL_SCHEDULE_STARTBY
Description: STARTBY Time ParameterSpecified on the SCHEDULE Statement
Type: Range Definition Descriptor.
Maximum Value: 23:59.
This Descriptor represents the difference between the specified "start by" time and the time of analysis.
$JCL_SCHEDULE_STARTBY [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified as mmmmmm:ss, where:
– mmmmmm ranges from 0 to 357912. It represents minutes.
– ss ranges from 0 to 59. It represents seconds.
The value mmmmmm can be specified without seconds but ss must be preceded by mmmmmm (e.g., 30 seconds is specified as 0:30).
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $JCL_SCHEDULE_JOBGROUP and $JCL_SCHEDULE_HOLDUNTL.
Notes:
This descriptor is displayed in messages in the same format as STARTBY parameter is coded in JCL SCHEDULE statement (+hh:mm or hh:mm mm/dd/yyyy or hh:mm ddd/yyyy).
$JCL_SCHEDULE_WITH
Description: Indicate if WITH Parameter is coded on the SCHEDULE Statement
Type: Logic Descriptor.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the WITH parameter is coded on the SCHEDULE statement.
$JCL_SCHEDULE_WITH (YES | NO) |
This function returns a TRUE/FALSE value depending on whether or not the job WITH parameter was coded.
Returns a value of TRUE if AFTER parameter was coded, otherwise it returns a FALSE value.
Returns a value of TRUE if AFTER parameter was not coded, otherwise it returns a FALSE value.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
See Also: $JCL_SCHEDULE_AFTER, $JCL_SCHEDULE_BEFORE, and $JCL_SCHEDULE_JOBGROUP.
$JCL_STMT#
Description: JCL Statement Number
Type: Display Variable.
Maximum Value: 65535
This Display Variable allows you to insert the number of the JCL statement being analyzed into a message.
$JCL_STMT# |
Is a valid insert in a MSGDEF statement.
Usage:
This Variable can be used only as an insert in message definition statements.
$JCL_STRNO
Description: Number of VSAM concurrent request parameter lists from JCL
Type: Range Definition Descriptor.
Maximum Value: 32,767 bytes.
This Descriptor represents the STRNO= value coded in JCL, if any was coded.
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
$JCL_SYMBOLS
Description: Indicates that SYMBOLS keyword coded on the DD Statement
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Descriptor allows you to determine what has been coded in the DD SYMBOLS field.
$JCL_SYMBOLS(JCLONLY | EXECSYS | CNVTSYS] |
Specifies that the names of JCL symbols and JES symbols found in the in-stream data set are replaced with their values.
Specifies that the names of JCL symbols and JES symbols found in the in-stream data set are replaced with their values. In addition, system symbols defined on the system during job execution can be used in the in-stream data.
Specifies that the names of JCL symbols and JES symbols found in the in-stream data set are replaced with their values. In addition, system symbols defined on the system during job execution can be used in the in-stream data, with the exception that system symbols used for substitution are taken not from the system where the job is executing, but from the system where the job has undergone JCL conversion.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
$JCL_SYMBOLS_LOGDD
Description: Logging-DDname specified within the SYMBOLS= operands.
Type: Character Descriptor.
Maximum Value: 8 characters
This Descriptor indicates if a logging-DDname was specified within the SYMBOLS= operands.
$JCL_LOGDD(ddname | $BLANK) |
The logging-DDname specified in the SYMBOLS=.
The logging-DDname was NOT specified.
Usage:
This Descriptor can be used only as an insert in message definition statements.
See Also: $BLANK.
$JCL_TRTCH
Description: Check TRTCH DD Keyword
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine the value coded for the TRTCH keyword on the DD statement being processed.
$JCL_TRTCH(C |E | T | ET | COMP | NOCOMP | $BLANK) |
These keywords are described in the IBM JCL Reference manual
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
$JCL_UNITNAME_MATCH
Description: Matches JCL Unit Name with a List of Names
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Unique Descriptor allows you to determine whether at least one of a list of unit names is coded on the DD statement that is being analyzed.
$JCL_UNITNAME_MATCH name |
Specifies the Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. The first character must be alphabetic or national. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
A list of unit names, patterns, %patids, and/or tables separated by commas.
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates how it is to be searched.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used only in the Definition Section of DAL.
See Also: $JCL_CODED and $UNITNAME.
$JCL_UNITNAME_TMMAP
Description: TM Unit Mapping in Effect
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine if ThruPut Manager unit name mapping is in effect. It indicates that at least one unit name coded in the job has been mapped to another unit name for Job Analysis purposes. Unit name mapping is provided by either the TM UNIT initialization statement or the TM UNIT operator command.
$JCL_UNITNAME_TMMAP(NO | YES) |
Returns a value of TRUE when TM unit name mapping is not in effect.
Returns a value of TRUE when TM unit name mapping is in effect.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
$JCL_VOLSER
Description: Indicates If Volume Serial Is Coded
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine if a volume serial number is coded in JCL for the DD statement being processed. It tests whether at least one hard-coded volume serial number is present.
$JCL_VOLSER(YES | NO) |
Returns a value of TRUE when a volume serial number was not coded.
Returns a value of TRUE when a volume serial number was coded.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
$JECL_verb
Description: Indicates if a JECL Statement is Coded.
Type: Logic Descriptor.
Maximum Value: Not applicable.
This Logic Descriptor allows you to determine if the specific JECL statement is included in the JCL.
$JECL_verb(YES | NO) |
Returns a value of TRUE when a specified JECL statement was included.
Returns a value of TRUE when a when a specified JECL statement was not included.
Usage:
These descriptors can be used in EVALUATE definition statements and DAL Logic statements, and also as an inserts in message definition statements.
$JECL Descriptor | JECL Statement |
---|---|
$JECL_CA7(YES|NO) | //* CA-7 |
$JECL_AFTER(YES|NO) | //*+AFTER |
$JECL_BEFORE(YES|NO) | //*+BEFORE |
$JECL_CNTL(YES|NO) | //*+CNTL |
$JECL_DAL(YES|NO) | //*+DAL |
$JECL_DAL_TRACE(YES|NO) | //*+DAL TRACE |
$JECL_DBS(YES|NO) | //*+DBS |
$JECL_DBS_RESERVE(YES|NO) | //*+DBS RESERVE |
$JECL_DBS_SET(YES|NO) | //*+DBS SET |
$JECL_DCS(YES|NO) | //*+DCS |
$JECL_DCS_ALERT(YES|NO) | //*+DCS ALERT |
$JECL_DCS_ALERTF1(YES|NO) | //*+DCS ALERTF1 |
$JECL_DCS_ALERTF2(YES|NO) | //*+DCS ALERTF2 |
$JECL_DCS_ALERTH1(YES|NO) | //*+DCS ALERTH1 |
$JECL_DCS_ALERTH2(YES|NO) | //*+DCS ALERTH2 |
$JECL_DCS_DF_GROUP(YES|NO) | //*+DCS DF_GROUP |
$JECL_DCS_FORDSN(YES|NO) | //*+DCS FORDSN |
$JECL_DCS_NAG(YES|NO) | //*+DCS NAG |
$JECL_DCS_NAGTEXT(YES|NO) | //*+DCS NAGTEXT |
$JECL_DCS_REPO(YES|NO) | //*+DCS REPO |
$JECL_DCS_SERVICE(YES|NO) | //*+DCS SERVICE |
$JECL_DJC(YES|NO) | //*+DJC |
$JECL_DJC_ANDIF(YES|NO) | //*+DJC ANDIF |
$JECL_DJC_CONDIF(YES|NO) | //*+DJC CONDIF |
$JECL_DJC_FLUSHIF(YES|NO) | //*+DJC FLUSHIF |
$JECL_DJC_MESSAGE(YES|NO | //*+DJC MESSAGE |
$JECL_DJC_RUNIF(YES|NO) | //*+DJC RUNIF |
$JECL_DJC_SIGNAL(YES|NO) | //*+DJC SIGNAL |
$JECL_JAL(YES|NO) | //*+JAL |
$JECL_JAL_TRACE(YES|NO) | //*+JAL TRACE |
$JECL_JBS(YES|NO) | //*+JBS |
$JECL_JBS_ACTIVATE(YES|NO) | //*+JBS ACTIVATE |
$JECL_JBS_BIND(YES|NO) | //*+JBS BIND |
$JECL_JBS_DEACTIVATE(YES|NO) | //*+JBS DEACTIVATE |
$JECL_JBS_NEEDS(YES|NO) | //*+JBS NEEDS |
$JECL_JBS_SET(YES|NO) | //*+JBS SET |
$JECL_JCS(YES|NO) | //*+JCS |
$JECL_JCS_AFTER(YES|NO) | //*+JCS AFTER |
$JECL_JCS_BATCH(YES|NO) | //*+JCS BATCH |
$JECL_JCS_BEFORE(YES|NO) | //*+JCS BEFORE |
$JECL_JCS_WITH(YES|NO) | //*+JCS WITH |
$JECL_JLS(YES|NO) | //*+JLS |
$JECL_JLS_ENQ(YES|NO) | //*+JLS ENQ |
$JECL_JLS_LIMIT(YES|NO) | //*+JLS LIMIT |
$JECL_JSS(YES|NO) | //*+JSS |
$JECL_JSS_PREVENT(YES|NO) | //*+JSS PREVENT |
$JECL_JSS_SERVICE(YES|NO) | //*+JSS SERVICE |
$JECL_JTS(YES|NO) | //*+JTS |
$JECL_JTS_HOLD_UNTIL(YES|NO) | //*+JTS HOLD_UNTIL |
$JECL_JTS_RELEASE(YES|NO) | //*+JTS RELEASE |
$JECL_MHS_USER(YES|NO) | //*+MHS_USER |
$JECL_MHS_USER_HOLD(YES|NO) | //*+MHS_USER HOLD |
$JECL_PCS(YES|NO) | //*+PCS |
$JECL_SLM(YES|NO) | //*+SLM |
$JECL_SLM_SERVICE(YES|NO) | //*+SLM SERVICE |
$JECL_TM(YES|NO) | //*+TM |
$JECL_TM_CAPTURE(YES|NO) | //*+TM CAPTURE |
$JECL_TM_EXEMPT(YES|NO) | //*+TM EXEMPT |
$JECL_TM_MESSAGE(YES|NO) | //*+TM MESSAGE |
$JECL_TM_TRACE(YES|NO) | //*+TM TRACE |
$JECL_WITH(YES|NO) | //*+WITH |
$JECL_DATASET(YES|NO) | //*DATASET |
$JECL_FORMAT(YES|NO) | //*FORMAT |
$JECL_MAIN(YES|NO) | //*MAIN |
$JECL_NET(YES|NO) | //*NET |
$JECL_NETACCT(YES|NO) | //*NETACCT |
$JECL_OPERATOR(YES|NO) | //*OPERATOR |
$JECL_PROCESS(YES|NO) | //*PROCESS |
$JECL_ROUTE(YES|NO) | //*ROUTE |
$JECL_ZEKE(YES|NO) | //*ZEKECTL |
JLS ADD LIMIT
TM ONLY |
Description: Associates Job with a Limiting Agent.
Type: Action statement.
This action statement allows you to associate a job with a Limiting Agent.
JLS ADD LIMIT(limitdef-id[(weight[,DRAIN])]) |
This keyword indicates that you want to associate a Limiting Agent with the job.
For each invocation of DAL you can have up to 24 Limiting Agents. That is, you can execute up to 24 JLS ADD LIMIT statements without an intervening JLS DELETE LIMIT statement.
The name-id of a JLS_LIMITDEF statement that defines a Limiting Agent.
This can be expressed either as:
• A numerical value from 1 to 999.
• Any Range Descriptor.(For example, $USERN1)
If a job is given a weight of n, it counts as if n jobs were executing. The default value is 1.
This subparameter indicates that once this job reaches the top of the execution queue, other jobs associated with this Limiting Agent are to be held until this job is initiated.
Examples:
JLS_LIMITDEF GROUPA LEVEL1('DEVA') LEVEL2($RACFU) LIMIT(3)
...
JLS ADD LIMIT(GROUPA)
...
In this example a Limiting Agent with a limit value of 3 is associated with the job.
JLS_LIMITDEF GROUPB LEVEL1('DEVB') LEVEL2($RACFU) LIMIT(5)
...
JLS ADD LIMIT(GROUPB(3,DRAIN))
...
In this example, a Limiting Agent with a limit value of 5 is associated with the job. The job is to be treated as though one job were executing for each unit used by the DD statement, and is important enough to delay other jobs once it reaches the head of the execution queue.
See Also: JLS DELETE LIMIT, JLS REPLACE LIMIT, JLS_LIMITDEF, $JXJLANY, and $JXJLMAX.
Notes:
You can determine if you have executed any JLS ADD LIMIT for this job by testing the logic variable $JXJLANY.
You can determine if you can add more requests by testing the logic variable $JXJLMAX. If this variable is TRUE, you have reached the maximum.
The DRAIN subparameter should be used with care, since assigning it to multiple jobs diminishes its effect.
JLS DELETE LIMIT
TM ONLY |
Description: Deletes Limit Association
Type: Action statement.
This action statement removes a previously associated Limiting Agent.
JLS DELETE [LIMIT | ALL_LIMITS] |
This keyword indicates that the association with a Limiting Agent previously created with a JLS ADD LIMIT statement be removed.
This keyword indicates that you want to delete all existing Limiting Agent associations that have not been added through JECL.
See Also: JLS ADD LIMIT, JLS REPLACE LIMIT, JLS_LIMITDEF, $JXJLANY, and $JXJLMAX.
Notes:
This facility covers situations where your main logic has a JLS ADD LIMIT request that you want to eliminate in your "exception conditions" logic.
If no JLS ADD LIMIT request has been previously executed, this statement is ignored.
JLS REPLACE LIMIT
TM ONLY |
Description: Replaces a previous JLS ADD LIMIT request
Type: Action statement.
This action statement allows you to replace the last previously executed JLS ADD LIMIT request for the job.
JLS REPLACE LIMIT(limitdef-id[(weight[,DRAIN])]) |
This keyword indicates that the last previously executed JLS ADD LIMIT request is to be replaced with a new request.
If no JLS ADD LIMIT statement has been executed, this statement is treated as the first JLS ADD LIMIT statement.
The name-id of a JLS_LIMITDEF statement defining the Limiting Agent.
This can be expressed either as:
• A numerical value from 1 to 999
• A numerical Descriptor such as $USERN1.
If a job is given a weight of n, it counts as if n jobs were executing. The default value is 1.
This subparameter indicates that once this job reaches the top of the execution queue, other jobs associated with this Limiting Agent are to be held until this job is initiated.
Examples:
JLS REPLACE LIMIT(GROUP1)
JLS REPLACE LIMIT(GROUP2(3,DRAIN))
See Also: JLS ADD LIMIT, JLS DELETE LIMIT, JLS_LIMITDEF, $JXJLANY, and $JXJLMAX.
Notes:
Normally used with exception conditions logic, where your main logic has a JLS ADD LIMIT request that you want to replace under certain conditions.
The DRAIN subparameter should be used with care, since assigning it to multiple jobs diminishes its effect.
$JLS_LIMIT
TM ONLY |
Description: Job Limiting Services LIMIT Reference
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Descriptor lets you determine whether or not there is a JLS LIMIT statement for a particular Limiting Agent in JECL statements. It also allows you to test whether the specified Agent is the only Agent accessed.
$JLS_LIMIT name AGENT(pattern | %patid | table-id) [ONLY] |
Specifies the Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
Indicates that a search pattern for a Limiting Agent follows.
A search pattern for a Limiting Agent. The name can only be two levels. This pattern must be 1 to 17 characters and conform to the rules described in the section "Pattern Matching for Binding Agent Names" in "Section. Elements of Action Languages Elements of Action Languages" in the DAL/JAL User Guide.
The name of a pattern constructed with a PATTERNDEF statement.
Identifies a specific table and indicates how it is to be searched. For a description of table support, see to "Section. DAL-and-JAL-table-management" in the DAL-and-JAL-user-guide.
Allows you to test whether the Limiting Agents specified are the only ones being accessed.
Usage:
This Descriptor can be used only in the Definition Section of DAL.
Examples:
$JLS_LIMIT IMS AGENT(IMS.*)
$JLS_LIMIT BILL_OF_MATERIALS AGENT($TABLE3(BMPAGNTS))
See Also: $JLS_LIMIT#.
Notes:
If ONLY is specified together with a pattern for the AGENT keyword, the Property Name is assigned a TRUE value only if all Limiting Agents found match the pattern.
$JLS_LIMIT#
TM ONLY |
Description: Number of JLS LIMIT JECL Statements
Type: Range Definition Descriptor.
Maximum Value: 99 expressed in number of JLS LIMIT JECL statements.
This Descriptor represents the number of JECL JLS LIMIT statements present in a job.
$JLS_LIMIT# [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $JLS_LIMIT.
JLS_LIMITDEF
TM ONLY |
Description: Defines Limiting Agents
Type: Definition statement.
Maximum Value: Not applicable.
This statement allows you to define the name and characteristics of a Limiting Agent.
JLS_LIMITDEF name-id LEVEL1(first-level-name) |
Can be 1-24 alphabetic, numeric, national (#, @, $), or underscore (_) characters, the first of which must be alphabetic or national. Note that the first character cannot be a $.
The name-id is used in the JLS ADD LIMIT and JLS REPLACE LIMIT statements to indicate the Limiting Agent:
The name-id must be unique.
Indicates that a level one name for the Limiting Agent is provided. Can be 1-8 alphabetic, numeric, national (#, @, $), or underscore (_) characters. Note that the first character of the fully constructed level name can be a numeric value but it cannot be a $. If the first character of the name is a plus sign (+), the scope of the Agent is restricted to a single system. See to the section "Job-Limiting-Service-function" in the System Programming Guide: TM/JBS Component.
The name can be constructed using one of the following techniques:
• A hard coded string, enclosed in apostrophes, such as 'SETUP'.
• A request to create the name dynamically from a character Descriptor. For example:
• A request to create the name dynamically from a portion of a Descriptor using the substring function. The format for this built-in function call is:
An example:
The first level of the Agent name is constructed from the first 5 characters of the RACFU field.
The substring function call follows the rules discussed in "Section. Character-string-facilities-tutorial" in the DAL/JAL User Guide, with some additional restrictions:
- If the substring contains all blanks, an error occurs since no name can be constructed.
- If the substring contains embedded blanks, an error occurs since otherwise an invalid Agent name would be created.
- If the length exceeds 8, the string is truncated and a warning message is issued.
• One of the JAL execution time string variables created with STRINGDEF. For example:
JLS_LIMITDEF DEVELOP LEVEL1(%FLNAME) ...
Indicates that a level two name for the Limiting Agent is provided. This keyword is optional.
The same options as documented above for first-level-name
This keyword is used to indicate the limit to be placed for the selection of jobs that are associated with this Limiting Agent. It represents the maximum number of jobs in the MAS complex that can be executing concurrently.
A numerical value from 1-999, such as LIMIT(10), or a numeric user variable, $USERNnn.
Allows you to add the identifier for an ISPF panel that can be invoked to display installationdefined information when using the UDF facility.
Is a valid ISPF panel identifier.
Examples:
JLS_LIMITDEF DEVELOP LEVEL1('DEVJOBS') LEVEL2($XEQCLASS) LIMIT(1)
...
JLS ADD LIMIT(DEVELOP)
This statement allows you to limit the concurrent execution of jobs to only one per different execution class.
JLS_LIMITDEF BACKUP LEVEL1('BACKUP') LEVEL2('DASD') LIMIT(1)
...
JLS ADD LIMIT(BACKUP)
In this case you do not want more than one backup job at a time.
In this case the first three characters of the account field are chosen to form the second level for the Limiting Agent name. The JLS ADD LIMIT statements associates this job with two Limiting Agents.
...
JLS ADD LIMIT(BACKUP)
JLS ADD LIMIT(LIMITG1)
...
See Also: JLS ADD LIMIT, JLS DELETE LIMIT, JLS REPLACE LIMIT, $JXJLANY, and $JXJLMAX.
$JOBCPU
Description: CPU Time From JOB Statement
Type: Range Definition Descriptor.
Maximum Value: 357912:00 minutes.
This Descriptor represents the amount of CPU time specified in the TIME= parameter on the JOB statement.
$JOBCPU [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified as mmmmmm:ss, where:
– mmmmmm ranges from 0 to 357912. It represents minutes.
– ss ranges from 0 to 59. It represents seconds.
The value mmmmmm can be specified without seconds but ss must be preceded by mmmmmm (e.g., 30 seconds is specified as 0:30).
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
Notes:
If TIME= was not specified, the value is 0.
$JOBID
Description: JES2 Job Identifier
Type: Display Variable.
Maximum Length: 8 characters.
This is an execution time Display Variable. It allows you to display the JES2 job identifier:
• For jobs with five digits or less, this variable displays JOBnnnnn.
• For jobs with six digits or more, this variable displays Jnnnnnnn.
$JOBID |
Is a valid insert in a MSGDEF statement. It prints the JES2 job identifier.
Usage:
This Variable can be used only as an insert in message definition statements.
See Also: $JOBNUMBER.
$JOBNAME | $JOBN
Description: Jobname From The JOB Statement
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor represents the jobname from the JOB statement.
$JOBNAME(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters, the first of which must be alphabetic or national. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$JOBNAME(JOB1234)
$JOBN(PAYROLL)
$JOBNAME($TABLE3(JOBNAMES))
$JOBNUMBER | $JOBNUM
Description: JES2 Job Number
Type: Display Variable.
Maximum Length: 5 characters.
This is an execution time Display Variable. It allows you to display the JES2 job number.
$JOBNUMBER |
Is a valid insert in a MSGDEF statement. This prints the JES2 job number.
Usage:
This Variable can be used only as an insert in message definition statements.
See Also: $JOBID.
$JOB_PERFORM
Description: Performance Group from JOB Statement
Type: Range Definition Descriptor.
Maximum Value: 999.
This Descriptor returns a number in the range 1-999, representing the value coded for the PERFORM= keyword on the JOB statement.
$JOB_PERFORM [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
See Also: $PERFORM.
JSS ALLOW
TM ONLY |
Description: Allow Override of IEFBR14 Bypass
Type: Action statement.
The ThruPut Manager JSS SET initialization statement allows an installation to bypass allocation processing in IEFBR14-type steps:
• HSM recalls for data sets with a primary disposition of DELETE.
• Tape data sets.
This Action statement overrides the specified bypass(es).
JSS ALLOW [HSM_RECALLS] [TAPE_ALLOCATION] |
Requests that HSM processing be allowed for this step.
Requests that tape allocation processing be allowed for this step.
Undoes the effect of a previous JSS ALLOW statement. If no JSS ALLOW statement has been encountered, the RESET is ignored.
See Also: $JSS_BYPASS_RECALLS and $JSS_BYPASS_TAPE_ALLOC.
$JSS_BYPASS_RECALLS
TM ONLY |
Description: Test for Override of HSM Recall Bypassing
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine if a request has already been made by a JSS ALLOW statement to allow the step to override the JSS SET initialization statement for HSM recalls for data sets with a primary disposition of DELETE.
$JSS_BYPASS_RECALLS(NO | YES) |
A value of TRUE is returned if a JSS ALLOW HSM_RECALLS statement has not been executed.
A value of TRUE is returned if a JSS ALLOW HSM_RECALLS statement has been executed.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
See Also: JSS ALLOW.
$JSS_BYPASS_TAPE_ALLOC
TM ONLY |
Description: Test for Override of Tape Allocation Bypassing
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine if a request has already been made by a JSS ALLOW statement to allow the step to override the JSS SET initialization statement for tape allocation.
$JSS_BYPASS_TAPE_ALLOC(NO | YES) |
This function call returns a TRUE/FALSE value depending on whether or not a JSS ALLOW TAPE_ ALLOCATION statement has been executed.
A value of TRUE is returned if a JSS ALLOW HSM_TAPE_ALLOC statement has not been executed.
A value of TRUE is returned if a JSS ALLOW HSM_TAPE_ALLOC statement has been executed.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
See Also: JSS ALLOW.
JSS IGNORE
Description: Ignore Resource Requirements
Type: Action statement.
This statement nullifies the resource counts for the DD statement being examined, effectively causing it to be treated as a DD DUMMY.
JSS IGNORE [RESOURCES | RESET] |
Indicates that the resource counts for this DD statement are to be ignored. This keyword is mutually exclusive with RESET.
Undoes the effect of a previously executed JSS IGNORE statement. This keyword is mutually exclusive with RESOURCES.
Notes:
If more than one JSS IGNORE statement is specified, the last one encountered takes effect.
JSS INCREMENT
Description: Increment Tape Device Resource Requirements
Type: Action statement.
This statement increments the count of devices of a particular type that a job requires, allowing you to account for dynamic allocations. Normally, you would use this statement in TM DAL, since there is no invocation of DAL for a dynamic allocation.
JSS INCREMENT [3480(nnn)] |
3480V(nnn)
3490(nnn)
3490V(nnn)
3590-1(nnn)
Indicates the type of device for which the resource count is to be incremented.
Is a number from 1-255, specifying how many units are to be added to the resource count.
Examples:
This statement increases the resource count by two for $UNIT_3480_ALL and the DBS Drive Pool for 3480 devices.
Notes:
This statement affects the ThruPut Manager base unit counts ($UNIT_devicetype_ALL) for the type of device specified. See the example.
JSS RECALL
Description: Request DFSMShsm Recall.
Type: Action statement.
Specifies whether ThruPut Manager can initiate recalls for a data set that has been migrated to archival storage by DFSMShsm. This statement is ignored if the DD statement does not see to a migrated data set.
JSS RECALL YES | DASD | TAPE | MAX_WAIT(nnn)] |
Indicates that if there is any DFSMShsm migrated data set, a DFSMShsm recall is to be initiated.
Indicates that no DFSMShsm recall is to be initiated. This keyword is mutually exclusive with YES, DASD, TAPE, and MAX_WAIT.
Specifies that a DFSMShsm recall is to be initiated for a migrated data set, regardless of data set location. This keyword is mutually exclusive with NO, DASD, and TAPE.
Specifies that a DFSMShsm recall is to be initiated only for a data set whose catalog entry indicates that it has been migrated to DASD. This keyword is mutually exclusive with NO, YES, and TAPE.
Specifies that a DFSMShsm recall is to be initiated only for a data set whose catalog entry indicates that it has been migrated to tape. This keyword is mutually exclusive with NO, YES, and DASD.
A number from the range 1-999, indicating how many minutes to delay before automatically releasing the job.
Indicates that the job is to be placed in JSS hold, DFSMShsm category. The job will be removed from this hold category automatically when the required data set has been recalled, or after the specified time has expired regardless of whether the data set recall has completed. This keyword is mutually exclusive with NO.
NOTE: If request is also issued by JAL, the higher MAX_WAIT time will be used.
A number from the range 1-999, indicating the maximum number of minutes to wait before automatically releasing the job.
Notes:
The recall request can be reset at any time during the execution of the DAL. When DAL processing is completed, the value from the last JSS RECALL statement executed is used.
If no JSS RECALL statement is executed, the default is 'NO', that is, no DFSMShsm recalls are initiated.
If MAX_WAIT has not been specified, asynchronous DFSMShsm recalls are issued (the job will not be held).
JSS STAGE
Description: Requests Staging for Virtual Volumes
Type: Action Statement.
This statement requests that virtual volumes be staged.
JSS STAGE [ALL(YES |NO) IBM(YES | NO) STORAGETEK(YES | NO) VTAPE(YES | NO)] |
Indicates that this staging request applies to virtual volumes for all vendors. This keyword is mutually exclusive with the IBM, STORAGETEK, and VTAPE keywords.
Indicates that this staging request applies to IBM virtual volumes. This keyword is mutually exclusive with the ALL, STORAGETEK, and VTAPE keywords.
Indicates that this staging request applies to Sun/StorageTek virtual volumes. This keyword is mutually exclusive with the ALL, IBM, and VTAPE keywords.
Indicates that this staging request applies to CA-Vtape virtual volumes. This keyword is mutually exclusive with the ALL, IBM, and STORAGETEK keywords.
For all keywords above:
Requests staging for all the vendor's virtual volumes that need to be staged.
Requests that none of the vendor's virtual volumes be staged. This can be used to undo the effect of a previous JSS STAGE statement.
Indicates the maximum time that the job will be held by JSS for VVS. If staging is complete before this time, the job is released early. This is a required keyword.
NOTE: If request is also issued by JAL, the higher MAX_HOLD time will be used.
Number of minutes from 1 to 999.
$JTS_DATE
UCS ONLY |
Description: JTS "Hold Until" Date
Type: Range Definition Descriptor.
Maximum Value: 9999/366 expressed as year/Julian date.
This Descriptor represents the JTS "hold until" date specified for the job.
$JTS_DATE [0,]name1,yyyy2/ddd2,name2[,...,yyyyN/dddN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired. Starting points are specified as dates as follows:
The year.
The Julian date, including leading zeros.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $JTS_TIME.
Notes:
If the job does not contain a JTS JECL statement, this Descriptor returns a zero value (0000/000).
$JTS_TIME
UCS ONLY |
Description: JTS "Hold Until" Time
Type: Range Definition Descriptor.
Maximum Value: 23:59 expressed as hours:minutes.
This Descriptor represents the JTS "hold until" time specified for the job.
$JTS_TIME [0,]name1,hh2:mm2,name2[,...,hhN:mmN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired. Starting points are specified as dates as follows:
The hour, using the 24 hour clock.
The minute (0-59).
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $JTS_DATE.
Notes:
If the job does not contain a JTS JECL statement, this Descriptor returns a zero value.
$JXFAIL
Description: Test for Job Fail Request
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine if a request has already been made by a DAL RETURN statement to fail the job at the end of JAL processing.
$JXFAIL(NO | YES) |
A value of TRUE is returned if DAL has not requested that the job be failed.
A value of TRUE is returned if DAL has requested that the job be failed.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
$JXJBANY
TM ONLY |
Description: JBS ADD BIND Indicator
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine if at least one JBS ADD BIND statement has been executed without an intervening JBS DELETE BIND statement.
$JXJBANY(NO | YES) |
If $JXJBANY returns a TRUE value, no JBS ADD BIND is active.
If $JXJBANY returns a TRUE value, at least one JBS ADD BIND is active.
Usage:
This Variable can be used in DAL Logic statements, and also as an insert in message definition statements.
Examples:
IF ($JXJBANY(YES))
...
See Also: JBS ADD BIND, JBS DELETE BIND, JBS REPLACE BIND, and $JXJBMAX.
$JXJBMAX
TM ONLY |
Description: Maximum JBS ADD BIND Indicator
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine if you have reached the maximum number of JBS ADD BIND requests allowed in this invocation of DAL. The number is 24.
$JXJBMAX(NO | YES) |
If $JXJBMAX returns a TRUE value, you can make at least one more JBS ADD BIND request.
If $JXJBMAX returns a TRUE value, there are 24 JBS ADD BIND requests active for this DAL. You cannot make additional successful JBS ADD BIND requests.
Usage:
This Variable can be used in DAL Logic statements, and also as an insert in message definition statements.
Examples:
IF ($JXJBMAX(YES))
JBS DELETE BIND
...
See Also: JBS ADD BIND, JBS DELETE BIND, JBS REPLACE BIND, and $JXJBANY.
$JXJLANY
TM ONLY |
Description: JLS ADD LIMIT Indicator
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine if, at least, one JLS ADD LIMIT statement has been executed without an intervening JLS DELETE LIMIT statement.
$JXJLANY(NO | YES) |
If $JXJLANY returns a TRUE value, no JLS ADD LIMIT is active.
If $JXJLANY returns a TRUE value, at least one JLS ADD LIMIT is active.
Usage:
This Variable can be used in DAL Logic statements, and also as an insert in message definition statements.
Examples:
IF ($JXJLANY(YES))
...
See Also: JLS ADD LIMIT, JLS DELETE LIMIT, JLS REPLACE LIMIT, JLS_LIMITDEF, and $JXJLMAX.
$JXJLMAX
TM ONLY |
Description: Maximum JLS ADD LIMIT Indicator
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine if you have reached the maximum number of JLS ADD LIMIT requests allowed in this invocation of DAL. The number is 24.
$JXJLMAX(NO | YES) |
If $JXJLMAX returns a TRUE value, you can make at least one more JLS ADD LIMIT request.
If $JXJLMAX returns a TRUE value, there are 24 JLS ADD LIMIT requests active for this DAL. You cannot make additional successful JBS ADD LIMIT requests.
Usage:
This Variable can be used in DAL Logic statements, and also as an insert in message definition statements.
Examples:
IF ($JXJLMAX(YES))
JLS DELETE LIMIT
...
See Also: JLS ADD LIMIT, JLS DELETE LIMIT, JLS REPLACE LIMIT, JLS_LIMITDEF, and $JXJLANY.
$JXMHS_HOLD
Description: MHS HOLD Status Indicator
Type: Logic Variable.
Maximum Length: Not applicable.
This Logic Variable allows you to determine if at least one MHS ADD statement has been executed without an intervening MHS DELETE statement.
$JXMHS_HOLD(NO | YES) |
If $JXMHS_HOLD returns a TRUE value, no MHS ADD has been applied to the job.
If $JXMHS_HOLD returns a TRUE value, at least one MHS ADD has been applied to the job.
Usage:
This Variable can be used in DAL Logic statements, and also as an insert in message definition statements.
See Also: MHS ADD, MHS REPLACE, and MHS DELETE.
$JXVTAPE
Description: Display VTAPE Setting
Type: Display Variable.
Maximum Value: 3 characters.
This is a DAL execution time Display Variable. It allows you to display the value set by a previous VTAPE SET statement.
$JXVTAPE |
This is a valid insert in a MSGDEF statement.
If no VTAPE SET statement has been executed, or a VTAPE SET VIRTUAL(NO) statement has been executed, 'NO' is printed.
If VTAPE SET VIRTUAL(YES) was specified, 'YES' is printed.
Usage:
This Variable can be used only as an insert in message definition statements.
See Also: VTAPE SET.
$LAST_DAY_OF_MONTH
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether or not today is the last day of a month.
$LAST_DAY_OF_MONTH(YES | NO) |
This descriptor l returns a TRUE/FALSE value depending on whether today is the last day of a month.
Today is the last day of the month.
Today is not the last day of the month.
Usage:
This Variable can be used in DAL Logic statements.
Examples:
$LINES
Description: Output Lines
Type: Range Definition Descriptor.
Maximum Value: 999999 expressed in thousands of lines.
This Descriptor represents the estimated number of output lines.
$LINES [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified in thousands of lines as 1-6 decimal digits.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $BYTES, $CARDS, and $PAGES.
$MEMBER
Description: PDS Member Name
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor represents the member name from the DD statement being analyzed.
$MEMBER($BLANK | pattern | %patid | table-id) |
Allows you to test for an "all blanks" condition. See Notes below.
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters, the first of which must be alphabetic or national. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$MEMBER(???PARMS)
$MEMBER($TABLE2(MEMBERS))
See Also: $BLANK.
Notes:
If no member name was coded, this Descriptor returns blanks. You can test for this condition by using the reserved word $BLANK. Note that the absence of a member name is not a reliable means of determining that the data set is not a PDS.
$MEMLIMIT
Description: Limit for Number of Usable Virtual Pages Above the Bar
Type: Range Definition Descriptor.
Maximum Value: 99999999999999 megabytes.
This Descriptor represents the limit on the number of usable virtual pages above the bar specified by the MEMLIMIT keyword on the EXEC statement in a z/Architecture environment.
$MEMLIMIT [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
Notes:
Although the MEMLIMIT keyword allows the user to code a value in megabytes, gigabytes, terabytes, or petabytes, the value returned by $MEMLIMIT is always in megabytes.
When $MEMLIMIT range descriptor is used to display the current MEMLIMIT value, it will be displayed as nnnnnx where x is: M, G, T or P.
MHS ADD
Description: Add MHS_JAL Hold to a Job
Type: Action statement.
This statement allows you to place a job in MHS_JAL hold, optionally including a note.
MHS ADD HOLD(identifier | %stringid) NOTES(notes | %stringid) |
Indicates that you want to place the job in MHS_JAL hold.
Is 1-8 alphabetic, numeric, or national (@, $ or #) characters, specifying an identifier that can be used to group jobs for easier management.
Is the name of a dynamically constructed character string that has been defined with a STRINGDEF statement.
Specifies additional information that can be displayed.
A string of 1-200 characters of additional information. If special characters are used, the string must be enclosed in quotes.
As above.
See Also: $JXMHS_HOLD, MHS DELETE and MHS REPLACE.
MHS DELETE
Description: Remove MHS_JAL Hold from a Job
Type: Action statement.
This statement allows you to remove from the job a previously added or replaced MHS_JAL hold.
MHS DELETE HOLD(identifier | %stringid) | ALL_HOLDS |
Indicates that you want to remove the MHS_JAL hold.
Is 1-8 alphabetic, numeric, or national (@, $ or #) characters, specifying an identifier that can be used to group jobs for easier management.
Is the name of a dynamically constructed character string that has been defined with a STRINGDEF statement.
Indicates that you want to remove all MHS HOLDs that have been applied to the job.
See Also: $JXMHS_HOLD, MHS ADD and MHS REPLACE.
Notes:
This facility covers situations where in your main logic you might MHS ADD or MHS REPLACE an MHS HOLD request that in your "exception conditions" logic you might want to eliminate.
If no MHS ADD or MHS REPLACE request has been previously executed, this statement is ignored.
MHS REPLACE
Description: Replace MHS_JAL Hold for a Job
Type: Action statement.
This statement allows you to replace a previously added MHS_JAL hold, optionally including a note.
MHS REPLACE HOLD(identifier | %stringid) NOTES(notes | %stringid) |
Indicates that you want to replace the MHS_JAL hold for this job.
Is 1-8 alphabetic, numeric, or national (@, $ or #) characters, specifying an identifier that can be used to group jobs for easier management.
Is the name of a dynamically constructed character string that has been defined with a STRINGDEF statement.
Specifies additional information that can be displayed.
A string of 1-16 characters of additional information. If special characters are used, the string must be enclosed in quotes.
As above.
See Also: $JXMHS_HOLD, MHS ADD and MHS DELETE.
$MHS_USER_HOLD#
Description: Number of /*MHS_USER HOLD JECL Statements
Type: Range Definition Descriptor.
Maximum Value: 24 statements.
This Descriptor represents the number of /*MHS_USER HOLD JECL statements found in the job stream.
$MHS_USER_HOLD# [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
MODELDEF
Description: Message Definition
Type: Definition statement.
Maximum Length: Messages exceeding 121 characters are truncated.
This statement allows you to define a model message with inserts that allow the message to be used repetitively. You can define a message that combines your text with any Descriptor or Property.
MODELDEF name (message) CONSOLE_UCM(ucm) [DESC(desc-list)] |
A name used as the message identifier, consisting of 1-24 alphabetic, numeric, national (#, @, $), or underscore characters. The first character cannot be a dollar sign ($) or underscore (_). This operand is positional and required.
The text of the message, using the form:
The message can consist of a combination of text and Job Descriptors and Properties, in any order. Text is enclosed in apostrophes ('). To code an apostrophe, two consecutive apostrophes must be used. Each portion of the message is separated from the others by commas.
This is an optional text definition construct that indicates you want column alignment.
This must be coded as shown.
Specifies the reference column, and can be a value from 1 to 60.
Specifies the desired alignment, and must be one of:
- L, indicating left alignment.
- R, indicating right alignment.
The considerations for data alignment are:
- For left-aligned data, the column number represents the first column for the first character of data, and subsequent characters are inserted on the left, i. e. in ascending column order.
- For right-aligned data, the column number represents the last column for the last character of data, and subsequent characters are inserted on the right, i. e. in descending column order.
- If you miscalculate and some of your data is overlaid, it might help you solve your problem if you remember that alignment is performed element by element from left to right.
A description of the text to be displayed. For variable, this can be any Job Descriptor or Job Property. 'hard-coded text' can be any text. After any substitution required for the variable text is resolved, the maximum length must not exceed the limit allowed. This includes the "blanks" that have to be inserted to satisfy the alignment. Data lines longer than the maximum length are truncated.
The basic rules when building a line of text are:
- Separate each element with commas.
- Include text within apostrophes ('). To code an apostrophe in the text to be displayed, you must use two consecutive apostrophes.
- When formatting text lines, also keep the following in mind:
- To separate Job Descriptors and Job Properties from your text, you must insert padding blanks.
- Character string Job Descriptors are left-justified, stripped of trailing blanks.
- Job Properties and Logic Variables print 'T' for TRUE and 'F' for FALSE.
- For the values displayed for Display Variables (variables with a name starting with $JX) see to the description for the variable.
- EVENT Switches display as 'ON' and 'OFF'.
- Numeric Job Descriptors are right-justified, stripped of leading zeros.
- For numeric Descriptors, the inserted value is in the units normally used for that Job Descriptor. For example, CPU time is shown in minutes and seconds.
- A value in thousands is shown by the character K.
- A value in millions is shown by the character M.
- Lines that are longer than the maximum length of 121 characters are truncated.
For a complete discussion of the facilities provided for formatting messages and displays, see to "Section. Defining-and-using-messages-and-displays" in the publication DAL and JAL User Guide.
Specifies a valid console name to which the message is written.
This keyword is mutually exclusive with CONSOLE_UCM and ROUTCDE.
Is a 2-8 character console name, consisting of alphabetic, national (#, @, $), or numeric characters, the first of which must be alphabetic or national.
Indicates UCMID of the console to which the message is written.
This keyword is mutually exclusive with CONSOLE_NAME and ROUTCDE.
A decimal number between 0-99 inclusive.
DESC(desc-list)
Indicates the descriptor code of the message.
A list of the form (d1[,d2,...,d16]), where dn represents a decimal numbers between 1-16 inclusive.
Indicates the routing code of the message.
This keyword is mutually exclusive with CONSOLE_NAME and CONSOLE_UCM.
A list of the form (rc1[,rc2,...,rc128]) where rcn represents a decimal number between 1-128 inclusive.
$MSGCLASS_OUTCLASS_DUMMY
Description: Dummy Associated with MSGCLASS
Type: Logic Variable.
Maximum Length: 3 characters.
This Descriptor allows you to determine whether the job's MSGCLASS was specified as a dummy class by JES2 initialization.
$MSGCLASS_OUTCLASS_DUMMY(value) |
Is the value that will cause this Descriptor to be set to TRUE, and can be one of:
N
NO
Y
YES
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
Examples:
In this example, if JES2 initialization has specified that the current MSGCLASS is to be treated as a dummy class, the Property MSGCLASS_DUMMY evaluates to TRUE.
$MSGCLASS_OUTDISP_ABNORM
Description: Abnormal Disposition Associated with MSGCLASS
Type: Character string Descriptor.
Maximum Length: 5 characters.
This Descriptor represents the output disposition for abnormal job termination that is associated with the job's MSGCLASS by JES2 initialization.
$MSGCLASS_OUTDISP_ABNORM(disposition) |
Is the disposition that will cause this Descriptor to assume a TRUE value, and can be one of:
HOLD
KEEP
LEAVE
PURGE
WRITE
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
• In JLS_LIMITDEF and JLS_CNTLDEF statements.
Examples:
In this example, if JES2 initialization has assigned the current MSGCLASS a disposition of PURGE for jobs that terminate abnormally, the Property MSGCLASS_ABNORM_PURGE evaluates to TRUE.
$MSGCLASS_OUTDISP_NORM
Description: Normal Disposition Associated with MSGCLASS
Type: Character string Descriptor.
Maximum Length: 5 characters.
This Descriptor represents the output disposition for normal job termination that is associated with the job's MSGCLASS by JES2 initialization.
$MSGCLASS_OUTDISP_NORM(disposition) |
Is the disposition that will cause this Descriptor to assume a TRUE value, and can be one of:
HOLD
KEEP
LEAVE
PURGE
WRITE
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
• In JLS_LIMITDEF and JLS_CNTLDEF statements.
Examples:
In this example, if JES2 initialization has assigned the current MSGCLASS a disposition of HOLD for jobs that terminate normally, the Property MSGCLASS_NORM_HOLD evaluates to TRUE.
MSGDEF | MSG
Description: Message Definitions
Type: Definition statement.
Maximum Length: Messages exceeding 121 characters (60 characters for CA7) are truncated.
DAL provides a way to communicate with either or both of the operations staff and the job submitter. You can define message text that includes any Descriptor or Property combined with your text.
MSGDEF name (message) CA7LTERM(terminal) MSGDEF name (message) CONSOLE_NAME(console) [DESC(desc-list)] [LOG] MSGDEF name (message) CONSOLE_UCM(ucmid) [DESC(desc-list)] [LOG] MSGDEF name (message) ROUTCDE(routecde-list) [DESC(desc-list)] [LOG] MSGDEF name (message) USERID(userid | %stringid) |
A name used as the message identifier, consisting of 1 to 24 alphabetic, numeric, national (#, @, $), or underscore (_) characters. The first character cannot be a dollar sign ($) or underscore (_). This operand is positional and required.
To issue the message defined by this statement, use this name with the Communication statements SEND, WTCA7, WTO, and WTU.
The text of the message, using the form:
The message can consist of a combination of text and Descriptors and Properties, in any order. Text is enclosed in apostrophes ('). To code an apostrophe, two consecutive apostrophes must be used. Each portion of the message is separated from the others by commas.
This is an optional text definition construct that indicates you want column alignment.
This must be coded as shown.
Specifies the reference column, and can be a value from 1 to 60.
Specifies the desired alignment, and must be one of:
- L, indicating left alignment.
- R, indicating right alignment.
The considerations for data alignment are:
- For left-aligned data, the column number represents the first column for the first character of data, and subsequent characters are inserted on the left, i. e. in ascending column order.
- For right-aligned data, the column number represents the last column for the last character of data, and subsequent characters are inserted on the right, i. e. in descending column order.
- If you miscalculate and some of your data is overlaid, it might help you solve your problem if you remember that alignment is performed element by element from left to right.
A description of the text to be displayed. For variable, this can be any Descriptor or Property. 'hard-coded text' can be any text. After any substitution required for the variable text is resolved, the maximum length must not exceed the limit allowed. This includes the "blanks" that have to be inserted to satisfy the alignment. Data lines longer than the maximum length are truncated.
The basic rules when building a line of text are:
- Separate each element with commas.
- Include text within apostrophes ('). To code an apostrophe in the text to be displayed, you must use two consecutive apostrophes.
- When formatting text lines, also keep the following in mind:
- To separate Descriptors and Properties from your text, you must insert padding blanks.
- Character string Descriptors are left-justified, stripped of trailing blanks.
- Properties and Logic Variables print 'T' for TRUE and 'F' for FALSE.
- For the values displayed for Display Variables (variables with a name starting with $JX) see to the description for the variable.
- Numeric Descriptors are right-justified, stripped of leading zeros.
- For numeric Descriptors, the inserted value is in the units normally used for that Descriptor. For example, job CPU time is shown in minutes and seconds.
- A value in thousands is shown by the character K.
- A value in millions is shown by the character M.
- Lines that are longer than the maximum length are truncated:
- For messages issued by WTO and WTU, lines longer than 121 characters including the resolved length of any Descriptors are truncated.
- For messages issued by WTCA7, lines longer than 60 characters including the resolved length of any Descriptors are truncated. If a message issued by WTCA7 contains commas, parentheses are added automatically for you.
For a complete discussion of the facilities provided for formatting messages and displays, see to "Section. Defining-and-using-messages-and-displays" in the publication DAL and JAL User Guide.
Indicates a CA7 terminal to which a message is written using WTCA7.
This keyword is mutually exclusive with CONSOLE_NAME, CONSOLE_UCM, and ROUTCDE.
Is a valid 1 to 8 character CA7 logical terminal name.
Specifies a valid console name to which a message is written using WTO.
This keyword is mutually exclusive with CA7LTERM, CONSOLE_UCM, ROUTCDE, and USERID.
If the message is written using WTU, this keyword is ignored.
Is a 2-8 character console name, consisting of alphabetic, national (#, @, $), or numeric characters, the first of which must be alphabetic or national.
Indicates UCMID of the console to which a message is written using WTO.
This keyword is mutually exclusive with CA7LTERM, CONSOLE_NAME, ROUTCDE, and USERID.
If the message is written using WTU, this keyword is ignored.
A decimal number between 0-99 inclusive.
Indicates the descriptor code of a message written using WTO.
If the message is written using WTU, this keyword is ignored.
A list of the form (d1[,d2,...,d16]), where dn is a decimal number between 1-16 inclusive.
This keyword is applicable only to messages issued with a WTU.
When LOG is coded, the messages appears in the job log.
If LOG is not coded, the default for a WTU is the job's SYSMSGS file.
This keyword is ignored for a WTO.
Indicates the routing code of a message written using WTO.
This keyword is mutually exclusive with CA7LTERM, CONSOLE_NAME, CONSOLE_ UCM, and USERID.
If the message is written using WTU, this keyword is ignored.
A list of the form (rc1[,rc2,...,rc128]) where rcn is a decimal number between 1-128 inclusive.
Specifies a TSO user ID to which the message is to be sent. If the user is not logged on, the message is received at the next logon.
This keyword is mutually exclusive with CA7LTERM, CONSOLE_NAME, CONSOLE_ UCM, and ROUTCDE.
If the message is not written using SEND, this keyword is ignored.
You can specify the name of a dynamically constructed character string that has been defined with a STRINGDEF statement.
Examples:
MSGDEF BAD_ACCT_MSG ($ACCT,’ IS AN INVALID ACCOUNT.’) LOG
MSGDEF SAMPLE_MSG (‘MESSAGE WITH NO INSERTS.’) ROUTCDE(29)
MSG AUTO_MSG (‘STEP ‘,$STEPNAME,’ USES ‘,$VOL_AUTO,’ AUTOMATED VOLUMES.’) +
CONSOLE_NAME(LIB)
See Also: SEND, WTCA7, WTO, and WTU.
$NEWDSN
Description: New data set Indicator
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine if the data set being processed is new.
$NEWDSN(NO | YES) |
Returns a TRUE value if this is not a NEW data set.
Returns a TRUE value if this is a NEW data set.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
$NJEUSER | $NJEU
Description: NJE Userid From JES2 Network Job Header
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor represents the userid in the JES2 network job header.
$NJEUSER(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters, the first of which must be alphabetic or national. It can also include the wildcard characters '?' and '*'.
If the job was submitted from a virtual machine and forwarded to JES2 through RSCS, this field contains the VM userid.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$NJEUSER(ACCTNG)
$NJEU(ENGNEER)
$NJEU($TABLE1(USERS))
$NOTIFY
Description: NOTIFY Parameter From JOB Statement or /*NOTIFY
Type: Character string Descriptor.
Maximum Length: 7 characters.
This Descriptor represents the NOTIFY parameter from the JOB statement or the userid from the /*NOTIFY statement.
$NOTIFY(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-7 alphabetic, numeric, or national (#, @, $) characters, the first of which must be alphabetic or national. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$NOTIFY(SYSTEMS)
$NOTIFY(AB111)
$NOTIFY($TABLE5(USERS))
ORIF
Description: Specify Alternative IF Statement
Type: Logic statement.
The ORIF statement is used together with a previous IF statement and possibly previous ORIF statement(s), and specifies an expression to be evaluated when the IF and all preceding ORIF statements have a FALSE value.
IF (expression1) |
A Job Property, Descriptor, or expression combining Job Properties and/or Descriptors. This expression is only evaluated when the IF statement and all prior ORIF statements, if any, have resulted in a FALSE value.
The action statements to be executed when the ORIF expression evaluates to TRUE. After completion of the action statements, execution then resumes at the statement that follows the ENDIF.
Examples:
IF (ILLEGAL)
WTU ERROR1
RETURN FAIL
ORIF(MOUNT)
SET CLASS(H)
RETURN CONTINUE
OTHERWISE
SET CLASS(I)
RETURN CONTINUE
ENDIF
See Also: ELSE, ENDIF, IF, and OTHERWISE.
Notes:
Any number of ORIF statements can be used as part of an IF construction. ORIF expressions are only evaluated if the IF expression and all previous ORIF statements evaluate as FALSE.
Once an ORIF evaluates as TRUE, the actions specified are taken, and DAL execution resumes after the next ENDIF.
$ORIGINAL_INSYSID
Description: Determine the Original System ID if the Job Came from Another Node.
Type: Character string Descriptor.
Maximum Length: 4 characters.
This Descriptor represents the JES2 system ID where the job was originally read. If the job was submitted at node X and transmitted to node Y, $ORIGINAL_INSYSID would be the system at node X that read the job.
$ORIGINAL_INSYSID(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-4 alphabetic, numeric, or national (#, @, $) characters. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
• In JLS_LIMITDEF and JLS_CNTLDEF statements.
Examples:
In this case, for $ORIGINAL_INSYSID to return a TRUE value, the job must have been submitted on 'SYS1'.
See Also: $INSYSID
Notes:
If job did not come from another node the value of this descriptor will contain the same value as $INSYSID.
OTHERWISE
Description: Specify Alternative Action
Type: Logic statement.
The OTHERWISE statement is part on an IF logical construction. It must follow at least one ORIF statement, and specifies the alternate action(s) taken when the expression evaluated with the IF and any previous ORIF statement resulted in FALSE values.
IF (expression) |
A logical expression combining Job Properties and/or Descriptors.
Any valid DAL statements which are to be performed should the IF or the ORIF expression evaluate to TRUE.
Any valid DAL statements which are to be performed should the IF and ORIF expressions evaluate to FALSE.
See Also: ELSE, ENDIF, IF, and ORIF.
Examples:
IF (ILLEGAL)
WTU ERROR1
RETURN FAIL
ORIF(MOUNT)
SET CLASS(H)
RETURN CONTINUE
OTHERWISE
SET CLASS(I)
RETURN CONTINUE
ENDIF
Notes:
OTHERWISE statements are used in IF logical constructions when there is at least one ORIF statement. The OTHERWISE statement is mutually exclusive with the ELSE statement.
$PAGES
Description: Output Pages
Type: Range Definition Descriptor.
Maximum Value: 99999 expressed in 1000's of pages.
This Descriptor represents the estimated number of output pages.
$PAGES [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified in number of pages as 1-5 decimal digits.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $BYTES, $CARDS, and $LINES.
$PATH
Description: Name of an HFS File
Type: Character string Descriptor.
Maximum Length: 254 characters.
This Descriptor allows you to determine the path name (name for the HFS file) currently being processed by DAL.
$PATH(pattern | %patid | table-id) |
This is a hard-coded valid path name pattern (name of a file in an HFS) to be matched against the data set name on the DD statement being processed.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned. See the Notes below for further information.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Example:
EVALUATE HFS_FILE ($PATH(Z5900/**/DOCUMENTS))
...
IF (HFS_FILE)
...
See Also: $DATASET_ON, $DDTYPE, $JCL_DSNTYPE, $JCL_FILEDATA, $PATHDISP1, $PATHDISP2, $PATHMODE and $PATHOPTS.
Notes:
The path name pattern follows the same conventions as the pattern for data set names, as described in "Section. Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide, with these exceptions:
• The delimiters are slashes (/) rather than periods (.).
• Qualifiers (characters between slashes) can be larger than 8 characters.
$PATHDISP1
Description: Normal Termination Disposition of an HFS File
Type: Logic Variable.
Maximum Length: Not applicable.
This Logic Variable lets you determine the normal termination disposition of an HFS file.
$PATHDISP1($BLANK | DELETE | KEEP) |
Allows you to test for an "all blanks" condition.
Indicates that you want to know whether the DELETE normal termination subparameter was coded for the PATHDISP keyword on the DD statement. If DELETE was coded, $PATHDISP1 returns a TRUE value.
Indicates that you want to know whether the KEEP normal termination subparameter was coded for the PATHDISP keyword on the DD statement. If KEEP was coded, $PATHDISP1 returns a TRUE value.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
See Also: $DATASET_ON, $DDTYPE, $JCL_DSNTYPE, $JCL_FILEDATA, $PATH, $PATHDISP2, $PATHMODE and $PATHOPTS.
$PATHDISP2
Description: Abnormal Termination Disposition of an HFS File
Type: Logic Variable.
Maximum Length: Not applicable.
This Logic Variable lets you determine the abnormal termination disposition of an HFS file.
$PATHDISP2($BLANK | DELETE | KEEP) |
Allows you to test for an "all blanks" condition.
Indicates that you want to know whether the DELETE abnormal termination subparameter was coded for the PATHDISP keyword on the DD statement. If DELETE was coded, $PATHDISP2 returns a TRUE value.
Indicates that you want to know whether the KEEP abnormal termination subparameter was coded for the PATHDISP keyword on the DD statement. If KEEP was coded, $PATHDISP2 returns a TRUE value.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
See Also: $DATASET_ON, $DDTYPE, $JCL_DSNTYPE, $JCL_FILEDATA, $PATH, $PATHDISP1, $PATHMODE and $PATHOPTS.
$PATHMODE
Description: Access Attributes of an HFS File
Type: Logic variable.
Maximum Length: Not applicable.
This Logic Variable lets you determine the access attributes of an HFS file.
$PATHMODE(SIRUSR | SIWUSR | SIXUSR | SIRWXU | |
Indicates that you want to know whether the SIRUSR subparameter was coded for the PATHMODE keyword on the DD statement. If SIRUSR was coded, $PATHMODE returns a TRUE value.
Indicates that you want to know whether the SIWUSR subparameter was coded for the PATHMODE keyword on the DD statement. If SIWUSR was coded, $PATHMODE returns a TRUE value.
Indicates that you want to know whether the SIXUSR subparameter was coded for the PATHMODE keyword on the DD statement. If SIXUSR was coded, $PATHMODE returns a TRUE value.
Indicates that you want to know whether the SIRWXU subparameter was coded for the PATHMODE keyword on the DD statement. If SIRWXU was coded, $PATHMODE returns a TRUE value.
Indicates that you want to know whether the SIRGRP subparameter was coded for the PATHMODE keyword on the DD statement. If SIRGRP was coded, $PATHMODE returns a TRUE value.
Indicates that you want to know whether the SIWGRP subparameter was coded for the PATHMODE keyword on the DD statement. If SIWGRP was coded, $PATHMODE returns a TRUE value.
Indicates that you want to know whether the SIXGRP subparameter was coded for the PATHMODE keyword on the DD statement. If SIXGRP was coded, $PATHMODE returns a TRUE value.
Indicates that you want to know whether the SIRWXG subparameter was coded for the PATHMODE keyword on the DD statement. If SIRWXG was coded, $PATHMODE returns a TRUE value.
Indicates that you want to know whether the SIROTH subparameter was coded for the PATHMODE keyword on the DD statement. If SIROTH was coded, $PATHMODE returns a TRUE value.
Indicates that you want to know whether the SIWOTH subparameter was coded for the PATHMODE keyword on the DD statement. If SIWOTH was coded, $PATHMODE returns a TRUE value.
Indicates that you want to know whether the SIXOTH subparameter was coded for the PATHMODE keyword on the DD statement. If SIXOTH was coded, $PATHMODE returns a TRUE value.
Indicates that you want to know whether the SIRWXO subparameter was coded for the PATHMODE keyword on the DD statement. If SIRWXO was coded, $PATHMODE returns a TRUE value.
Indicates that you want to know whether the SISUID subparameter was coded for the PATHMODE keyword on the DD statement. If SISUID was coded, $PATHMODE returns a TRUE value.
Indicates that you want to know whether the SISGID subparameter was coded for the PATHMODE keyword on the DD statement. If SISGID was coded, $PATHMODE returns a TRUE value.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
See Also: $DATASET_ON, $DDTYPE, $JCL_DSNTYPE, $JCL_FILEDATA, $PATH, $PATHDISP1, $PATHDISP2, and $PATHOPTS.
$PATHOPTS
Description: Access or Status Group for an HFS File
Type: Logic variable.
Maximum Length: Not applicable.
This Logic variable allows you to determine the access or status group set for an HFS file by the PATHOPTS keyword on the DD statement.
$PATHOPTS($BLANK | ORDONLY | OWRONLY| ORDWR | OAPPEND | OCREAT | |
Allows you to test for an "all blanks" condition.
Indicates that you want to know whether the ORDONLY subparameter was coded for the PATHOPTS keyword on the DD statement. If ORDONLY was coded, $PATHOPTS returns a TRUE value.
Indicates that you want to know whether the OWRONLY subparameter was coded for the PATHOPTS keyword on the DD statement. If OWRONLY was coded, $PATHOPTS returns a TRUE value.
Indicates that you want to know whether the ORDWR subparameter was coded for the PATHOPTS keyword on the DD statement. If ORDWR was coded, $PATHOPTS returns a TRUE value.
Indicates that you want to know whether the OAPPEND subparameter was coded for the PATHOPTS keyword on the DD statement. If OAPPEND was coded, $PATHOPTS returns a TRUE value.
Indicates that you want to know whether the OCREAT subparameter was coded for the PATHOPTS keyword on the DD statement. If OCREAT was coded, $PATHOPTS returns a TRUE value.
Indicates that you want to know whether the OEXCL subparameter was coded for the PATHOPTS keyword on the DD statement. If OEXCL was coded, $PATHOPTS returns a TRUE value.
Indicates that you want to know whether the ONONCTTY subparameter was coded for the PATHOPTS keyword on the DD statement. If ONONCTTY was coded, $PATHOPTS returns a TRUE value.
Indicates that you want to know whether the ONONBLOCK subparameter was coded for the PATHOPTS keyword on the DD statement. If ONONBLOCK was coded, $PATHOPTS returns a TRUE value.
Indicates that you want to know whether the OSYNC subparameter was coded for the PATHOPTS keyword on the DD statement. If OSYNC was coded, $PATHOPTS returns a TRUE value.
Indicates that you want to know whether the OTRUNC subparameter was coded for the PATHOPTS keyword on the DD statement. If OTRUNC was coded, $PATHOPTS returns a TRUE value.
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements. This Descriptor can also be used as an insert in message definition statements.
See Also: $DATASET_ON, $DDTYPE, $JCL_DSNTYPE, $JCL_FILEDATA, $PATH, $PATHDISP1, $PATHDISP2 and $PATHMODE.
pattern matching function
Description: To match a pattern against a string
Type: Pattern Matching Function.
Maximum Value: Not applicable.
This is a built-in function provided to allow the interrogation of a character Descriptor to see whether its contents match a pattern.
Descriptor-name(pattern) |
A Descriptor that contains character strings.
The pattern to be used in the comparison, resulting in either a TRUE (equal) or FALSE (not equal) value returned by the function.
Patterns must be constructed according to the rules listed below.
Usage:
This function can be used in EVALUATE and DAL Logic statements. It returns a TRUE/FALSE value.
Examples:
The pattern matching function can be viewed as having a "left" portion and a "right" portion.
• On the left is a Descriptor name, which represents a field containing a character string.
• On the right is a pattern that is matched against the character string contained in the Descriptor named on the left.
Here is an example of how this function works:
The Descriptor $ACCT contains the character string representing the account number for the job. If it happens to be 'MMPAY910', the function returns a value of TRUE, otherwise it returns a value of FALSE.
This function can be tested by an IF or EVAL statement and the outcome used to determine what actions to take:
Rules:
General Pattern Matching Rules
• If the pattern you want to specify includes blanks, or any non-alphabetic, numeric, or national characters then you enclose it in single quote marks, also known as apostrophes.
• In patterns, the question mark '?' and asterisk '*' characters have special meanings, and are called "wildcard" characters.
– A question mark indicates that this position in the pattern is to be ignored. Any character satisfies the match, including a blank. There must be a character in that position.
– An asterisk indicates that any number of characters can be substituted for it in the target string, including blanks or the absence of any character. Note that the asterisk can either be at the beginning of the pattern, at the end of the pattern, or in both places. An asterisk cannot appear in the middle of a string as a wild character.
– If the question mark or the asterisk character is encountered in a string enclosed within apostrophes it is still treated as a wildcard character.
• If you want a question mark or an asterisk to be treated as a normal character, you must use the escape character double quote ( " ) in front of it.
– A question mark or asterisk immediately following the escape character does not signify a wildcard character (i.e., it has no special meaning). For example, in the string A"? the question mark is not a wildcard character.
– If you want to match on the escape character then use two double quote ( "" ) characters in succession. For example, you would code A""B if you wanted to match A"B.
– The character following the escape character ( " ) must be either a wildcard character (* or ?) or another escape character ( " ). Any other character is flagged as an error.
• The length of the pattern is extended on the right with blanks until it matches the length of the Descriptor string. A pattern longer than the maximum allowed for the Descriptor is invalid.
Dataset Name Pattern Matching Rules
• The question mark is used in the same manner as when matching character strings, but it works at the qualifier level.
• The asterisk is used in the same manner as when matching character strings, but it works at the qualifier level.
• An asterisk matches any character or number of characters, but only affects the qualifier in which it is used. The question mark requires the presence of a character but only within the qualifier where it is coded.
• Coding an asterisk (for example, A.*.B) implies that there is a qualifier at that position.
• The special pattern '**' (two asterisks coded in succession) matches any number of qualifiers, including the absence of a qualifier. This is used in place of complete qualifiers. For example, A.**.B matches A.B, A.X.B, A.X.Y.B, and so on.
PATTERNDEF
Description: To Construct Patterns Dynamically
Type: Definition statement.
Maximum Value: 255 characters.
A pattern definition statement is provided to allow you to create patterns dynamically at DAL execution time.
PATTERNDEF %patid (source1) [ || (source2)] |
Is the identification name for the pattern that is created with this statement. The first character must be %, followed by 1 to 23 alphabetic, numeric, national (#, @, $), or underscore (_) characters. The name must be unique.
Up to two source fields can used for the construction of the pattern. If you want to construct a pattern from more than two sources then you have to use multiple PATTERNDEF statements, where 'source' is a %patid from a previously constructed pattern.
Represents the first field or value to be used for the construction of the pattern.
A pattern can be constructed from one, and only one, of the following sources:
– A 'hard-coded character string' enclosed in quotation marks. For example:
– A character Descriptor. For example:
The length of the pattern is the length of the Descriptor.
– The substring function. For example:
Here, at DAL execution time, the first 5 characters contained in $USERC1 are used. For an explanation of the substring function see to substring function.
– %PATID
A previously defined pattern. You specify the pattern id.
– %STRID
A previously defined character string, created by a STRINGDEF statement. You specify the string id.
Indicates that source2 is to be concatenated to source1.
If present, the same rules as source1.
Usage:
A %patid can be used in any construct that allows pattern matching.
Examples:
Let us assume that in your installation the first three characters of the job name must match the third, fourth, and fifth characters of the job account. There are several ways of doing this. The following is one possible way.
Treat the job name as your character string. Then use the PATTERNDEF to create a matching pattern using the $ACCOUNT Descriptor.
The above statement creates a pattern with the desired 3 characters from the account field and the wildcard character '*'. The name of this pattern is %1ST_3_ACCT_CHARS.
Then you can code an EVALUATE statement:
The Property JOB_OK is TRUE only when the first three characters of the job name and the third, fourth, and fifth characters of the job account are equal.
Notes:
With PATTERNDEF the characters ‘*’ or ‘?’, unless especially noted, are treated as a wildcard character. If you want ‘*’, and ‘?’ not to be treated as wildcard characters you have to use the escape character.
The resulting pattern must be a complete valid pattern even if you intend to use it as part of another PATTERNDEF for the construction of a larger pattern.
PATTERNDEFX | PATDEFX
Description: Extended Pattern Definitions
Type: Definition statement.
Maximum Value: 255 characters.
Pattern definition extensions allow you to check for specific types of data in string Descriptors.
PATTERNDEFX %patid (source) |
Is the identification name for the pattern that is created with this statement. The first character must be %, followed by 1 to 23 alphabetic, numeric, national (#, @, $), or underscore (_) characters. The name must be unique.
Represents value to be used for the construction of the pattern. A pattern can be constructed from any combination of the following sources:
– A quoted string. Characters within a quoted string must match exactly, position for position. For example:
– The wildcard characters (? and *). If '*' is coded, it must be the last character in the pattern. For example:
– A Property defined by a prior STRINGDEF statement. Characters within the string must match exactly, position for position. For example, for a string that must begin with the first three characters of the RACF userid followed by the string 'TEST':
STRINGDEF %RACF_1_2_3 ($RACFU,3)
PATTERNDEFX %TEST_NAME (%RACF_1_2_3,’TEST’)
– One of the special definition characters:
Matches a single alphabetic character.
Matches a single alphabetic or national (#, @, $) character.
Matches a single numeric character.
Matches a single numeric or national (#, @, $) character.
– For example, to test for job names that must begin with 'PROD' followed by three numbers and a letter:
– One or more character sets defined with the CHARSET statement. The position being compared must match one of the characters in the set. To test for a four digit odd number, for example:
CHARSET %ODD (‘13579’)
PATTERNDEFX %TEST_ODD_NUM (###,%ODD)
Usage:
A %patid can be used in any construct that allows pattern matching, except for these statements:
DCS NAG
DCS REPO
See Also: CHARSET, PATTERNDEF, and STRINGDEF.
Notes:
With PATTERNDEFX, to use the wildcard characters '?' and '*' you must code them outside a quoted string. Inside a quoted string, the '?' and '*' characters are not interpreted as wildcards.
$PERFORM
Description: Test for JOB Statement PERFORM Keyword
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the PERFORM= keyword was coded on the JOB statement.
$PERFORM(NO | YES) |
When TRUE, it indicates that the keyword PERFORM= was not coded on the JOB statement.
When TRUE, it indicates that the keyword PERFORM= was coded on the JOB statement.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
Examples:
IF ($PERFORM(YES))
WTU...
See Also: $JOB_PERFORM.
$PGMNAME
Description: Program Name
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor allows you to determine the program name for the step that includes the DD currently being processed by DAL.
$PGMNAME(pattern | %patid | table-id) |
This is a hard-coded string representing a valid program name. It can also include the wildcard characters '?' and '*'. It is matched against the program name for the step that includes the DD statement being processed.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$PGMR
Description: Programmer Name From JOB Statement
Type: Character string Descriptor.
Maximum Length: 20 characters.
This Descriptor represents the programmer name field from the JOB statement.
$PGMR(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-20 alphabetic, numeric, or national (#, @, $) characters. It can also include the period (.) and the wildcard characters '?' and '*'. If pattern contains a blank, or any characters other than those previously listed, it must be enclosed in apostrophes.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$PGMR('APPLICATIONS TESTING')
$PGMR($TABLE1(NAMES))
PROCEDURE | PROC
Description: Indicate Type of Action Language
Type: Language Directive.
This statement is a language directive. Its purpose is to indicate the type of Action Language to be processed. That is, it distinguishes DAL from JAL. It is mandatory to identify DAL.
The short form for this directive is PROC.
PROCEDURE ID(DAL) [TYPE( DCS | SOS | TM )] [DESC(‘description’)] |
Indicates that you are identifying the type of Action Language to be processed.
Specifies that the language is DAL.
This keyword is valid for DAL only. It indicates the type of DAL being processed.
Specifies that DAL is being processed for DCS. This is the default.
Specifies that DAL is being processed for SOS.
Specifies that TM DAL is being processed.
Allows you to specify a description that is included in the output from DISPLAY and REFRESH commands for identification purposes.
Is a string of up to 24 characters, enclosed in apostrophes. To include an apostrophe, code two successive apostrophes.
Examples:
$PROCSTEP
Description: Step Procedure Name
Type: Character string DD Descriptor.
Maximum Length: 8 characters.
This Descriptor allows you to determine the name of the 8-character step procedure name on the EXEC statement. The EXEC statement is associated with the DD statement being processed and is calling an in-stream or a cataloged JCL procedure.
$PROCSTEP($BLANK | pattern | %patid | table-id) |
Allows you to test for an "all blanks" condition.
A hard-coded valid step name pattern to be matched against the step procedure name for the step that includes the DD statement being processed.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
See Also: $BLANK.
$RACFG | $RG
Description: GROUP Parameter From JOB Statement
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor represents the GROUP parameter from the JOB statement.
$RACFG(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters, the first of which must be alphabetic or national. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$RACFG(AP100)
$RG(TESTING)
$RACFG($TABLE1(GROUPS))
See Also: $RACFU and $SUBMITTER_RACFG.
$RACFU | $RU
Description: USER Parameter From JOB Statement
Type: Character string Descriptor.
Maximum Length: 7 characters.
This Descriptor represents the USER parameter from the JOB statement.
$RACFU(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-7 alphabetic, numeric, or national (#, @, $) characters, the first of which must be alphabetic or national. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$RACFU(MKTING)
$RU(OPSSHF2)
$RACFU($TABLE2(USERS))
See Also: $RACFG and $SUBMITTER_RACFU.
Notes:
Under certain circumstances this field may be internally supplied (as opposed to JCL coded). In that case you may want to look at an 8-character field. The Descriptor $RACFU8 is provided for that purpose.
Range
Description: Range Definitions
Type: Definition statement.
Maximum Value: Not applicable.
This is not a Descriptor. It has been included here for completeness. It describes a "type" of definition statement. When a Descriptor can assume one of a range of values, DAL allows you to divide the range up into segments. You assign Property Names and specify the starting point for each segment. With this type of definition, multiple Properties can be defined with a single statement, but only one can assume a TRUE value.
desc [start,]name,[start1,name1,...,startN,nameN] |
The DD or User Descriptor.
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Syntax for specifying the starting point and the permissible range of values depends on the specific Descriptor. See the detailed descriptions.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
It is important to remember that starting points and Property Names are paired. The first Property Name is paired with the starting point 0, by default, even if you omit coding the 0. The starting point always is paired with the following Property Name, and defines the lower end of the named segment. All values below the starting point belong to the previous segment. This enforces a continuous scale, with no overlaps or gaps.
The following rules govern range definition statements:
• Each starting point in a range definition must be higher than any preceding starting point.
• DAL always assumes that a range begins at 0 and ends with the highest legal value for that Descriptor.
• The upper limit for a specific Descriptor is shown in this reference section.
• There is no practical limit to the number of segments that you can define.
• While it is not a syntax error to code a range definition that consists of simply one segment name, this defines a segment that covers all values from 0 to the upper limit for that Descriptor. The defined Property must therefore always be TRUE.
Usage:
This statement can be used only in the DAL definition section.
The following illustrates the conventions used to assign names to segments of a range:
This statement is interpreted as follows:
Where:
is the optional first starting point. All ranges begin with 0, whether it is specifically coded or omitted.
is the Property Name for the segment "less than 1 automated volume" (i.e., no automated cartridges requested).
is the Property Name for the segment "greater than or equal to 1 automated volume but less than 5 automated volumes."
is the Property Name for the segment "greater than or equal to 5 automated volumes but less than 9999 volumes."
Examples:
In this example, the Property NO_AUTO is TRUE for jobs not requiring automated volumes, while the SOME_AUTO Property is TRUE for jobs requiring the use of automated volumes.
$READER_DATE
Description: Reader Date
Type: Display Variable.
Maximum Value: 99.365
This Display Variable provides the date on which the job was read into the system.
$READER_DATE |
Is a valid insert in a MSGDEF statement.
The date is displayed in the form "yy.ddd", where "yy" represents the last two digits of the year and "ddd" represents the Julian date.
Usage:
This Variable can be used only as an insert in message definition statements.
See Also: $READER_DAY_OF_MONTH, $READER_DAY_OF_WEEK, $READER_DAY_OF_YEAR, $READER_MONTH, $READER_TIME, $READER_TIME_OF_DAY, and $READER_YEAR.
$READER_DAY_OF_MONTH
Description: Reader Day of the Month
Type: Range Definition Descriptor.
Maximum Value: 31
This Descriptor provides a number representing the day of the month that the job was read into the system.
$READER_DAY_OF_MONTH [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $READER_DATE, $READER_DAY_OF_WEEK, $READER_DAY_OF_YEAR, $READER_MONTH, $READER_TIME, $READER_TIME_OF_DAY, and $READER_YEAR.
$READER_DAY_OF_WEEK
Description: Reader Day of the Week
Type: Range Definition Descriptor.
Maximum Value: 7
This Descriptor provides a number representing the day of the week that the job was read into the system, with Monday returning a value of 1 and Sunday returning a value of 7.
$READER_DAY_OF_WEEK [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $READER_DATE, $READER_DAY_OF_MONTH, $READER_DAY_OF_YEAR, $READER_MONTH, $READER_TIME, $READER_TIME_OF_DAY, and $READER_YEAR.
$READER_DAY_OF_YEAR
Description: Reader Day of the Year
Type: Range Definition Descriptor.
Maximum Value: 366
This Descriptor provides a number representing the day of the year that the job was read into the system, counting from January 1 as day 1. This is the ddd portion of the Julian date (yyddd).
$READER_DAY_OF_YEAR [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $READER_DATE, $READER_DAY_OF_MONTH, $READER_DAY_OF_WEEK, $READER_MONTH, $READER_TIME, $READER_TIME_OF_DAY, and $READER_YEAR.
$READER_MONTH
Description: Reader Month
Type: Range Definition Descriptor.
Maximum Value: 12
This Descriptor provides a number representing the month that the job was read into the system, with January returning a value of 1 and December returning a value of 12.
$READER_MONTH [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $READER_DATE, $READER_DAY_OF_MONTH, $READER_DAY_OF_WEEK, $READER_DAY_OF_YEAR, $READER_TIME, $READER_TIME_OF_DAY, and $READER_YEAR.
$READER_TIME
Description: Reader Time
Type: Display Variable.
Maximum Value: 23:59:59
This Display Variable provides the time at which the job was read into the system in the format hh:mm:ss, using the 24-hour clock.
$READER_TIME |
Is a valid insert in a MSGDEF statement.
Usage:
This Variable can be used only as an insert in message definition statements.
See Also: $READER_DATE, $READER_DAY_OF_MONTH, $READER_DAY_OF_WEEK, $READER_DAY_OF_YEAR, $READER_MONTH, $READER_TIME_OF_DAY, and $READER_YEAR.
$READER_TIME_OF_DAY
Description: Reader Time of Day
Type: Range Definition Descriptor.
Maximum Value: 23:59
This Descriptor provides the time of day that the job was read into the system, in the format hh:mm, using the 24-hour clock.
$READER_TIME_OF_DAY [00:00,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 00:00, but can be omitted if desired.
Starting points are specified in hours and minutes on a 24-hour clock, with 00:00 representing midnight.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $READER_DATE, $READER_DAY_OF_MONTH, $READER_DAY_OF_WEEK, $READER_DAY_OF_YEAR, $READER_MONTH, $READER_TIME, and $READER_YEAR.
$READER_YEAR
Description: Reader Year
Type: Range Definition Descriptor.
Maximum Value: 9999
This Descriptor provides a number representing the year the job was read into the system, including the century designation. The format is ccyy, for example 2005.
$READER_YEAR [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $READER_DATE, $READER_DAY_OF_MONTH, $READER_DAY_OF_WEEK, $READER_DAY_OF_YEAR, $READER_MONTH, $READER_TIME, and $READER_TIME_OF_DAY.
$REQUIRES_ZOS
Description: Indicate z/OS Release
Type: Range Definition Descriptor.
Maximum Value: 9999.
This Descriptor represents the z/OS release number.
$REQUIRES_ZOS [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified in k-bytes of memory as 1-7 decimal digits.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
$REQUIRES_ZOS 0,No_Req, +
1.11,zOS1_11, +
1.12,zOS1_12, +
1.13,zOS1_13, +
2.1,zOS2_1
$RESTART
Description: Test for Coded Restart=
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable indicates that RESTART= is coded on a job card.
$RESTART(NO | YES) |
RESTART= was not coded on a job card.
RESTART= was coded on a job card.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
Note:
If you code RESTART= step1 it will be considered that RESTART= is not coded.
RETURN
Description: Terminate DAL Processing
Type: Action statement.
The RETURN statement signals ThruPut Manager to terminate DAL processing and continue the analysis process. If coded without a keyword, the RETURN statement indicates to the DAL processor to terminate the execution of DAL normally. If there is another DD statement to be processed, DAL is invoked again. If it was the last DD statement, then JAL is invoked.
RETURN [CONTINUE | DONE | FAIL | FLUSH] |
This optional keyword represents a normal return after the execution of DAL. This is the only valid return from SOS DAL that is being re-driven.
It is the default if no keyword is coded.
This keyword indicates that for the type of DAL being executed, all processing for this job has been completed. If this keyword is used, DAL will not be invoked again even if there are unprocessed DD statements; however, JAL is invoked and JAL processing continues.
This keyword indicates to the DAL processor that the job is to be failed at the end of JAL processing. If there is another DD statement to be processed, DAL is invoked again. If it was the last DD statement, then JAL is invoked. At the end of JAL execution, the job is failed.
You can determine if a RETURN FAIL statement has been executed by testing the logic variable $JXFAIL.
This keyword requests that the job be terminated immediately.
Indicates that SOS DAL is to be reinvoked for the current SYSOUT DD statement and OUTPUT JCL statement (if present), with a copy of the current data set's original information. If the current invocation of SOS DAL resulted from a RETURN REDRIVE, use of this keyword is an error.
Indicates how many times SOS DAL is to be reinvoked for the current SYSOUT DD statement and OUTPUT JCL statement (if present).
Is a number from the range 1-127.
The default for this keyword is 1.
Examples:
IF (NO_SOS)
RETURN DONE
ENDIF
In this case, the Property NO_SOS has been evaluated elsewhere in the DAL logic, and it has been determined that SOS DAL does not apply to this job. The DONE keyword tells the DAL processor not to call SOS DAL again for the job.
IF (ADD_SOME)
RETURN REDRIVE COUNT(2)
ENDIF
This example causes the DAL processor to call SOS DAL 2 more times, using the data set information from the current SYSOUT DD statement and, if present, OUTPUT JCL statement. This has the effect of adding two more SYSOUT data sets.
$ROOM
Description: JES2 Room Number
Type: Character string Descriptor.
Maximum Length: 4 characters.
This Descriptor function represents the JES2 room number.
$ROOM(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-4 alphabetic, numeric, or national (#, @, $) characters, the first of which must be alphabetic or national. It can also include the hyphen (-) and the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$ROOM(1700)
$ROOM(TEST)
$ROOM($TABLE2(ROOMS))
$SAF_ACEE
Description: Extract Substring from SAF Accessor Environment Element
Type: Character string Descriptor.
Maximum Length: 168 characters.
This Descriptor allows you to extract a substring from the SAF Accessor Environment Element.
STRINGDEF %stringid ($SAF_ACEE,length[,start]) |
Is the identification name for the character string that is extracted. The first character must be
% followed by 1 to 23 alphabetic, numeric, national (#, @, $), or underscore (_) characters. The name must be unique.
Is the number of characters to be extracted, from the range 1-168.
Is the starting position within the SAF Accessor Environment Element at which extraction is to begin. If this parameter is omitted, the default is 1 (the first character).Usage:
Usage:
This Descriptor can be used only in STRINGDEF definition statements.
Examples:
In this example, the 20 bytes starting at byte 8 in the SAF Accessor Environment Element are extracted and placed in the string variable %SAF_INFO.
Notes:
This field is padded with blanks before extraction is performed. If no data has been entered into the SAF Accessor Environment Element, STRINGDEF will return a string of blanks.
$SAF_ACEEINST
Description: Extract Substring from Installation Portion of SAF Accessor Environment Element
Type: Character string Descriptor.
Maximum Length: 255 characters.
This Descriptor allows you to extract a substring from the installation portion of the SAF Accessor Environment Element.
STRINGDEF %stringid ($SAF_ACEEINST,length[,start]) |
Is the identification name for the character string that is extracted. The first character must be % followed by 1 to 23 alphabetic, numeric, national (#, @, $), or underscore (_) characters. The name must be unique.
Is the number of characters to be extracted, from the range 1-255.
Is the starting position within the installation portion of the SAF Accessor Environment Element at which extraction is to begin. If this parameter is omitted, the default is 1 (the first character). Usage:
Usage:
This Descriptor can be used only in STRINGDEF definition statements.
Examples:
In this example, the 16 bytes starting at byte 12 in the SAF user information are extracted and placed in the string variable %SAF_USERINFO.
Notes:
This field is padded with blanks before extraction is performed. If no data has been entered into the installation portion of the SAF Accessor Environment Element, STRINGDEF will return a string of blanks.
$SAF_USERNAME
Description: Extract Substring from SAF User Name
Type: Character string Descriptor.
Maximum Length: 20 characters.
This Descriptor allows you to extract a substring from the SAF user information.
STRINGDEF %stringid ($SAF_USERNAME,length[,start]) |
Is the identification name for the character string that is extracted. The first character must be
% followed by 1 to 23 alphabetic, numeric, national (#, @, $), or underscore (_) characters. The name must be unique.
Is the number of characters to be extracted, from the range 1-20.
Is the starting position within the SAF user name at which extraction is to begin. If this parameter is omitted, the default is 1 (the first character).
Usage:
This Descriptor can be used only in STRINGDEF definition statements.
Examples:
In this example, the entire SAF user name is extracted and placed in the string variable %USERNAME.
Notes:
This field is padded with blanks. If no data has been entered for the SAF user name, STRINGDEF will return a string of blanks.
SEND
Description: Write a Message to a TSO User
Type: Communication statement.
This DAL statement causes a message to be written to a TSO user. If the user is not logged on, the message I received at the next logon.
TSO SEND (id1[,id2,...idN]) |
Specifies the symbol or list of symbols associated with TSO messages, as established by prior MSGDEF statements.
Examples:
MSGDEF OVERNITE_MSG ('JOB ',$JOBNAME,' WILL BE QUEUED FOR OVERNIGHT SERVICE.') +
USERID($SUBMITTER_RACFU)
...
SEND OVERNITE_MSG
See Also: MSGDEF, WTCA7, WTO, and WTU.
Notes:
You can omit the parentheses () if a single message identifier is specified.
The message must have been defined with the USERID keyword, otherwise the SEND statement is ignored.
$SETUP
Description: JES2 /*SETUP control statement
Type: Logic Variable.
Maximum Value: Not applicable.
This Descriptor returns a TRUE/FALSE value depending on the presence or absence of a JES2 /*SETUP control statement. This Descriptor is only meaningful if this type of job is to be handled by ThruPut Manager.
$SETUP(NO | YES) |
Returns a TRUE value if there is no /*SETUP statement in the job.
Returns a TRUE value if there is a /*SETUP statement in the job.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
Notes:
There is a ThruPut Manager initialization parameter to indicate whether jobs that have a JES2 /*SETUP card are held before ThruPut Manager processing, or they are passed to ThruPut Manager processing. This Descriptor only applies when SETUP has been coded in the TMPARM JES2 initialization statement.
If SETUP has been coded in the TMPARM JES2 initialization statement, jobs are not held after the Analysis process unless it is explicitly requested with one of a SET JES2_HOLD directive or a JSS INSTRUCT directive.
SET $USERLn_type
Description: Set User Logic Variable
Type: Action Statement.
This form of the SET statement is used in DAL to assign a TRUE or FALSE value to a User Logic Variable. Each type of DAL provides nine User Logic Variables that can be tested in subsequent iterations of DAL of the same type and in JAL. This provides a means of communicating the results of current DAL processing.
SET $USERLn_type(TRUE | FALSE) |
Is a digit from the range 1-9.
Indicates the type of User Logic Variable that is being set, and is one of:
Indicates a DCS DAL User Logic Variable.
Indicates an SOS DAL User Logic Variable.
Indicates a TM DAL User Logic Variable.
Assigns a TRUE value to the User Logic Variable.
Assigns a FALSE value to the User Logic Variable.
Examples:
This SET statement must be from TM DAL because it assigns a TRUE value to $USERL3_TM.
See Also: $USERLn_DCS, $USERLn_SOS, and $USERLn_TM.
Notes:
Although the SET statement can be used in the logic section of any type of DAL, it can set only the User Logic Variable for the type of DAL in which it is being executed.
SET FAIL
Description: Set Job to Fail at Termination of DAL and JAL
Type: Action statement.
Specifies that the job will be failed when DAL and JAL processing is completed.
SET FAIL |
Indicates that ThruPut Manager is to queue the job for output (JCL error) instead of execution after DAL and JAL processing has completed.
See Also: RETURN.
Notes:
This statement allows you to indicate that a job will be failed, but continue DAL and JAL processing so that full checking can be completed. Subsequent invocations of DAL will be honored.
SET FAIL cannot be reset.
SET FLUSH
Description: Set Job to Flush at Termination of DAL
Type: Action statement.
Specifies that the job will be failed when the current invocation of DAL processing is completed.
SET FLUSH |
Indicates that ThruPut Manager is to queue the job for output (JCL error) instead of execution after the current invocation of DAL processing has completed.
See Also: RETURN.
Notes:
This statement allows you to indicate that a job will be failed, but continue the current invocation of DAL processing so that full checking can be completed. The job is failed immediately after the RETURN statement is processed.
Note: SET FLUSH cannot be reset.
SMF DESCRIPTORS
Type: Descriptors available within the TYPE(STEPTERM) or TYPE(JOBTERM) DAL.
Maximum Length: Descriptor dependent.
The STEPTERM/JOBTERM DALs have access to all fields within the SMF Type 30 record. Along with the SMF record fields, the JOB level fields are also available, such as $JOBNAME, $ACCT, and $ACCTFLD.
Rather than describe the vast number of descriptors that are available to the STEPTERM and JOBTERM DAL, it is easier to explain that all of the fields within the SMF 30 record described in z/ OS MVS System Management Facilities (SMF) SA38-0667-30 are available as DAL descriptors. The "SMF30..." fields in the SMF record are available via "$SMF30..." DAL descriptors. An example of this is SMF30JBN, which is available as $SMF30JBN within the STEPTERM or JOBTERM DAL.
As with other DALs, Numeric descriptors can be used in RANGE statements and Character descriptors can be used in EVALUATE statements, STRINGDEF statements, and so on. The normal descriptor rules apply to these fields. Character descriptors can be compared to hard-coded strings, STRINGDEFs, or PATTERNDEFs (or PATTERNDEFX) statements. All fields may be used within a MSGDEF statement. The flag fields within the SMF record can also be used within an EVALUATE statement. The flags associated with that byte can be used as OPERANDs to determine whether these flags are ON or OFF. An example of this is SMF30WMI. This flag, which is within the SMF30PF1 field indicates that the job is executing in a Workload Manager Batch Initiator. To test this flag, you could code "EVALUATE WLM_INIT ($SMF30PF1(SMF30WMI))". In this example, WLM_INIT would be TRUE if the initiator in which the job was executing is a Work Load Manager initiator.
When fields are used within a MSGDEF statement, they are formatted according to their type. Many numeric fields will be suffixed with K, M, G, T or P. Other numeric fields may be formatted as a TIME field in the format HH:MM:SS.TH. The Step Completion Code field is specially formatted when it is displayed within a MSGDEF. When the step completes nomally with a return code, that number is printed. If the step abends due to a USER abend, it contains Unnnn, where nnnn is the decimal user abend code. If the step abends due to a SYSTEM abend, it displays as Snnn, wherennn is the hexadecimal abend code. When a step is bypassed due to condition codes, this descriptor displays as 'STEP WAS NOT EXECUTED'.
Special Numeric Descriptors that do not exist within the SMF 30 record:
Calculated by adding SMF30CPT, SMF30CPS, SMF30_TIME_ON_IFA and SMF30_ TIME_ON_ZIIP
$SMF30_STEP_ELAPSED_TIME
Calculated by subtracting the current time from the time that ThruPut Manager noted that the step began.
$SMF30BLK_DISK
$SMF30BLK_TAPE
$SMF30BLK_VIO
-The above 3 are calculated by totalling all the SMF30BLK fields in the SMF record for each of the specific device types.
Stepterm DAL Example:
/*
$SMF30STN $,1,Step1,2,$
/*
EvalFlushed ($SMF30STI(SMF30FLH)) /* Bypassed Due To Condition Codes
/*
StringDef %MSGID (‘DALS’) /* StepTerm DAL Message Prefix */
/*
MsgDef MSG1 (%MSGID,’1 ‘,+
‘*-*-*-*-*-’ +
‘J o b S t e p S u m m a r y’ +
‘ *-*-*-*-*-’) +
ROUTCDE(11)
MsgDef MSG2 (%MSGID,’2 ‘,+
‘Job Proc Program Ret. Elapsed CPU ‘,+
‘ Region Real Service ‘,+
‘ ----I/O ----’) +
ROUTCDE(11)
MsgDefMSG3 (%MSGID,’3 ‘,+
‘Step Step Name Code Time Time’,+
‘ Below/Above 64-Bit Units ‘, +
‘ DISK TAPE VIO’) +
ROUTCDE(11)
MsgDef MSG4 (%MSGID,’4’, +
(COL,7),$SMF30STM, +
(COL,16),$SMF30PSN, +
(COL,25),$SMF30PGM, +
(COL,37,R),$SMF30SCC, +
(COL,50,R),$SMF30_STEP_ELAPSED_TIME +
(COL,62,R),$SMF30CPT, +
(COL,68,R),$SMF30URB, +
(COL,74,R),$SMF30EUR, +
(COL,82,R),$SMF30HVR, +
(COL,88,R),$SMF30SRV_L, +
(COL,98,R),$SMF30BLK_DISK +
(COL,105,R),$SMF30BLK_TAPE +
(COL,112,R),$SMF30BLK_VIO) +
(COL,112,R),$SMF30BLK_VIO) +
ROUTCDE(11)
MsgDef MSG5 (%MSGID,’4’, +
(COL,7),$SMF30STM, +
(COL,16),$SMF30PSN, +
(COL,25),$SMF30PGM, +
(COL,34),$SMF30SCC) +
ROUTCDE(11)
/*
If (Step1) /* Check For 1st Step */
WTO (MSG1,MSG2,MSG3) /* If So, Write Headings */
EndIf
If (Flushed) /* Short Line If Step Flushed */
WTO MSG5
Else /* Long Line If Not */
WTO MSG4
EndIf
/*
END
Output Generated:
DALS2 Job Proc Program Ret. Elapsed CPU Region Real Service ----I/O ----
DALS3 Step Step Name Code Time Time Below/Above 64-Bit Units DISK TAPE VIO
DALS4 DCLCOPY DCLCOPY DCLCOPY 0 00:00:00.24 00:00:00.04 52K 4K 8G 562 15 0 0
DALS4 EXECSTEP STEP001 IEFBR14 0 00:00:00.07 00:00:00.01 4K 4K 0 81 0 0 0
DALS4 RC04 ******** RETCODE 4 00:00:00.10 00:00:00.01 12K 4K 0 126 2 0 0
DALS4 RC12 ******** RETCODE 12 00:00:00.11 00:00:00.01 12K 4K 0 135 2 0 0
DALS4 USER99 ******** RETCODE U0099 00:00:00.20 00:00:00.06 12K 4K 0 554 2 0 0
DALS4 BYPASSED ******** IEFBR14 STEP WAS NOT EXECUTED
DALS4 SYSTEM99 ******** RETCODE S099 00:00:00.26 00:00:00.06 12K 4K 0 497 2 0 0
DALS4 SUBMIT RESUB IEBGENR 0 00:00:00.28 00:00:00.09 184K 4K 0 961 2 0 0
$SMS_DATACLAS
Description: Data Class for SMS-managed data set
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor represents the name of the Data Class for an SMS-managed data set.
$SMS_DATACLAS(pattern | %patid | table-id) |
Is a 1-8 character pattern to be matched against the name for the SMS Data Class, as assigned by the SMS storage administrator for your installation.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
See Also: $SMS_MANAGED, $SMS_MGMTCLAS, and $SMS_STORCLAS.
$SMS_MANAGED
Description: Test for SMS-managed data set
Type: Logic Variable.
Maximum Value: Not applicable.
This Descriptor returns a TRUE/FALSE value depending on whether the data set is managed by SMS.
$SMS_MANAGED(NO | YES) |
Returns a TRUE value if the data set is not managed by SMS.
Returns a TRUE value if the data set is managed by SMS.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
See Also: $SMS_DATACLAS, $SMS_MGMTCLAS, and $SMS_STORCLAS.
$SMS_MGMTCLAS
Description: Management Class for SMS-managed data set
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor represents the name of the Management Class for an SMS-managed data set.
$SMS_MGMTCLAS(pattern | %patid | table-id) |
Is a 1-8 character pattern to be matched against the name for the SMS Management Class, as assigned by the SMS storage administrator for your installation.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
See Also: $SMS_DATACLAS, $SMS_MANAGED, and $SMS_STORCLAS.
$SMS_STORCLAS
Description: Storage Class for SMS-managed data set
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor represents the name of the Storage Class for an SMS-managed data set.
$SMS_STORCLAS(pattern | %patid | table-id) |
Is a 1-8 character pattern to be matched against the name for the SMS Storage Class, as assigned by the SMS storage administrator for your installation.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
See Also: $SMS_DATACLAS, $SMS_MANAGED, and $SMS_MGMTCLAS.
SOS ALTER
SOS ONLY |
Description: Alter Sysout data set Characteristics
Type: Action Statement.
SOS allows you to alter characteristics of the sysout data set being processed. The characteristics you can alter correspond to characteristics described by the OUTPUT JCL statement, and are listed in the Table of Characteristics below.
SOS ALTER characteristic(operand,[operand,...]) |
Is one of the characteristics of a sysout data set, taken from the Table of Characteristics.
Is one or more operands, depending on the characteristic being set. You can code operands directly or use a %strid created with a STRINGDEF statement.
These operands use the syntax described in the IBM manual MVS JCL Reference, with the following extension:
– If an asterisk (*) is coded for a field, the current value for that field is retained. To replace a field with a single asterisk, the asterisk must be enclosed in apostrophes: '*'. See the examples below.
Note: Unless you use an asterisk to retain the value, any characteristic altered by SOS ALTER is treated as a complete replacement of anything coded in JCL or JECL.
Indicates that the sysout data set is to be purged regardless of how the job terminates. This is the equivalent of coding OUTDISP=(PURGE,PURGE) on the OUTPUT JCL statement.
Examples:
SOS ALTER CLASS(D)
In this example, the sysout class for the data set is altered to sysout class D.
STRINGDEF %NAME ($PGMR)
...
SOS ALTER ADDRESS(%NAME,'CIS DEPT')
This example inserts the programmer name into a custom address field.
This example alters the first ADDRESS field to 'ACCTNG DEPT' and the second field to '5TH FLOOR'. Note that if the OUTPUT JCL statement included a value for the third or fourth ADDRESS fields, this SOS ALTER statement will replace them with blank fields.
This effect is more obvious in this example:
Here the first and second ADDRESS fields are replaced with blank fields, and the third ADDRESS field is replaced with '123 ANY ST'. This duplicates the effect you would get if you coded the same operand on the OUTPUT JCL statement. It is possible, however, that you want to alter one field and leave the others alone. You can do this by coding:
Because an asterisk is coded for the first and second ADDRESS fields, the values for those fields remains unchanged from whatever was coded on the OUTPUT JCL statement. The third ADDRESS field, however, is replaced with '123 ANY ST'.
See Also: STRINGDEF.
Table of Characteristics:
Characteristic | Description |
---|---|
ADDRESS | Address lines on the separator pages of an output data set. |
AFPPARMS | References the data set name which specifies the parameter file that contains the parameters and values for the AFP print distributor feature of PSF. |
AFPSTATS | Specifies whether the Print Services Facility is to generate an AFP Statistics (AFPSTATS) report while printing this sysout data set. |
BUILDING | Building identification. |
BURST | Specifies whether the output for the sysout data set printed on a 3800 Printing Subsystem is to go to a burster-trimmer-stacker or a continuous forms stacker. |
CHARS | Name of one or more character-arrangement tables for printing the sysout data set. |
CKPTLINE | Maximum number of lines in a logical page. |
CKPTPAGE | Number of logical pages to be printed or transmitted before JES takes a checkpoint. |
CKPTSEC | Number of seconds between checkpoints of the sysout data set. |
CLASS | Sysout class of the output data set. |
COLORMAP | Specifies the AFP Resource (object) for the data set that contains color translation information. |
COMPACT | Compaction table for JES to use when sending the sysout data set, which is a systems network architecture (SNA) data set, to a SNA remote terminal. |
COMSETUP | Name of a microfile setup resource that contains setup information. |
CONTROL | Specifies either that each logical record starts with a carriage control character or that the output is to be printed with single, double, or triple spacing. |
COPIES | Number of copies to be printed for the sysout data set. |
COPYCNT | Defines the number of copies of output. The COPYCNT keyword supersedes the COPIES keyword on the output statement. Where COPIES is limited to 255 maximum size, COPYCNT can be 0 - 2147483647 in size. |
DATACK | Indicates whether or not print-positioning and invalid-character data-check errors are to be blocked or unblocked for printers accessed through the functional subsystem PSF. |
DDNAME | Specifies the DD statements to apply the specifications on the OUTPUT statement to. |
DEPT | Department identification on the separator pages of output for a sysout data set. |
DEST | Destination for the sysout data set. |
DPAGELBL | Specifies whether the system should print the security label on each page. |
DUPLEX | Specifies whether or not printing is to be done on both sides of the sheet. |
FCB | The forms control buffer (FCB) image JES is to use to guide printing of the sysout data set. |
FLASH | Forms overlay to be used in printing the sysout data set on a 3800 Printing Subsystem. |
FORMDEF | Library member that contains statements to tell the Print Services Facility (PSF) how to print the sysout data set on a page-mode printer (such as the 3800 Printing Subsystem Model 3). |
FORMLEN | Allows PSF/MVS users to set the length of pages for print without reconfiguring the printer. |
FORMS | Forms on which the sysout data set is to be printed or punched. |
FSSDATA | Data to be passed, dependent on the subsystem. |
GROUPID | Output group to which the sysout data set belongs. |
HOLD | Specifies whether the sysout data set is to be held. |
INDEX | Value to set for the left margin for output on a 3211 Printer with the indexing feature. |
INTRAY | Specifies the paper source. |
LINDEX | Value to set for the right margin for output on a 3211 Printer with the indexing feature. |
LINECT | Maximum number of lines JES2 is to print on each output page. |
MERGE | Specifies whether or not the parameters which are specified on the OUTPUT JCL statement will be merged with the output statement for the job. |
MODIFY | Copy-modification module that tells JES how to print the sysout data set on a 3800 Printing Subsystem. |
NAME | Preferred name printed on the separator pages of the output for a sysout data set. |
NOTIFY | Users to be notified by PFS upon completion of printing. |
OFFSETXB | Specifies the offset in the X direction from the page origin (or partition origin for N_UP) for the back side of each page of output. |
OFFSETXF | Specifies the offset in the X direction from the page origin (or partition origin for N_UP) for the front side of each page of output. |
OFFSETYB | Specifies the offset in the Y direction from the page origin (or partition origin for N_UP) for the back side of each page of output. |
OFFSETYF | Specifies the offset in the Y direction from the page origin (or partition origin for N_UP) for the front side of each page of output. |
OUTBIN | Specifies the printer output bin identifier to be used for the sysout data set. |
OUTDISP | Specifies the disposition of the sysout data set. |
OUTLIM | Sets a limit for the number of logical records in the sysout data set. |
OVERLAYB | Specifies that the named medium overlay is to be placed on the back side of each sheet to be printed. |
OVERLAYF | Specifies that the named medium overlay is to be placed on the front side of each sheet to be printed. |
PAGEDEF | Library member that contains statements to tell the Print Services Facility (PSF) how to print the sysout data set on a page-mode printer (such as the 3800 Printing Subsystem Model 3). |
PIMSG | Indicates the handling of messages by Print Services Facility (PSF). |
PORTNO | Specifies the TCP/IP port number at which the FSS (for example, IP Printway) connects to the printer. |
PRTATTRS | Specifies one or more job attributes for Infoprint Server. |
PRTERROR | Specifies the disposition of the SYSOUT data set used if a terminating error occurs during printing through the PSF/MVS functional subsystem. |
PRMODE | Specifies the process mode required to print the sysout data set. |
PRTOPTNS | Named entity that refers to additional print options the FSS can use when printing a data set routed to DEST=’IP:ipaddr’. |
PRTQUEUE | Name of the target print queue on a remote host system. |
PRTY | Priority at which the sysout data set enters the output queue. |
RESFMT | Specifies the resolution used to format the print data set. |
RETAINF | Instructs the FSS how long to retain the data set if the transmission fails. |
RETAINS | Instructs the FSS how long to retain the data set if the transmission succeeds. |
RETRYL | Sets the number of transmissions that the FSS attempts before the RETAINF options take affect. |
RETRYT | Specifies how long the FSS is to wait between transmission retries. |
ROOM | Room identification printed on the separator pages of the output for a sysout data set. |
SEGMENT | Sets the number of pages produced for a sysout data set before the system processes the segment of the data set. |
SPIN | Specifies whether the output for the sysout data set is made available for processing immediately upon unallocation or at the end of the job. |
SYSAREA | Specifies whether the system should reserve an area on each page of printed output for the security label. |
TITLE | Description of the output printed on the separator pages of the output of a sysout data set. |
TRC | Specifies whether the logical record for each output line in the sysout data set contains table reference character (TRC) codes. |
UCS | UCS image, print chain, or character arrangement table to be used in printing the sysout data set. |
USERDATA | User data, usage defined by your installation. |
USERLIB | Libraries containing AFP resources to be used by Print Services Facility (PSF) when processing sysout data sets. |
WRITER | External writer to be used to process the sysout data set rather than JES. |
$SOS_AFPSTATS
SOS ONLY |
Description: AFPSTATS Report
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable indicates whether the Print Services Facility (PSF) is to generate an AFP Statistics (AFPSTATS) report while printing this sysout data set.
$SOS_AFPSTATS(NO | YES) |
When this subparameter is coded, $SOS_OUTCLASS_DUMMY is TRUE if PSF was not requested to generate an AFP Statistics (AFPSTATS) report while printing this sysout data set.
When this subparameter is coded, $SOS_AFPSTATS is TRUE if PSF was requested to generate an AFP Statistics (AFPSTATS) report while printing this sysout data set.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
Examples:
This Variable evaluates to TRUE if PSF was requested to generate an AFP Statistics (AFPSTATS) report while printing this sysout data set.
SOS Character
SOS ONLY |
Description: SOS Character Descriptors
Type: Character string Descriptor.
Maximum Length: Descriptor dependent.
SOS provides a character Descriptor for each sysout data set characteristic that can be described with a character string. The Descriptor names and descriptions are included in the Table of SOS Character Descriptors below.
descriptor(pattern | %patid | table-id | value) |
Is the SOS Descriptor name, taken from the Table of SOS Character Descriptors.
Is a hard-coded string. The contents of the string must follow the syntax rules for the applicable sysout data set characteristic.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
Is one of a list of specific values that are the only valid entries for a particular Descriptor. The values for each Descriptor of this type are shown in the Table of SOS Character Descriptors.
The pattern, %patid, table entry, or value is matched against the Descriptor. If a match occurs, a TRUE value is returned. Otherwise, the value is FALSE.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
These Descriptors can be used in EVALUATE definition statements and DAL Logic statements.
These Descriptors can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
In this example, the Descriptor evaluates to TRUE if address line 2 contains '123 4TH ST'.
Table of SOS Character Descriptors:
Note: The Descriptors in this table reflect values for the sysout data set after the effects of any applicable OUTPUT JCL or JECL statements have been applied.
Descriptor Name | Description | Length | |
---|---|---|---|
$SOS_ADDRESS_n | Address lines on the separator pages of an output data set, where n ranges from 1 to 4. | 1-60 per line | |
$SOS_AFPPARMS | References the data set name which specifies the parameter file that contains the parameters and values for the AFP print distributor feature of PSF. | 1-54 | |
$SOS_BUILDING | Building identification. | 1-60 | |
$SOS_BURST | Specifies whether the output for the sysout data set printed on a 3800 Printing Subsystem is to go to a burster-trimmer-stacker or a continuous forms stacker. | Values: | N/A |
$SOS_CHARS_n | Name of one or more character-arrangement tables for printing the sysout data set, where n ranges from 1 to 4. | 1-4 per name | |
$SOS_CLASS | Sysout class of the output data set. | 1 | |
$SOS_COLORMAP | Specifies the AFP Resource (object) for the data set that contains color translation information. | 1-8 | |
$SOS_COMPACT | Compaction table for JES to use when sending the sysout data set, which is a systems network architecture (SNA) data set, to a SNA remote terminal. | 1-8 | |
$SOS_COMSETUP | Name of a microfile setup resource that contains setup information. | 1-8 | |
$SOS_CONTROL | Specifies either that each logical record starts with a carriage control character or that the output is to be printed with single, double, or triple spacing. | Values: | N/A |
$SOS_DATACK | Indicates whether or not print-positioning and invalid-character data-check errors are to be blocked or unblocked for printers accessed through the functional subsystem PSF. | Values: | N/A |
$SOS_DEFAULT | Specifies whether this OUTPUT JCL statement can or cannot be implicitly referenced by a sysout DD statement. | Values: | N/A |
$SOS_DEPT | Department identification on the separator pages of output for a sysout data set. | 1-60 | |
$SOS_DEST | Destination for the sysout data set. | 1-127 | |
$SOS_DPAGELBL | Specifies whether the system should print the security label on each page. | Values: | N/A |
$SOS_DUPLEX | Specifies whether or not printing is to be done on both sides of the sheet. | Values: | N/A |
$SOS_FCB | The forms control buffer (FCB) image JES is to use to guide printing of the sysout data set. | 1-4 | |
$SOS_FLASH | Forms overlay to be used in printing the sysout data set on a 3800 Printing Subsystem. | 1-4 | |
$SOS_FORMDEF | Library member that contains statements to tell the Print Services Facility (PSF) how to print the sysout data set on a page-mode printer (such as the 3800 Printing Subsystem Model 3). | 1-6 | |
$SOS_FORMLEN | Allows PSF/MVS users to set the length of pages for print without reconfiguring the printer. | 4-8 | |
$SOS_FORMS | Forms on which the sysout data set is to be printed or punched. If the forms name is actually a code name for a JECL OUTPUT statement, the value returned by $SOS_FORMS is "STD". | 1-4 | |
$SOS_FSSDATA | Data to be passed, dependent on the subsystem. | 1-127 | |
$SOS_GROUPID | Output group to which the sysout data set belongs. | 1-8 | |
$SOS_HOLD | Indicates whether the system is to hold the sysout data set. | Values: | N/A |
$SOS_MODIFY | Copy-modification module that tells JES how to print the sysout data set on a 3800 Printing Subsystem. | 1-4 | |
$SOS_NAME | Preferred name printed on the separator pages of the output for a sysout data set. | 1-60 | |
$SOS_NOTIFY_n | Users to be notified by PFS upon completion of printing, where n ranges from 1 to 4. | 1-17 | |
$SOS_OFFSETXB | Specifies the offset in the X direction from the page origin (or partition origin for N_UP) for the back side of each page of output. | 5-13 | |
$SOS_OFFSETXF | Specifies the offset in the X direction from the page origin (or partition origin for N_UP) for the front side of each page of output. | 5-13 | |
$SOS_OFFSETYB | Specifies the offset in the Y direction from the page origin (or partition origin for N_UP) for the back side of each page of output. | 5-13 | |
$SOS_OFFSETYF | Specifies the offset in the Y direction from the page origin (or partition origin for N_UP) for the front side of each page of output. | 5-13 | |
$SOS_OUTCLASS_TYPE | Specifies the OUTPUT value for the current output class. | Values: | N/A |
$SOS_OUTDISP_ABNORM | Specifies the disposition of the sysout data set if the job does not complete normally. | Values: | N/A |
$SOS_OUTDISP_NORM | Specifies the disposition of the sysout data set if the job completes normally. | Values: | N/A |
$SOS_OUTPUTJECL_CODE | The code name associated with the JECL OUTPUT statement associated with the sysout data set being processed. | 1-4 | |
$SOS_OUTPUTJCL_LABEL | The label (name) of the current OUTPUT JCL statement. | 1-8 | |
$SOS_OUTPUTJCL_ PROCSTEP | The PROCSTEP for the current OUTPUT JCL statement. | 1-8 | |
$SOS_OUTPUTJCL_ STEPNAME | The STEPNAME for the current OUTPUT JCL statement. | 1-8 | |
$SOS_OVERLAYB | Specifies that the named medium overlay is to be placed on the back side of each sheet to be printed. | 1-8 | |
$SOS_OVERLAYF | Specifies that the named medium overlay is to be placed on the front side of each sheet to be printed. | 1-8 | |
$SOS_PAGEDEF | Library member that contains statements to tell the Print Services Facility (PSF) how to print the sysout data set on a page-mode printer (such as the 3800 Printing Subsystem Model 3). | 1-6 | |
$SOS_PIMSG | Specifies whether PSF is to print all error messages. | Values: | N/A |
$SOS_PRMODE | Process mode required to print the sysout data set. | 1-8 | |
$SOS_PRTATTRS | Specifies one or more job attributes for Infoprint Server. | 1-127 | |
$SOS_PRTERROR | Specifies the disposition of the SYSOUT data set used if a terminating error occurs during printing through the PSF/MVS functional subsystem. | Values: | N/A |
$SOS_PRTOPTNS | Named entity that refers to additional print options the FSS can use when printing a data set routed to DEST='IP:ipaddr'. | 1-16 | |
$SOS_PRTQUEUE | Name of the target print queue on a remote host system. | 1-127 | |
$SOS_RESFMT | Specifies the resolution used to format the print data set. | Values: | N/A |
$SOS_RETAINF | Instructs the FSS how long to retain the data set if the transmission fails. | 1-8 | |
$SOS_RETAINS | Instructs the FSS how long to retain the data set if the transmission succeeds. | 1-8 | |
$SOS_RETRYT | Specifies how long the FSS is to wait between transmission retries. | 1-8 | |
$SOS_ROOM | Room identification printed on the separator pages of the output for a sysout data set. | 1-60 | |
$SOS_SPIN | Specifies whether the output for the sysout data set is made available for processing immediately upon unallocation or at the end of the job. | Values: | N/A |
$SOS_SYSAREA | Specifies whether the system should reserve an area on each page of printed output for the security label. | Values: | N/A |
$SOS_TITLE | Description of the output printed on the separator pages of the output of a sysout data set. | 1-60 | |
$SOS_TRC | Specifies whether the logical record for each output line in the sysout data set contains table reference character (TRC) codes. | Values: | N/A |
$SOS_UCS | UCS image, print chain, or character arrangement table to be used in printing the sysout data set. | 1-4 | |
$SOS_USERDATA_n | User data, usage defined by your installation, where n ranges from 1 to 16. | 1-60 per field | |
$SOS_USERLIB_n | Libraries containing AFP resources to be used by Print Services Facility (PSF) when processing sysout data sets, where n ranges from 1 to 8. | 1-44 per library | |
$SOS_WRITER | External writer to be used to process the sysout data set rather than JES. | 1-8 |
$SOS_OUTCLASS_DUMMY
SOS ONLY |
Description: Dummy SYSOUT Class
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable indicates whether the class for the sysout data set was specified as a DUMMY class by the JES2 initialization keyword OUTCLASS.
$SOS_OUTCLASS_DUMMY(NO | YES) |
When this subparameter is coded, $SOS_OUTCLASS_DUMMY is TRUE if the sysout data set was not specified as a DUMMY class by the JES2 initialization keyword OUTCLASS.
When this subparameter is coded, $SOS_OUTCLASS_DUMMY is TRUE if the sysout data set was specified as a DUMMY class by the JES2 initialization keyword OUTCLASS.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
Examples:
This Variable evaluates to TRUE if the class for the sysout data set was specified as a DUMMY class using the OUTCLASS keyword for JES2.
$SOS_OUTPUTJECL
SOS ONLY |
Description: JECL Code Name
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable indicates whether the forms name coded for the SYSOUT keyword is actually a code name for a JECL OUTPUT statement.
$SOS_OUTPUTJECL(NO | YES) |
When this subparameter is coded, $SOS_OUTPUTJECL is TRUE if the forms name coded for the SYSOUT keyword is not a code name for a JECL OUTPUT statement.
When this subparameter is coded, $SOS_OUTPUTJECL is TRUE if the forms name coded for the SYSOUT keyword is actually a code name for a JECL OUTPUT statement.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
Examples:
This Variable evaluates to TRUE if the forms name coded for the SYSOUT keyword is actually a code name for a JECL OUTPUT statement.
See Also: $SOS_FORMS.
Notes:
If the forms name is actually a code name for a JECL OUTPUT statement, the value returned by the $SOS_FORMS Descriptor is "STD".
$SOS_OUTPUTJCL_REF
SOS ONLY |
Description: Effect of OUTPUT JCL Statement
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Unique Descriptor lets you determine how the SYSOUT data set being processed is affected by an OUTPUT JCL statement.
$SOS_OUTPUTJCL_REF name (output-type) |
Specifies a Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. The first character must be alphabetic or national. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
Is a unique value that represents a specific characteristic of the SYSOUT data set, and is one of the following keywords:
Indicates the Property is to be assigned a TRUE value if the SYSOUT data set is modified by an OUTPUT JCL statement that is specified on the DD statement.
Indicates the Property is to be assigned a TRUE value if the SYSOUT data set is modified by an OUTPUT JCL statement that is either a job or step default.
Indicates the Property is to be assigned a TRUE value if the SYSOUT data set is modified by an OUTPUT JCL statement that has DEFAULT=YES at the job level.
Indicates the Property is to be assigned a TRUE value if the SYSOUT data set is modified by an OUTPUT JCL statement that has DEFAULT=YES at the step level.
Indicates the Property is to be assigned a TRUE value if the SYSOUT data set is not modified by an OUTPUT JCL statement.
Usage:
This Descriptor can be used only in the Definition Section of DAL.
Examples:
This assigns a TRUE value to the Property OUTPUT_CODED if a OUTPUT JCL statement is present and the DD statement describing the SYSOUT data set referred to it specifically.
This assigns a TRUE value to the Property OUTPUT_DEFAULT if a OUTPUT JCL statement with the keyword DEFAULT=YES is present at either the job or step level and affects the SYSOUT data set being processed.
This assigns a TRUE value to the Property NO_OUTPUT if no OUTPUT JCL statement affects the SYSOUT data set being processed. Note that this does not mean that there is no OUTPUT JCL statement present in the JCL stream.
$SOS_OUTPUTJCL_STMT
SOS ONLY |
Description: OUTPUT JCL Statement Number
Type: Display Variable.
Maximum Value: 65535
This Display Variable allows you to insert into a message the statement number of the JCL OUTPUT statement being processed.
$SOS_OUTPUTJCL_STMT# |
Is a valid insert in a MSGDEF statement.
Usage:
This Variable can be used only as an insert in message definition statements.
SOS Range
SOS ONLY |
Description: SOS Range Descriptors
Type: Range Descriptor.
Maximum Value: Descriptor dependent.
SOS provides a range Descriptor for each sysout data set characteristic that can be described with a numeric value. The Descriptor names and descriptions are included in the Table of SOS Range Descriptors below.
descriptor [0,]name1,start2,name2[,...startN,nameN] |
Is the SOS Descriptor name, taken from the Table of SOS Range Descriptors.
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The possible values for starting points depend on the Descriptor, and are shown in the Table of SOS Range Descriptors.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
Usage:
These Descriptors can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
In this example, the Property SINGLE evaluates to TRUE if COPIES has been set to 1, otherwise MULTIPLE evaluates to TRUE.
Table of SOS Range Descriptors:
Note: The Descriptors in this table reflect values for the sysout data set after the effects of any applicable OUTPUT JCL or JECL statements have been applied.
Descriptor | Description | Values |
---|---|---|
$SOS_CKPTLINE | Maximum number of lines in a logical page. | 1-32767 |
$SOS_CKPTPAGE | Number of logical pages to be printed or transmitted before JES takes a checkpoint. | 1-32767 |
$SOS_CKPTSEC | Number of seconds between checkpoints of the sysout data set. | 1-32767 |
$SOS_COPIES | Number of copies to be printed for the sysout data set. | 1-255 |
$SOS_COPIES_GROUP_n | Number of copies of a page to be printed before printing the next page. n ranges from 1 to 8, corresponding to the nth group value in the COPIES keyword. | 1-255 |
$SOS_FLASH_COUNT | Number of copies that JES is to flash with the overlay, beginning with the first copy printed. | 0-255 |
$SOS_INDEX | Value to set for the left margin for output on a 3211 Printer with the indexing feature. | 1-31 |
$SOS_INTRAY | Specifies the paper source. | 1-255 |
$SOS_LINDEX | Value to set for the right margin for output on a 3211 Printer with the indexing feature. | 1-31 |
$SOS_LINECT | Maximum number of lines JES2 prints per output page. | 0-255 |
$SOS_MODIFY_TRC | Identifies which character arrangement table from the CHARS keyword is to be used. | 0-3 |
$SOS_OUTBIN | Specifies the printer output bin identifier to be used for the sysout data set. | 1-65535 |
$SOS_OUTLIM | Number of logical records in the sysout data set defined by this DD statement. | 1-16777215 |
$SOS_PIMSG# | Indicates the handling of messages by Print Services Facility (PSF). | 0-999 |
$SOS_PORTNO | Specifies the TCP/IP port number at which the FSS (for example, IP Printway) connects to the printer. | 1-65535 |
$SOS_PRTY | Priority at which the sysout data set enters the output queue. | 0-255 |
$SOS_REDRIVE
SOS ONLY |
Description: Indicate REDRIVE Status
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable indicates whether the current invocation of SOS DAL results from a RETURN REDRIVE statement.
$SOS_REDRIVE(NO | YES) |
When this subparameter is coded, $SOS_REDRIVE is TRUE if the current invocation of SOS DAL did not result from a RETURN REDRIVE statement.
When this subparameter is coded, $SOS_REDRIVE is TRUE if the current invocation of SOS DAL did result from a RETURN REDRIVE statement.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
Examples:
This Variable evaluates to TRUE if the current invocation of SOS DAL resulted from a RETURN REDRIVE statement.
See Also: RETURN, $SOS_REDRIVE_COUNT, and $SOS_REDRIVE_CURRENT#.
$SOS_SYSOUT_DS
SOS ONLY |
Description: Type of Sysout data set
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Unique Descriptor lets you determine the type of sysout data set currently being processed.
$SOS_SYSOUT_DS name (sysout-type) |
Specifies a Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. The first character must be alphabetic or national. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
Is a unique value that represents a specific type of sysout data set, and is one of the following keywords:
Indicates the Property is to be assigned a TRUE value if the sysout data set is defined by a DD statement.
Indicates the Property is to be assigned a TRUE value if the sysout data set is the system JCL data set.
Indicates the Property is to be assigned a TRUE value if the sysout data set is the system LOG data set.
Indicates the Property is to be assigned a TRUE value if the sysout data set is the system MSG data set.
Usage:
This Descriptor can be used only in the Definition Section of DAL.
Examples:
This assigns a TRUE value to the Property NOT_SYSTEM if the sysout data set being processed is described by a specific DD statement as opposed to being one of the standard system sysout data sets.
$STEP#
Description: Current Step Number
Type: Range Definition Descriptor.
Maximum Value: 255
This descriptor represents the current job step number.
$STEP# [1,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 1, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Example:
$STEP_FIRST_DD
Description: Recognize First DD Within a Step
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the DD statement currently being processed is the first one in the step.
$STEP_FIRST_DD(NO | YES) |
Returns a value of TRUE when the DD statement is not the first one in a step.
Returns a value of TRUE when the DD statement is the first one in a step.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
See Also: $STEP_LAST_DD.
Notes:
This Logic Variable always evaluates to FALSE for JES data sets not associated with any step (JESMSGLG, JESJCL, and JESYSMSG).
$STEP_LAST_DD
Description: Recognize Last DD Within a Step
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the DD statement currently being processed is the last one in the step.
$STEP_LAST_DD(NO | YES) |
Returns a value of TRUE when the DD statement is not the last one in a step.
Returns a value of TRUE when the DD statement is the last one in a step.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
See Also: $STEP_FIRST_DD.
Notes:
This Logic Variable always evaluates to FALSE for JES data sets not associated with any step (JESMSGLG, JESJCL, and JESYSMSG).
$STEPNAME
Description: Step Name
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor allows you to determine the name of the 8-character step name on the EXEC PGM= statement. The EXEC statement is associated with DD statement being processed.
$STEPNAME($BLANK | pattern | %patid | table-id) |
Allows you to test for an "all blanks" condition.
A hard-coded valid step name pattern to be matched against the name for the step that includes the DD statement being processed.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
See Also: $BLANK.
STRINGDEF
Description: To Define Character Strings Dynamically
Type: Definition statement.
Maximum Value: 255 characters.
This definition statement is provided to allow you to define character strings dynamically at DAL execution time.
STRINGDEF %strid (source1) [ || (source2)] |
Is the identification name for the character string that is created with this statement. The first character must be % followed by 1 to 23 alphabetic, numeric, national (#, @, $), or underscore (_) characters. The name must be unique.
You can use up to two fields for the construction of the character string.
Represents the first field or value to be used for the construction of the character string.
It can be one, and only one, of the following sources:
– A 'hard-coded character string'. For example:
– A character Descriptor. For example:
The length of the character string is the length of the Descriptor.
– An installation system symbol. Any string that begins with an ampersand (&) is treated as a system symbol. If the symbol is not defined at the time of Job Analysis, the resulting value is blank. System symbol are accepted only in a STRINGDEF.
– The substring function. For example:
Here, at DAL execution time, the first 5 characters contained in $USERC1 are used. For an explanation of the substring function see to Substring-function.
– %PATID
A previously defined pattern. You specify the pattern id. The pattern is converted to a character string. That is, any wildcard characters are treated as normal characters.
– %STRID
A character string that was previously defined with STRINGDEF. You specify the string id.
Indicates that source2 is to be concatenated to source1.
Represents the second field or value to be used in the construction of the character string. source2 is optional and if present its value is concatenated to the value from source1.
The rules are the same as source1.
Usage:
The STRINGDEF has been provided to allow you to construct character strings from any character Descriptor, or a portion of it. The resulting character string represented by a %strid can be used in any construct that allows character descriptors.
Examples:
STRINGDEF %NAME ($PGMR,4)
...
...
IF (%NAME('MIKE'))
is a valid construct.
EVALUATE PRODJOB (%NAME('MIKE'))
...
IF (PRODJOB)
is also a valid construct.
Notes:
With STRINGDEF the characters '*' or '?' are treated as normal characters.
The maximum length for the resulting character string is 255 characters.
$SUBMITTER_RACFG
Description: RACF Group of Job Submitter
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor represents the RACF GROUP parameter of the submitter of the job, which could vary from the RACF GROUP parameter used on the JOB statement.
$SUBMITTER_RACFG(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters, the first of which must be alphabetic or national. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$SUBMITTER_RACFG(AP100)
$SUBMITTER_RACFG($TABLE1(GROUPS))
See Also: $RACFG, $RACFU, and $SUBMITTER_RACFU.
$SUBMITTER_RACFU
Description: RACF USER Parameter of Job Submitter
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor represents the RACF USER parameter of the submitter of the job, which could vary from the RACF USER parameter used on the JOB statement.
$SUBMITTER_RACFU(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters, the first of which must be alphabetic or national. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management"
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$SUBMITTER_RACFU(MKTING)
$SUBMITTER_RACFU($TABLE1(USERS))
See Also: $SUBMITTER_RACFG, $RACFG, and $RACFU.
$SUBMITTER_TSSU
Description: TSS User ID of Job Submitter
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor represents the TSS USER parameter of the submitter of the job, which could vary from the TSS USER parameter used on the JOB statement.
$SUBMITTER_TSSU(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters, the first of which must be alphabetic or national. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$SUBMITTER_TSSU(PM800MP)
$SUBMITTER_TSSU($TABLE1(TSSUSERS))
See Also: $TSSUSER.
Notes:
This Descriptor is applicable to TOP SECRET security environments.
substring function
Description: To extract character substrings
Type: Character String Function.
Maximum Value: Not applicable.
This is a built-in function provided to facilitate the creation of character strings from character Descriptors.
(character-descriptor[,length[,starting-position]]) |
Represents a character Descriptor.
The name of a character string created with the STRINGDEF statement.
Represents a dynamically constructed pattern created with the PATTERNDEF statement.
If any wildcard characters are found they are treated as string characters. For example, asterisks.
The number of characters to be used. If this operand is omitted the length of the Descriptor is used.
The substring function allows a value from 1 to 255.
The starting position of the character string within the Descriptor. If this operand is omitted the default value is 1.
Usage:
The substring function can be used to construct strings with the PATTERNDEF and STRINGDEF definition statements.
Notes:
If the combined value of length and starting position is more than the length of the Descriptor, then:
• If the length and starting position are coded, the statement is failed with an error message.
• If only the starting position has been coded, allowing the length to default, a warning message is issued.
$SUBSYS
Description: Current Subsystem
Type: Character String Descriptor.
Maximum Length: 4 characters.
This Descriptor represents the current Subsystem name.
$SUBSYS(name) |
Current Subsystem name Identifies the subsystem. The subsystem name is 1 through 4 alphanumeric or national ($, #, @) characters; the first character must be alphabetic or national ($, #, @).
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$TABLEn
Description: Specify a Table
Type: Table Construct.
This is not a DAL statement. It is a special construct that extends the capabilities of any pattern matching function by allowing you to match against a table containing several patterns. Each table contains one or more subtables, or groups of patterns, and you can search either a specific subtable or the entire table.
For more information about tables and how they are used, see to "Section DAL-and-JAL-table-management" in the DAL-and-JAL-user-guide.
descriptor($TABLEn[(subtable-name | *)]) |
Represents any Descriptor that supports pattern matching.
Is a number from the range 1 to 9, used to identify the specific table.
Is a 1-24 character name identifying the specific portion of the table that you wish to use. This must match a name coded on one of the SUBTABLE statements in the table.
Indicates that you want to search all subtables in the table.
Usage:
This construct can be used as the right portion of any pattern matching function. Additionally, it can be used in place of a pattern or %patid in certain Unique Descriptors.
The table search is linear, and terminates as soon as a match is found. If any pattern contained in the specified subtable (or the entire table if '*' is coded) matches the character string contained in the Descriptor named in the left portion of the pattern matching function, a TRUE value is returned.
Examples:
In this example, the Property RACF_OK is set to TRUE if the RACF userid for the job matches any of the entries in the subtable USERS, which is found in the table identified as TABLE1.
$TSSUSER | $TSSU
Description: USER Parameter From JOB Statement
Type: Character string Descriptor.
Maximum Length: 7 characters.
This Descriptor represents the USER parameter from the JOB statement.
$TSSUSER(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-142 alphabetic, numeric, or national (#, @, $) characters, the first of which must be alphabetic or national. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$TSSUSER(PM800MP)
$TSSUSER($TABLE1(TSSUSERS))
See Also: $SUBMITTER_TSSU.
Notes:
This Descriptor is applicable to TOP SECRET security environments.
Under certain circumstances this field may be internally supplied (as opposed to JCL coded). In that case you might want to look at an 8-character field. The Descriptor $TSSUSER8 is provided for that purpose.
$TYPHOLD
Description: Job Submission TYPRUN=HOLD
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable returns a TRUE/FALSE value depending on how the job was submitted.
Jobs submitted with TYPRUN=HOLD will only be processed (before they are released from JES2 HOLD) if the keyword TYPHOLD was coded in the TMPARM JES2 initialization statement.
$TYPHOLD(NO | YES) |
When TRUE, it indicates that the job has not been submitted with TYPRUN=HOLD.
When TRUE, it indicates that the job has been submitted with TYPRUN=HOLD.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
Examples:
IF ($TYPHOLD(YES))
WTU...
Notes:
The default for jobs submitted TYPRUN=HOLD is to be held at the end of the Job Analysis phase. You can override this via the action statement SET.
ThruPut Manager will not process a job submitted with TYPRUN=HOLD (before job being released from JES2 HOLD) unless the keyword TYPHOLD has been coded in the TMPARM JES2 initialization statement.
$TYPSCAN
Description: Job Submission TYPRUN=SCAN
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable returns a TRUE/FALSE value depending on how the job was submitted.
Note that ThruPut Manager will process jobs submitted with TYPRUN=SCAN only if TYPSCAN has been coded in TMPARM JES2 initialization statement.
$TYPSCAN(NO | YES) |
When TRUE, it indicates that the job has not been submitted with TYPRUN=SCAN.
When TRUE, it indicates that the job has been submitted with TYPRUN=SCAN.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
Examples:
IF ($TYPSCAN(YES))
WTU...
Notes:
Jobs that are submitted with TYPRUN=SCAN are not allowed to continue to execution regardless of what you code in DAL. This variable is provided in case you may want to alter DAL processing.
ThruPut Manager will not process jobs submitted as TYPRUN=SCAN unless the TYPSCAN keyword was included in the TMPARM JES2 initialization statement.
$UNIT_AFF
Description: Unit Affinity In Effect
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether unit affinity is in effect for this DD statement.
$UNIT_AFF(NO | YES) |
Returns a value of TRUE when unit affinity is not in effect for this DD statement.
Returns a value of TRUE when unit affinity is in effect for this DD statement.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
See Also: $JCL_CODED.
Notes:
Unit affinity could have been requested for the DD statement but not granted due to inconsistent device types. To test whether UNIT=AFF was requested, use $JCL_CODED.
$UNIT_COUNT
Description: Count of Units Allocated
Type: Range Definition Descriptor.
Maximum Value: 59
This descriptor returns the number of units allocated to the current DD statement. These units might already have been counted for a previous DD statement.
$UNIT_COUNT [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Notes:
If no count is coded for the UNIT keyword on the DD statement, this Descriptor returns a value of 1 (the JCL default).
If UNIT=AFF is coded on the DD statement, this Descriptor returns the value coded for the referenced DD statement.
$UNITNAME
Description: UNIT Name from DD Statement
Type: Character string Descriptor.
Maximum Length: 8 characters.
This Descriptor represents the unit name originally coded on the DD statement that is being analyzed. If no UNIT name is coded, this Descriptor returns the generic unit name unless the data set is not cataloged. In that case, the Descriptor returns blanks.
$UNITNAME(pattern | %patid | table-id) |
This is a hard-coded string. It can be 1-8 alphabetic, numeric, or national (#, @, $) characters, the first of which must be alphabetic or national. It can also include the wildcard characters '?' and '*'.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
See Also: $JCL_CODED and $JCL_UNITNAME_MATCH.
Notes:
This Descriptor should be used together with $JCL_CODED to determine whether the unit name was coded on the DD statement.
If the data set described by the DD statement is not found, this Descriptor returns blanks.
$USERCnn
Description: Character User Descriptor
Type: Character string User Descriptor.
Maximum Length: 50 characters.
One of 99 character User Descriptors provided for use by installation exits. These Descriptors are initialized to 50 blanks each time ThruPut Manager starts analyzing a job. Your exits can then assign values.
$USERCnn(pattern | %patid | table-id) |
Identifies a character User Descriptor.
Is one or two digits from the range 1 to 99.
This is a hard-coded string. It can be 1-50 alphabetic, numeric, or national (#, @, $) characters. It can also include the wildcard characters '?' and '*'. If pattern contains a blank, or any characters other than those previously listed, it must be enclosed in apostrophes.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table and indicates which subtable is to be searched.
The pattern, %patid, or table entries are matched against the Descriptor. If a match occurs, a TRUE value is returned.
For a description of character string facilities see to "Section Character-string-facilities-tutorial" in the DAL-and-JAL-user-guide. For a description of table support, see to "Section DAL-and-JAL-table-management".
Usage:
This Descriptor can be used in EVALUATE definition statements and DAL Logic statements.
This Descriptor can also be used:
• As an insert in message definition statements.
• In a substring function.
• In STRINGDEF and PATTERNDEF statements.
Examples:
$USERC1(SAMP*)
$USERC5($TABLE3(*))
See Also: $USERNnn.
$USERLn_DCS
DCS ONLY |
Description: User Logic Variable
Type: User Logic Variable.
Maximum Value: Not applicable.
Nine User Logic Variables are provided to communicate the results of DCS DAL processing to JAL or subsequent iterations of DCS DAL. These Logic Variables are initialized to FALSE.
$USERLn_DCS(FALSE | TRUE) |
Identifies a User Logic Variable.
Is a digit from the range 1-9.
Indicates the User Logic Variable is being tested for a FALSE value.
Indicates the User Logic Variable is being tested for a TRUE value.
Usage:
This Variable can be used in the DCS DAL action statement SET $USERLn_DCS, in EVALUATE definition statements in JAL and DCS DAL, and also as an insert in message definition statements in JAL and DCS DAL.
See Also: SET $USERLn_type.
$USERLn_SOS
SOS ONLY |
Description: User Logic Variable
Type: User Logic Variable.
Maximum Value: Not applicable.
Nine User Logic Variables are provided to communicate the results of SOS DAL processing to JAL or subsequent iterations of SOS DAL. These Logic Variables are initialized to FALSE.
$USERLn_SOS(FALSE | TRUE) |
Identifies a User Logic Variable.
Is a digit from the range 1-9.
Indicates the User Logic Variable is being tested for a FALSE value.
Indicates the User Logic Variable is being tested for a TRUE value.
Usage:
This Variable can be used in the SOS DAL action statement SET $USERLn_SOS, in EVALUATE definition statements in JAL and SOS DAL, and also as an insert in message definition statements in JAL and SOS DAL.
See Also: SET $USERLn_type.
$USERLn_TM
Description: User Logic Variable
Type: User Logic Variable.
Maximum Value: Not applicable.
Nine User Logic Variables are provided in TM DAL to communicate the results of TM DAL processing to JAL or subsequent iterations of DAL. These Logic Variables are initialized to FALSE.
$USERLn_TM(FALSE | TRUE) |
Identifies a TM DAL User Logic Variable.
Is a digit from the range 1-9.
Indicates the User Logic Variable is being tested for a FALSE value.
Indicates the User Logic Variable is being tested for a TRUE value.
Usage:
This Variable can be used in the TM DAL action statement SET $USERLn_TM, in EVALUATE definition statements in JAL and TM DAL, and also as an insert in message definition statements in JAL and TM DAL.
See Also: SET $USERLn_type.
$USERNnn
Description: Numeric User Descriptor
Type: Range Definition User Descriptor.
Maximum Value: 99,999,999.
One of 99 numeric User Descriptors provided for use by your installation exits. These Descriptors are initialized to zero each time ThruPut Manager starts analyzing a job. Your exits can then assign values.
$USERNnn [0,]name1,start2,name2[,...,startN,nameN] |
Identifies a numeric User Descriptor.
Is one or two digits from the range 1 to 99.
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points can be any value up to 99,999,999.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $USERCnn.
$VERIFY
Description: Table Verification
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Descriptor allows you to verify whether or not a particular table/subtable has been loaded. When using tables, a return of FALSE can indicate either:
• o The table/subtable does not exist, or
• o The table exists, but all subtables have been disabled.
$VERIFY name TABLEn(subtable-name-list | *) [TABLEn(subtable-name-list | *) ...] |
Specifies the Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. The first character must be alphabetic or national. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
The name of the table whose status you want to verify. n can be a value from the range 1 to 9. This keyword is mutually exclusive with SACTABLE.
If you specify more than one table in a single $VERIFY statement, the result is TRUE only if all conditions are satisfied. In other words, it is treated as an "AND" verification request.
The subtable names whose status you want to verify. This is an "and" list. That is, all subtables must be present to result in a TRUE value.
This parameter is mutually exclusive with '*'. You must code one of them.
This parameter allows you to verify that the table has been loaded and at least one of its subtables is active.
This parameter is mutually exclusive with subtable-name. You must code one of them.
Requests verification that the SAC table has been properly loaded. This keyword is mutually exclusive with TABLEn.
Usage:
This Descriptor can be used only in the Definition Section of DAL.
Examples:
$VERIFY PROD_TABLE_OK TABLE1(PRODUCTION_TABLE)
$VERIFY DEV_TABLE_1_OK TABLE1(DEVICE_TABLE_1)
$VERIFY DEV_TABLE_2_OK TABLE1(DEVICE_TABLE_2)
In this example, the verifications for subtables are done individually. As a result, you can take different actions depending on the condition of each subtable:
IF (PROD_TABLE_OK)
...
OTHERWISE
...
If you want to treat it as an all or nothing test you can code:
$VERIFY ALL_TABLES_OK TABLE1(PRODUCTION_TABLE,DEVICE_TABLE_1,DEVICE_TABLE_2)
...
...
IF (ALL_TABLES_OK)
...
If you simply want to ensure that table 1 has been loaded and contains at least one active subtable you can code:
Note that the SAC table must be verified independently:
See Also: $TABLEn.
$VOL_AUTO
Description: Automated Volumes
Type: Range Definition Descriptor.
Maximum Value: 9999 cartridge volumes.
This Descriptor represents the number of non-scratch automated cartridge volumes required by the DD statement, including the number of volumes represented by the value in $VOL_TO_ENTER.
$VOL_AUTO [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified in number of volumes as 1-4 decimal digits.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $VOL_TO_ENTER.
$VOL_MANUAL
Description: Cartridge Volumes
Type: Range Definition Descriptor.
Maximum Value: 9999 cartridge volumes.
This Descriptor represents the number of non-scratch cartridge volumes required by a non-automated DD statement that must be fetched before step execution.
$VOL_MANUAL [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified in number of volumes as 1-4 decimal digits.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $VOL_AUTO and $VOL_REEL.
$VOL_MATCH
Description: Match the Volumes Requested
Type: Unique Descriptor.
Maximum Value: Not applicable.
This Unique Descriptor allows you to match the volume serial numbers required by the DD statement against a list of volumes, either hard-coded or contained in a ThruPut Manager Table.
$VOL_MATCH name VOLUMES(vol-list | %patid | table-id) |
Specifies the Property Name to be assigned a value of TRUE or FALSE. This name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. The first character must be alphabetic or national. Note that the first character of each name cannot be a dollar sign ($) or underscore (_).
Indicates that cartridge volume serial numbers are to be matched. This keyword is mutually exclusive with DASD and REEL.
Only automated cartridges are included in the list to match.
Only manual cartridges are included in the list to match.
Indicates that both automated and manual cartridges are included in the list to match.
Indicates that DASD volume serial numbers are to be matched. This keyword is mutually exclusive with CART and REEL.
Indicates that volume serial numbers for reels are to be matched. This keyword is mutually exclusive with CART and DASD.
Specifies the source of the list of volumes to be matched.
A hard coded volume list, separated by commas.
The name of a pattern created with the PATTERNDEF statement.
Identifies a specific table to be matched against.
The Property is TRUE if all the volumes in the DD statement are found in the list or table, or if the volume count is 0. This keyword is mutually exclusive with NONE and SOME.
The Property is TRUE only if none of the volumes in the DD statement are found in the list or table. This keyword is mutually exclusive with ALL and SOME.
The Property is TRUE if at least one volume in the DD statement is found in the list or table. This keyword is mutually exclusive with ALL and NONE.
This is the default.
Usage:
This Descriptor can be used only in the Definition Section of DAL.
$VOL_REEL
Description: Non-Cartridge Tape Volumes
Type: Range Definition Descriptor.
Maximum Value: 9999 non-cartridge tape volumes.
This Descriptor represents the number of non-scratch non-cartridge tape volumes required by the DD statement that must be fetched before step execution.
$VOL_REEL [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified in number of volumes as 1-4 decimal digits.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $VOL_AUTO and $VOL_MANUAL.
$VOL_SCRATCH
Description: Indicates the Type of Volume Request
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable allows you to determine whether the request was for a scratch volume (non-specific) or a specific volume.
$VOL_SCRATCH(NO | YES) |
Returns a value of TRUE for a specific volume request, i.e. when a volume serial number was hard-coded in JCL or the data set is cataloged.
Returns a value of TRUE for a scratch request, i.e. when no volume serial number was coded for a non-cataloged data set.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
$VOL_TO_EJECT
Description: Automated Volumes Required Outside the Automated Library
Type: Range Definition Descriptor.
Maximum Value: 9999 cartridge volumes.
This Descriptor represents the number of non-scratch cartridge volumes required by the DD statement that are within the automated system but are required in non-automated drives.
$VOL_TO_EJECT [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified in number of volumes as 1-4 decimal digits.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $VOL_AUTO, $VOL_REEL, and $VOL_TO_ENTER.
$VOL_TO_ENTER
Description: Automated Volumes Outside the Automated Library
Type: Range Definition Descriptor.
Maximum Value: 9999 cartridge volumes.
This Descriptor represents the number of non-scratch cartridge volumes required by the DD statement that are outside the automated system but are to be treated as automated. This situation occurs when an "AUTOMATED" UNIT name has been coded in the JCL and the volumes associated with that DD are not resident in any automated library system.
$VOL_TO_ENTER [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
Starting points are specified in number of volumes as 1-4 decimal digits.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Examples:
See Also: $VOL_AUTO, $VOL_REEL, and $VOL_TO_EJECT.
$VOLUME_COUNT
Description: Volume Count from JCL
Type: Range Definition Descriptor.
Maximum Value: 255 volumes.
This Descriptor represents the volume count that was coded as a subparameter of the VOLUME keyword of the DD statement being analyzed.
$VOLUME_COUNT [0,]name1,start2,name2[,...,startN,nameN] |
The starting point of a segment. The first starting point must be 0, but can be omitted if desired.
The Property Name assigned to a segment of the range. Each Property Name must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. Note that the first character of each name cannot be a dollar sign ($) or underscore (_). You can code the single character dollar sign ($) in place of a Property Name for ranges you wish to ignore.
Usage:
This Descriptor can be used in the Definition Section of DAL, and also as an insert in message definition statements.
Notes:
If no volume count was coded, this Descriptor returns the default value of 1.
VTAPE SET
Description: Specify a VTAPE data set
Type: Action Statement.
In a CA-Vtape environment, this statement allows you to control whether a data set should be treated as a virtual tape data set:
• The data set must be new.
• The data set must reside on a cartridge.
• The DD statement must not specify UNIT=AFF.
VTAPE SET VIRTUAL(YES | NO) |
Indicates whether or not the data set being allocated by the current DD statement should be treated as a CA-Vtape virtual data set.
Self-explanatory.
Notes:
If the data set is already virtual, VIRTUAL(NO) is ignored.
$WLM_MODE
Description: Detect Workload Manager Mode
Type: Logic Variable.
Maximum Value: Not applicable.
This Logic Variable lets you determine if the system that is analyzing the job is in WLM GOAL or COMPATIBILITY mode.
$WLM_MODE(COMPAT | GOAL) |
Returns a value of TRUE if the analyzing system is running in COMPATIBILITY mode, otherwise it returns a value of FALSE.
Returns a value of TRUE if the analyzing system is running in GOAL mode, otherwise it returns a value of FALSE.
Usage:
This Variable can be used in EVALUATE definition statements and DAL Logic statements, and also as an insert in message definition statements.
WTCA7
Description: Write a Message to a CA7 Logical Terminal
Type: Communication statement.
This DAL statement causes a message to be written to a CA7 logical terminal associated with the CA7 instance of the current job.
WTCA7 (id1[,id2,...idN]) |
Specifies the symbols or list of symbols associated with CA7 messages, as established by prior MSGDEF statements.
Examples:
MSGDEF AUTO_MSG (‘STEP ‘,$STEPNAME,’ USES ‘,$VOL_AUTO,’ AUTOMATED VOLUMES.’) +
CA7LTERM(LIBRARY)
...
WTCA7 AUTO_MSG
See Also: $CA7, MSGDEF, SEND, WTO, and WTU.
Notes:
You can omit the parentheses () if a single message identifier is specified.
The routing of CA7 messages is controlled by the CA7LTERMkeywordofthe MSGDEFstatement.
WTO
Description: Write a Message to Operator
Type: Communication statement.
This DAL statement causes a message to be written to an operator console.
WTO (id1[,id2,...idN]) |
Specifies the symbols or list of symbols associated with operator messages, as established by prior MSGDEF statements.
Examples:
MSGDEF AUTO_MSG (‘STEP ‘,$STEPNAME,’ USES ‘,$VOL_AUTO,’ AUTOMATED VOLUMES.’) +
ROUTCDE(120)
...
WTO AUTO_MSG
See Also: MSGDEF, SEND, WTCA7, and WTU.
Notes:
You can omit the parentheses () if a single message identifier is specified.
The routing of operator messages is controlled by keywords of the MSGDEF statement.
WTU
Description: Write a Message to User
Type: Communication statement.
This DAL statement causes a message to be written to the job's SYSMSGS file or the Job LOG.
WTU (id1[,id2,...idN]) |
Specifies the symbols or list of symbols associated with user messages, as established by prior MSGDEF statements.
Examples:
MSGDEF BAD_ACCT_MSG ($ACCT,’ IS AN INVALID ACCOUNT.’)
...
WTU BAD_ACCT_MSG
See Also: MSGDEF, SEND, WTCA7, and WTO.
Notes:
The default destination for WTU is the SYSMSGS file.
You can omit the parentheses () if a single message identifier is specified.
If you want the message to appear in the job's log, then you must code the LOG keyword in the MSGDEF statement.