List of JAL elements (M-S)


This topic lists and describes the Job Action Language (JAL) elements in this product.

$MEMLIMIT

$MEMLIMIT   [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes: 

Attribute

Value

Description

Limit for Number of Usable Virtual Pages Above the Bar

This Descriptor represents the limit on the number of usable virtual pages above the bar specified by the MEMLIMIT keyword on the JOB statement in a z/Architecture environment.

Type

Range Definition Descriptor

Maximum value

99999999999999 megabytes

Valid values

  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$MEMLIMIT  NONE_ABOVE,1,MEMLIMIT

Important

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.

For more information, see SET MEMLIMIT.

MHS ADD

MHS ADD HOLD(identifier | %stringid) NOTES(notes | %stringid)

This JAL element has the following attributes:

Attribute

Value

Description

Add MHS_JAL Hold to a Job

This statement allows you to place a job in MHS_JAL hold, optionally including a note.

Type

Action statement

Valid values

  • HOLD(identifier)—Indicates that you want to place the job in MHS_JAL hold.
    • identifier—Is 1-8 alphabetic, numeric, or national (@, $ or #) characters, specifying an identifier that can be used to group jobs for easier management.
    • %stringid—Is the name of a dynamically constructed character string that has been defined with a STRINGDEF statement.
  • NOTES(notes)—Specifies additional information that can be displayed.
    • notes—A string of 1-200 characters of additional information. If special characters are used, the string must be enclosed in quotes.
    • %stringid—Is the name of a dynamically constructed character string that has been defined with a STRINGDEF statement.

For more information, see $JXMHS_HOLD, MHS DELETE and MHS REPLACE.

MHS DELETE

MHS DELETE HOLD(identifier | %stringid) | ALL_HOLDS

This JAL element has the following attributes:

Attribute

Value

Description

Remove MHS_JAL Hold from a Job

This statement allows you to remove from the job a previously added or replaced MHS_JAL hold.

Type

Action statement

Valid values

  • HOLD(identifier | %stringid)—Indicates that you want to remove the MHS_JAL hold.
    • identifier—Is 1-8 alphabetic, numeric, or national (@, $ or #) characters, specifying an identifier that can be used to group jobs for easier management.
    • %stringid—Is the name of a dynamically constructed character string that has been defined with a STRINGDEF statement.
  • ALL_HOLDS—Indicates that you want to remove all MHS HOLDs that have been applied to the job.

Important

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.

For more information, see $JXMHS_HOLD, MHS ADD and MHS REPLACE.

MHS REPLACE

MHS REPLACE HOLD(identifier | %stringid) NOTES(notes | %stringid)

This JAL element has the following attributes:

Attribute

Value

Description

Replace MHS_JAL Hold for a Job

This statement allows you to replace a previously added MHS_JAL hold, optionally including a note.

Type

Action statement

Valid values

  • HOLD(identifier | %stringid)—Indicates that you want to replace the MHS_JAL hold for this job.
    • identifier—Is 1-8 alphabetic, numeric, or national (@, $ or #) characters, specifying an identifier that can be used to group jobs for easier management.
    • %stringid—Is the name of a dynamically constructed character string that has been defined with a STRINGDEF statement.
  • NOTES(notes | %stringid)—Specifies additional information that can be displayed.
    • notes—A string of 1-200 characters of additional information. If special characters are used, the string must be enclosed in quotes.
    • %stringid—Is the name of a dynamically constructed character string that has been defined with a STRINGDEF statement.

For more information, see $JXMHS_HOLD, MHS ADD and MHS DELETE.

$MHS_USER_HOLD#

$MHS_USER_HOLD#   [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Number of /*MHS_USER HOLD JECL Statements

This Descriptor represents the number of /*MHS_USER HOLD JECL statements found in the job stream.

Type

Range Definition Descriptor

Maximum value

24 statements

Valid values

  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$MHS_USER_HOLD#  NO_USER_HOLD,1,USER_HOLD,2,USER_HOLDS

MHS_VOL SET EXEMPT

MHS_VOL SET EXEMPT(YES | NO)

This JAL element has the following attributes:

Attribute

Value

Description

Makes Job Ineligible for MHS_VOL Processing

This statement allows you to make a job exempt from MHS_VOL processing.

Type

Action statement

Valid values

  • EXEMPT(YES | NO)—Indicates that you want to specify whether the job being analyzed is eligible to be placed in the MHS_VOL hold category.
  • YES—Indicates that the job being analyzed is to be EXEMPTed from MHS_VOL processing and is, therefore, not eligible to be placed in the MHS_VOL hold category.
  • NO—Indicates that the job being analyzed is eligible to be placed in the MHS_VOL hold category. This is the default.

For more information, see $JXMHS_VOL_EXEMPT.

MODELDEF

MODELDEF name (message) CONSOLE_UCM(ucm) [DESC(desc-list)]
or
MODELDEF name (message) CONSOLE_NAME(console) [DESC(desc-list)]
or
MODELDEF name (message) ROUTCDE(routecde-list) [DESC(desc-list)]

This JAL element has the following attributes:

Attribute

Value

Description

Message Definition

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.

Type

Definition statement

Maximum value

Messages exceeding 121 characters are truncated

Valid values

  • name—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.
  • message—The text of the message, using the form:

[(COL,n,align)],variable | ‘hard-coded-text’,[(COL,n,align)]...

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.

  • (COL,n,align)—This is an optional text definition construct that indicates you want column alignment.
  • COL—This must be coded as shown.
  • n—Specifies the reference column, and can be a value from 1 to 60.
  • align—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.

  • variable | ‘hard-coded-text’—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) refer 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 more information about he facilities provided for formatting messages and displays, refer to Defining-and-using-messages-and-displays.

  • CONSOLE_NAME(console)—Specifies a valid console name to which the message is written. This keyword is mutually exclusive with CONSOLE_UCM and ROUTCDE.
    • console—Is a 2-8 character console name, consisting of alphabetic, national (#, @, $), or numeric characters, the first of which must be alphabetic or national.
  • CONSOLE_UCM(ucmid)—Indicates UCMID of the console to which the message is written. This keyword is mutually exclusive with CONSOLE_NAME and ROUTCDE.
    • ucmid—A decimal number between 0-99 inclusive.
  • DESC(desc-list)—Indicates the descriptor code of the message.
    • desc-list—A list of the form (d1[,d2,...,d16]), where dn represents a decimal numbers between 1-16 inclusive.
  • ROUTCDE(routecde-list)—Indicates the routing code of the message. This keyword is mutually exclusive with CONSOLE_NAME and CONSOLE_UCM.
    • routecde-list—A list of the form (rc1[,rc2,...,rc128]) where rcn represents a decimal number between 1-128 inclusive.

$MSGCLASS_ALTERED

This JAL element has the following attributes:

Attribute

Value

Description

SOS ONLY. Test for Altered MSGCLASS

This Logic Variable indicates whether the MSGCLASS for the SYSOUT data set was altered by an SOS SET MSGCLASS statement.

Type

Logic Variable

Maximum value

Not applicable

Valid values

  • YES—When this subparameter is coded, $MSGCLASS_ALTERED is TRUE if the MSGCLASS was altered by an SOS SET MSGCLASS statement.
  • NO—When this subparameter is coded, $MSGCLASS_ALTERED is TRUE if the SYSOUT data set was not altered by an SOS SET MSGCLASS statement.

Usage

You can use this variable in JAL Logic statements only.

Example
$MSGCLASS_ALTERED(YES)

This Variable evaluates to TRUE if the MSGCLASS has been changed by an SOS SET MSGCLASS statement.

For more information, see $CURMSGCLASS, $JXMSGCLASS, and SOS SET MSGCLASS.

$MSGCLASS_OUTCLASS_DUMMY

$MSGCLASS_OUTCLASS_DUMMY(value)

This JAL element has the following attributes:

Attribute

Value

Description

Dummy Associated with MSGCLASS

This Descriptor allows you to determine whether the job’s MSGCLASS was specified as a dummy class by JES2 initialization.

Type

Logic Variable

Maximum length

3 characters

Valid values

value—Is the value that will cause this Descriptor to be set to TRUE, and can be one of the following:

  • N—NO
  • Y—YES

Usage

You can use this variable in EVALUATE definition statements and JAL Logic statements, and also as an insert in message definition statements.

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.

Example
EVALUATE  MSGCLASS_DUMMY  ($MSGCLASS_OUTCLASS_DUMMY(YES))

$MSGCLASS_OUTDISP_ABNORM

$MSGCLASS_OUTDISP_ABNORM(disposition)

This JAL element has the following attributes:

Attribute

Value

Description

Abnormal Disposition Associated with MSGCLASS

This Descriptor represents the output disposition for abnormal job termination that is associated with the job’s MSGCLASS by JES2 initialization.

Type

Character string Descriptor

Maximum length

5 characters

Valid values

disposition—Is the disposition that will cause this Descriptor to assume a TRUE value, and can be one of the following:

  • HOLD
  • KEEP
  • LEAVE
  • PURGE
  • WRITE

Usage

You can use this descriptor 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

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.

Example
EVALUATE  MSGCLASS_ABNORM_PURGE  ($MSGCLASS_OUTDISP_ABNORM(PURGE))

$MSGCLASS_OUTDISP_NORM

$MSGCLASS_OUTDISP_NORM(disposition)

This JAL element has the following attributes:

Attribute

Value

Description

Normal Disposition Associated with MSGCLASS

This Descriptor represents the output disposition for normal job termination that is associated with the job’s MSGCLASS by JES2 initialization.

Type

Character string Descriptor

Maximum length

5 characters

Valid values

disposition—Is the disposition that will cause this Descriptor to assume a TRUE value, and can be one of the following:

  • HOLD
  • KEEP
  • LEAVE
  • PURGE
  • WRITE

Usage

You can use this descriptor 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

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.

Example
EVALUATE  MSGCLASS_NORM_HOLD  ($MSGCLASS_OUTDISP_NORM(HOLD))

MSGDEF | MSG

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)

This JAL element has the following attributes:

Attribute

Value

Description

Message Definitions

JAL 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.

Type

Definition statement

Maximum length

Messages exceeding 121 characters (60 characters for CA7) are truncated.

Valid values

  • name—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.
  • message—The text of the message, using the form:

[(COL,n,align)],variable | ‘hard-coded-text’,[(COL,n,align)]...

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.

  • (COL,n,align)—This is an optional text definition construct that indicates you want column alignment.
  • COL—This must be coded as shown.
  • n—Specifies the reference column, and can be a value from 1 to 60.
  • align—Specifies the desired alignment, and must be one of the following:
    • 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.
  • variable | ‘hard-coded-text’—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) refer 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 more information about the facilities provided for formatting messages and displays, see Defining-and-using-messages-and-displays.

  • CA7LTERM(terminal)—Indicates a CA7 terminal to which a message is written using WTCA7. This keyword is mutually exclusive with CONSOLE_NAME, CONSOLE_UCM, and ROUTCDE.
    • terminal—Is a valid 1 to 8 character CA7 logical terminal name.
  • CONSOLE_NAME(console)—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.
    • console—Is a 2-8 character console name, consisting of alphabetic, national (#, @, $), or numeric characters, the first of which must be alphabetic or national.
  • CONSOLE_UCM(ucmid)—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.
    • ucmid—A decimal number between 0-99 inclusive.
  • DESC(desc-list)—Indicates the descriptor code of a message written using WTO. If the message is written using WTU, this keyword is ignored.
    • desc-list—A list of the form (d1[,d2,...,d16]), where dn is a decimal number between 1-16 inclusive.
  • LOG—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.
  • ROUTCDE(routecde-list)—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.
    • routecde-list—A list of the form (rc1[,rc2,...,rc128]) where rcn is a decimal number between 1-128 inclusive.
  • USERID(userid | %stringid)—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.
    • %stringid—You can specify the name of a dynamically constructed character string that has been defined with a STRINGDEF statement.
Example

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)

For more information, see SEND, WTCA7, WTO, and WTU.

$MSSVOLS

$MSSVOLS   [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Volumes Staged By MSS

This Descriptor represents the number of virtual volumes that must be staged by the Mass Storage Subsystem (MSS).

Type

Range Definition Descriptor

Maximum value

9999 MSS staged volumes

Valid values

  • 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 1-4 decimal digits.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$MSSVOLS    NO_MSS_VOLS,1,MSS_VOLS,9,MSS_VOLS_ERROR

$NJEUSER | $NJEU

$NJEUSER(pattern | %patid | table-id)

This JAL element has the following attributes:

Attribute

Value

Description

NJE Userid From JES2 Network Job Header

This Descriptor represents the userid in the JES2 network job header.

Type

Character string Descriptor

Maximum length

8 characters

Valid values

  • 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 ‘*’. If the job was submitted from a virtual machine and forwarded to JES2 through RSCS, this field contains the VM userid.
  • %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. For more information about the description of table support, see DAL-and-JAL-table-management .

Usage

You can use this descriptor 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
Example

$NJEUSER(ACCTNG)
$NJEU(ENGNEER)
$NJEU($TABLE1(USERS))

$NOTIFY

$NOTIFY(pattern | %patid | table-id)

This JAL element has the following attributes:

Attribute

Value

Description

NOTIFY Parameter From the JOB statement or /*NOTIFY

This Descriptor represents the NOTIFY parameter from the JOB statement or the userid from the /*NOTIFY statement.

Type

Character string Descriptor.

Maximum length

8 characters

Valid values

  • pattern—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 ‘*’.
  • %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. For more information about the description of table support, see DAL-and-JAL-table-management .

Usage

You can use this descriptor 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
Example

$NOTIFY(SYSTEMS)
$NOTIFY(AB111)
$NOTIFY($TABLE5(USERS))

ORIF

IF (expression1)
  ...
ORIF (expression2)
  true-action
  ...
ENDIF

This JAL element has the following attributes:

Attribute

Value

Description

Specify Alternative IF 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.

Type

Logic statement

Valid values

  • expression2—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.
  • true-action—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.
Example

IF (ILLEGAL)
 WTU ERROR1
 EXIT FAIL
ORIF(MOUNT)
 SET CLASS(H)
 EXIT REQUEUE
OTHERWISE
 SET CLASS(I)
 EXIT REQUEUE
ENDIF

Important

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 JAL execution resumes after the next ENDIF.

For more information, see ELSE, ENDIF, IF, and OTHERWISE.

$ORIGINAL_INSYSID

$ORIGINAL_INSYSID(pattern | %patid | table-id)

This JAL element has the following attributes:

Attribute

Value

Description

Determine the Original System ID if the Job Came from Another Node

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.

Type

Character string Descriptor

Maximum length

4 characters

Valid values

  • pattern—This is a hard-coded string. It can be 1-4 alphabetic, numeric, or national (#, @, $) characters. 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.

Usage

You can use this descriptor 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
Example
EVALUATE  IS_SYS1  ($ORIGINAL_INSYSID(SYS1))

In this case, for $ORIGINAL_INSYSID to return a TRUE value, the job must have been submitted on ‘SYS1’.

EVALUATE  IS_VALID_SYSID  ($ORIGINAL_INSYSID($TABLE1(SYSTEMS)))

If job did not come from another node the value of this descriptor will contain the same value as $INSYSID.

For more information, see $INSYSID.

OTHERWISE

IF (expression)
  true-action
ORIF (expression)
  true-action
OTHERWISE
  false-action
  ...
ENDIF

This JAL element has the following attributes:

Attribute

Value

Description

Specify Alternative Action

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.

Type

Logic statement.

Valid values

  • expression—A logical expression combining Job Properties and/or Descriptors.
  • true-action—Any valid JAL statements which are to be performed should the IF or the ORIF expression evaluate to TRUE.
  • false-action—Any valid JAL statements which are to be performed should the IF and ORIF expressions evaluate to FALSE.
Example

IF (ILLEGAL)
 WTU ERROR1
 EXIT FAIL
ORIF(MOUNT)
 SET CLASS(H)
 EXIT REQUEUE
OTHERWISE
 SET CLASS(I)
 EXIT REQUEUE
ENDIF

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.

For more information, see ELSE, ENDIF, and IF.

$OUTCLASS

$OUTCLASS(pattern | %patid | table-id)

This JAL element has the following attributes:

Attribute

Value

Description

JAL Assigned Requeue Class

This Descriptor represents a JAL requeue class (the execution class assigned to the job by JAL).

Type

Character string Descriptor

Maximum length

8 character

Valid values

  • pattern—This is a hard-coded string. It can be 1-8 alphabetic or numeric characters. 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. For more information about the description of table support, see DAL-and-JAL-table-management .

Usage

You can use this descriptor in EVALUATE definition statements and JAL Logic statements. This Descriptor can also be used as an insert in message definition statements.

Important

In SMF records $OUTCLASS will be shown as JAL assigned class rather than SLM assigned.

In an uncommon situation when there is no SET CLASS statement in JAL, the $OUTCLASS descriptor will represent the input class.

Example

IF (ILLEGAL)
 WTU ERROR1
 EXIT FAIL
ORIF(MOUNT)
 SET CLASS(H)
 EXIT REQUEUE
OTHERWISE
 SET CLASS(I)
 EXIT REQUEUE
ENDIF

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.

For more information, see $XEQCLASS.

$PAGES

$PAGES   [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Output Pages

This Descriptor represents the estimated number of output pages.

Type

Range Definition Descriptor

Maximum value

99999 expressed in 1000’s of pages.

Valid values

  • start—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.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$PAGES   FEW_PAGES,100,MANY_PAGES,10000,TOO_MANY_PAGES

For more information, see $BYTES, $CARDS, and $LINES.

pattern matching function

Descriptor-name(pattern)

This JAL element has the following attributes:

Attribute

Value

Description

To match a pattern against a string

This is a built-in function provided to allow the interrogation of a character Descriptor to see whether its contents match a pattern.

Type

Pattern Matching Function

Maximum value

Not applicable

Valid values

  • Descriptor-name—A Descriptor that contains character strings.
  • pattern—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 JAL Logic statements. It returns a TRUE/FALSE value.

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:

Example
$ACCT(MMPAY910)

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.

In JAL, this function can be tested by an IF or EVAL statement and the outcome used to determine what actions to take:

IF ($ACCT(MMPAY910)) ...

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 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.

Binding Agent Name Rules:

The rules for matching Binding Agent Names are identical to the rules for matching data set names, with the following exception:

  • The use of the double-asterisk (**) as a wildcard character is meaningless, since Binding Agents cannot have more than two levels for a name.

PATTERNDEF

PATTERNDEF %patid (source1) [ || (source2)]

This JAL element has the following attributes:

Attribute

Value

Description

To Construct Patterns Dynamically

A pattern definition statement is provided to allow you to create patterns dynamically at JAL execution time.

Type

Definition statement

Maximum value

255 characters

Valid values

%patid—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.

  • source1—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, PATTERNDEF %CHARS (‘DEV*’)
    • A character Descriptor. For example, PATTERNDEF %FROM_RACFU ($RACFU)
    • The length of the pattern is the length of the Descriptor.
    • The substring function. For example, PATTERNDEF %FROM_USERC1 ($USERC1,5)
      Here, at JAL execution time, the first 5 characters contained in $USERC1 are used. For an explanation of the substring function refer to the “Substring Function” in this reference section.
    • %PATID—A previously defined pattern. You specify the pattern id.
    • %STRINGID—A previously defined character string, created by a STRINGDEF statement. You specify the string id.
    • ||—Indicates that source2 is to be concatenated to source1.
  • source2—If present, the same rules as source1.

Usage

A %patid can be used in any construct that allows pattern matching.

Example

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.

PATTERNDEF %1ST_3_ACCT_CHARS ($ACCT,3,3) || (‘*’)

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:

EVALUATE JOB_OK ($JOBNAME(%1ST_3_ACCT_CHARS))

The Job 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.

Important

With PATTERNDEF the characters ‘*’ or ‘?’, unless especially noted, are treated as wildcard characters. 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.

For more information, see PATTERNDEFX.

PATTERNDEFX | PATDEFX

PATTERNDEFX %patid (source)

This JAL element has the following attributes:

Attribute

Value

Description

Extended Pattern Definitions

Pattern definition extensions allow you to check for specific types of data in string Descriptors.

Type

Definition statement

Maximum value

255 characters

Valid values

  • %patid—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.
  • source—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, PATTERNDEFX %PROD (‘PROD’)
  • The wildcard characters (? and *). If ‘*’ is coded, it must be the last character in the pattern. For example, PATTERNDEFX %ALL_PROD (‘PROD’,*)
  • 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.
    • A Matches a single alphabetic or national (#, @, $) character.
    • # Matches a single numeric character.
    • N 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:
      PATTERNDEFX %PROD_JOB (‘PROD’,###@)
  • 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
  • JOB USER_DISPLAY

For more information, see CHARSET, PATTERNDEF, and STRINGDEF.

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

$PERFORM(YES | NO)

This JAL element has the following attributes:

Attribute

Value

Description

JOB Statement PERFORM Keyword

This Logic Variable allows you to determine whether the PERFORM= keyword was coded on the JOB statement. This function call returns a TRUE/FALSE value depending on the presence of the PERFORM= keyword on the JOB statement.

Type

Logic Variable

Maximum value

Not applicable

Valid values

  • YES—When TRUE, it indicates that the keyword PERFORM= was coded on the JOB statement.
  • NO—When TRUE, it indicates that the keyword PERFORM= was not coded on the JOB statement.

Usage

You can use this variable in EVALUATE definition statements and JAL Logic statements, and also as an insert in message definition statements.

Example

IF ($PERFORM(YES))
  WTU...

For more information, see $JOB_PERFORM, $JXPERFORM, and SET PERFORM.

$PGMR

$PGMR(pattern | %patid | table-id)

This JAL element has the following attributes:

Attribute

Value

Description

Programmer Name From the JOB statement

This Descriptor represents the programmer name field from the JOB statement.

Type

Character string Descriptor

Maximum length

20 characters.

Valid values

  • pattern—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.
  • %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. For more information about the description of table support, see DAL-and-JAL-table-management .

Usage

You can use this descriptor 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
Example

$PGMR(‘APPLICATIONS TESTING’)
$PGMR($TABLE1(NAMES))

PROCEDURE | PROC

PROCEDURE ID(JAL) [DESC(‘user-description’)]

This JAL element has the following attributes:

Attribute

Value

Description

Indicate Type of Action Language

This statement is a language directive. Its purpose is to indicate the type of Action Language to be processed. For JAL, it is an optional statement. If present, it must be the first statement in your source input to the Language Processor. The short form for this directive is PROC.

Type

Language Directive

Maximum value

Not applicable

Valid values

  • ID(JAL)—Indicates that you are identifying the type of Action Language to be processed.
  • JAL—Specifies that the language is JAL. If the statement is not coded, JAL is the default.
  • DESC(‘user-description’)—Allows you to specify a description that is included in the output from DISPLAY and REFRESH commands for identification purposes.
  • ‘user-description’—Is a string of up to 24 characters, enclosed in apostrophes. To include an apostrophe, code two successive apostrophes.
Example
PROCEDURE ID(JAL) DESC(‘PRODUCTION’)

$PROCEDURE | $PROC

$PROCEDURE name (proc-list)
[LIB(dsname-pattern | % patid | table)] |
[TYPE (INSTREAM |PRIVATE | SYSTEM]

This JAL element has the following attributes:

Attribute

Value

Description

Procedure Name/Library

This Descriptor lets you determine whether or not a particular procedure name pattern has been coded within the job.

Type

Unique Descriptor

Maximum length

Not applicable

Valid values

  • name—Specifies the procedure name to be associated with this $PROCEDURE Descriptor. This symbol must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore(_) characters. The first character must be alphabetic or national. The name must be unique and cannot start with the character $.
  • proc-list—A pattern list for a procedure name. The list can have 1 or many elements (up to 20) and it can be either a hard-coded pattern, a %patid representing a pattern created with a PATTERNDEF, a $TABLEn construct, or a combination of these types. The procedure list is an “OR” list. That is, any one of the procedures satisfies the condition.
  • LIB(dsname-pattern | %patid | table-id)—The data set name from which the procedures procname was retrieved.
  • dsname-pattern—A hard-coded data set name pattern.
  • %patid—The name of a pattern created with a PATTERNDEF statement.
  • table-id—Identifies a specific table and indicates which subtable is to be searched.
  • TYPE—TYPE defines where the procedure was found. It is one of the following:
    • INSTREAM—The procedure was found in an input stream procedure.
    • PRIVATE—The procedure was found in a private library
    • SYSTEMS—The procedure was found in a system library.

For more information about the description of character string facilities, see Character-string-facilities-tutorial. For more information about the description of table support, see DAL-and-JAL-table-management.

Usage

This Unique Descriptor cannot be used with any other statement and can be used only in the Definition Section of JAL.

Example
$PROCEDURE PR333 (AMASPZAP,ZAPVTOC)

In this case any reference to the procedures AMASPZAP or ZAPVTOC will make the procedure property ‘PR333’ TRUE.

$PROCEDURE PR333_QA (SAS*,GL*,AR*,AP*) LIB(PROD.**.LOAD)

In this example, for ‘PR333_QA’ to be TRUE, procedure name should much the pattern and the procedure is retrieved from a data set which matches the data set name pattern defined by the LIB keyword.

$PROCEDURE ONLINE_DATABASE (DC8*,DC9*) TYPE(PRIVATE)

In the example above, ‘ONLINE_DATABASE’ is TRUE when procedure name matches the pattern and it is found in a PRIVATE library.

$PROGRAM | $PGM

$PROGRAM name (name-list)
             [EXEC_ACCT(pattern | %patid | table-id | $BLANK) |
              EXEC_ACCTFLD(field#,pattern | %patid | table-id | $BLANK)]
             [LINKLIST | LIB(dsname-pattern | % patid | table-id)]
             [ONLY]
             [PARM(pattern | %patid | table-id | $BLANK) |
              PARMFLD(field#,pattern | %patid | table-d | $BLANK)|
              PARMDD]
             [STEPNAME(pattern | %patid | table-id)]

This JAL element has the following attributes:

Attribute

Value

Description

Program Name/Library

This descriptor lets you determine whether or not a particular program name pattern has been coded on an EXEC statement. The program library reference can also be established.

Type

Unique Descriptor

Maximum length

Not applicable

Valid values

  • name—Specifies the Job Property name to be associated with this $PROGRAM Descriptor. This symbol must be unique and can consist of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore(_) characters. The first character must be alphabetic or national. The name must be unique and cannot start with the character $.
  • name-list—A pattern list for a program name. The list can have 1 or many elements (up to 20) and it can be either a hard-coded pattern, a %patid representing a pattern created with a PATTERNDEF, a $TABLEn construct, or a combination of these types. The program list is an “OR” list. That is, any one of the programs satisfies the condition.
  • EXEC_ACCT(pattern | %patid | table-id)—When coded, indicates that you want to match the character pattern against the entire ACCT string found on the EXEC statement of a matching program name. The Job Property returns a TRUE value only if both match. This keyword is mutually exclusive with EXEC_ACCTFLD.
    • pattern—A hard-coded pattern of 1-8 characters.
    • %patid—The name of a pattern created with a PATTERNDEF statement.
    • table-id—Identifies a specific table and indicates which subtable is to be searched.
    • $BLANK—Is a special subparameter that allows you to check for blanks.
  • EXEC_ACCTFLD(field#,pattern | %patid | table-id)—When coded, indicates that you want to match the character pattern against a specific field    of the ACCT string found on the EXEC statement of a matching program name. The Job Property returns a TRUE value only if both match. This keyword is mutually exclusive with EXEC_ACCTFLD.
    • field#—Indicates the field reference number of the accounting related field and must be specified as decimal digit(s) 1-68.
    • pattern—A hard-coded pattern of 1-8 characters.
    • %patid—The name of a pattern created with a PATTERNDEF statement.
    • table-id—Identifies a specific table and indicates which subtable is to be searched.
    • $BLANK—Is a special subparameter that allows you to check for blanks.
  • LIB(dsname-pattern | %patid | table-id)—When coded, the LIB parameter requests that the presence of either a STEPLIB or JOBLIB be determined. If there is both a JOBLIB and a STEPLIB, the STEPLIB takes precedence. The Job Property assumes a TRUE value only if there is a JOBLIB or STEPLIB and the first data set name matches the pattern. This keyword is mutually exclusive with the LINKLIST keyword.
    • dsname-pattern—A hard-coded data set name pattern.
    • %patid—The name of a pattern created with a PATTERNDEF statement.
    • table-id—Identifies a specific table and indicates which subtable is to be searched.
  • LINKLIST—If this keyword is present, the presence of a JOBLIB or STEPLIB DD statement in the job stream causes the Job Property to be set to FALSE. This keyword is mutually exclusive with the LIB keyword.
  • ONLY—If this keyword is present, the Job Property is set to TRUE when the specified program name is the only program name referenced in the job. There could be multiple references.
  • STEPNAME(pattern | %patid | table-id)—When coded indicates that you want to match the stepname of the statement that is calling a program that satisfies the program list. The Job Property returns a TRUE value only if both match.
    • pattern—A hard-coded pattern of 1-8 characters.
    • %patid—The name of a pattern created with a PATTERNDEF statement.
    • table-id—Identifies a specific table and indicates which subtable is to be searched.
  • PARM(pattern | %patid | table-id | $BLANK)—When coded, indicates that you want to match the character pattern against the entire parameter string found on the EXEC statement of a matching program name. The Job Property returns a TRUE value only if both match. This keyword is mutually exclusive with PARMFLD.
    • pattern—This is a hard-coded string. It can be 1-100 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.
    • %patid—The name of a pattern created with a PATTERNDEF statement.
    • table-id—Identifies a specific table and indicates which subtable is to be searched.
    • $BLANK—Is a special subparameter that allows you to check for blanks.
  • PARMFLD(field#,pattern | %patid | table-id | $BLANK)—When coded, indicates that you want to match the pattern against a specific field in the parameter string found on the EXEC statement of a matching program name. The Job Property returns a TRUE value only if both match. This keyword is mutually exclusive with PARM.
    • field#—A number 1-50 indicating the particular field for pattern matching. Fields within a parameter character string are separated by commas.
    • pattern—This is a hard-coded string. It can be 1-100 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.
    • %patid—The name of a pattern created with a PATTERNDEF statement.
    • table-id—Identifies a specific table and indicates which subtable is to be searched.
    • $BLANK—Is a special subparameter that allows you to check for blanks.
  • PARMDD—Is a keyword that specifies a DD statement that contains the PARM data. This DD is read and the data is automatically passed to the calling program. The maximum amount of data is 32760 bytes. PARMDD is mutually exclusive with the PARM and PARMFLD keywords.

For more information about the description of character string facilities, see Character-string-facilities-tutorial. For more information about the description of table support, see DAL-and-JAL-table-management.

Usage

This Unique Descriptor cannot be used with any other statement and can be used only in the Definition Section of JAL.

Example
$PROGRAM ILLEGAL (AMASPZAP,ZAPVTOC)

In this case any reference to the programs AMASPZAP or ZAPVTOC in the job stream will make the Job Property ‘ILLEGAL’ TRUE.

$PROGRAM PRODUCTION_JOB (PAY*,GL*,AR*,AP*) LIB(PROD.**.LOAD)

In this example, for ‘PRODUCTION_JOB’ to be TRUE, the following conditions must occur:

  • There is a reference to a program that matches one of the program patterns
  • For the step where the program name matches, the STEPLIB if present, must match the LIB pattern
  • If there is no STEPLIB in the matching step, then the JOBLIB, if present, must match the LIB pattern

If the number of patterns you want to match is large, you can use one or more tables instead of hardcoded patterns.

$PROGRAM ONLINE_DATABASE (DC8*,DC9*) PARM(*IMSS5*)

In the example above, ‘ONLINEDB’ is TRUE when:

  • There is an EXEC statement with a program that matches the program name pattern
  • For that EXEC statement, the PARM keyword has been coded and contains the characters ‘IMSS5’ anywhere in the string

Important

You can use this descriptor to ensure that a particular program is always executed from a specific library.

The PARM and PARMFLD keywords can be used to detect BMPs.

$RACFG | $RG

$RACFG(pattern | %patid | table-id)

This JAL element has the following attributes:

Attribute

Value

Description

GROUP Parameter From the JOB statement

This Descriptor represents the GROUP parameter from the JOB statement.

Type

Character string Descriptor

Maximum length

8 characters

Valid values

  • 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. For more information about the description of table support, see DAL-and-JAL-table-management.

Usage

You can use this descriptor 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
Example

$RACFG(AP100)
$RG(TESTING)
$RACFG($TABLE1(GROUPS))

For more information, see $RACFU.

$RACFU | $RU

$RACFU(pattern | %patid | table-id)

This JAL element has the following attributes:

Attribute

Value

Description

USER Parameter From the JOB statement

This Descriptor represents the USER parameter from the JOB statement.

Type

Character string Descriptor

Maximum length

8 characters

Valid values

  • 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. For more information about the description of table support, see DAL-and-JAL-table-management.

Usage

You can use this descriptor 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
Example

$RACFU(MKTING)
$RU(OPSSHF2)
$RACFU($TABLE2(USERS))

For more information, see $RACFG.

Range

desc [start,]name,[start1,name1,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Range Definitions

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, JAL allows you to divide the range up into segments. You assign Job Property names and specify the starting point for each segment. With this type of definition, multiple Job Properties can be defined with a single statement, but only one can assume a TRUE value.

Type

Definition statement

Maximum value

Not applicable

Valid values

  • desc—The Job or User Descriptor.
  • start—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.
  • 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.

It is important to remember that starting points and Job Property names are paired. The first Job 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 Job 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.
  • JAL 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 Job Property must therefore always be TRUE.

Usage

Use this statement only in the JAL definition section.

The following illustrates the conventions used to assign names to segments of a range:

$VOL_CART_ALL   0,NO_CART_VOLS,1,FEW_CART_VOLS,5,MANY_CART_VOLS

This statement is interpreted as follows:

$VOL_CART_ALL   0 ?€NO_CART_VOLS < 1 ?  FEW_CART_VOLS < 5 ? MANY_CART_VOLS

Where:

  • 0—is the optional first starting point. All ranges begin with 0, whether it is specifically coded or omitted.
  • NO_CART_VOL—is the Job Property name for the segment “less than 1 cartridge volume” (i.e., no private cartridges requested).
  • FEW_CART_VOLS—is the Job Property name for the segment “greater than or equal to 1 cartridge volume but less than 5 cartridge volumes.”
  • MANY_CART_VOLS—is the Job Property name for the segment “greater than or equal to 5 cartridge volumes but less than 9999 volumes.”
Example
$VOL_CART_ALL NO_CARTS,1,CARTS

In this example, the Job Property NO_CARTS is TRUE for jobs not requiring cartridge volumes, while the CARTS Job Property is TRUE for jobs requiring the use of cartridge volumes.

$CPU  LOW_CPU,1:30,MEDIUM_CPU,3,HIGH_CPU

In the second example, any job with a CPU time request greater than or equal to zero but less than    1 minute and 30 seconds has the Job Property LOW_CPU set to TRUE. Any job with a CPU time request greater than or equal to 1 minute and 30 seconds and less than 3 minutes has the MEDIUM_ CPU Job Property set to TRUE, while any job with a CPU time request greater than 3 minutes has the HIGH_CPU Job Property set to TRUE.

$RD

$RD(NC | NR | R | RNC)

This JAL element has the following attributes:

Attribute

Value

Description

Checkpoint/Restart Parameter

This Logic Variable allows you to check the value of the checkpoint/restart parameter. This parameter is set by the RD keyword on the JOB statement or the SET RD Action statement.

Type

Logic Variable

Maximum value

Not applicable

Valid values

  • NC—Returns a value of TRUE when the RD parameter is set to NC.
  • NR—Returns a value of TRUE when the RD parameter is set to NR.
  • R—Returns a value of TRUE when the RD parameter is set to R.
  • RNC—Returns a value of TRUE when the RD parameter is set to RNC.

Usage

You can use this variable in EVALUATE definition statements and JAL Logic statements, and also as an insert in message definition statements.

For more information, see SET RD.

$READER_DATE

$READER_DATE

This JAL element has the following attributes:

Attribute

Value

Description

Reader Date

This Display Variable provides the date on which the job was read into the system.

Type

Display Variable

Maximum value

99.365

Valid values

$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

You can use this variable only as an insert in message definition statements.

For more information, see $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

$READER_DAY_OF_MONTH   [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Reader Day of the Month

This Descriptor provides a number representing the day of the month that the job was read into the system.

Type

Range Definition Descriptor

Maximum value

31

Valid values

  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$READER_DAY_OF_MONTH  WEEK_1,8,WEEK_2,15,WEEK_3,22,WEEK_4

For more information, see $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

$READER_DAY_OF_WEEK [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Reader Day of the Week

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.

Type

Range Definition Descriptor

Maximum value

7

Valid values

  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$READER_DAY_OF_WEEK  WEEKDAY,6,WEEKEND

For more information, see $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

$READER_DAY_OF_YEAR   [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Reader Day of the Year

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).

Type

Range Definition Descriptor

Maximum value

366

Valid values

  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$READER_DAY_OF_YEAR  Q1,91,Q2,181,Q3,271,Q4

For more information, see $READER_DATE, $READER_DAY_OF_MONTH, $READER_DAY_OF_WEEK, $READER_MONTH, $READER_TIME, $READER_TIME_OF_DAY, and $READER_YEAR.

$READER_MONTH

$READER_MONTH   [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Reader Month

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.

Type

Range Definition Descriptor

Maximum value

12

Valid values

  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$READER_MONTH  Q1,4,Q2,7,Q3,10,Q4

For more information, see $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

$READER_TIME

This JAL element has the following attributes:

Attribute

Value

Description

Reader Time

This display variable provides the time at which the job was read into the system.

Type

Display Variable

Maximum value

23:59:59

Valid values

$READER_TIME—Is a valid insert in a MSGDEF statement.

Usage

You can use this variable only as an insert in message definition statements.

For more information, see $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

$READER_TIME_OF_DAY [00:00,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Reader Time of Day

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.

Type

Range Definition Descriptor

Maximum value

23:59

Valid values

  • start—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.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$READER_TIME_OF_DAY  MORNING,12:00,AFTERNOON,18:00,EVENING

For more information, see $READER_DATE, $READER_DAY_OF_MONTH, $READER_DAY_OF_WEEK, $READER_DAY_OF_YEAR, $READER_MONTH, $READER_TIME, and $READER_YEAR.

$READER_YEAR

$READER_YEAR [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Reader Year

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 2010.

Type

Range Definition Descriptor

Maximum value

9999

Valid values

  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$READER_YEAR  PRE_2010,2010,YEAR_2010,2011,POST_2010

For more information, see $READER_DATE, $READER_DAY_OF_MONTH, $READER_DAY_OF_WEEK, $READER_DAY_OF_YEAR, $READER_MONTH, $READER_TIME, and $READER_TIME_OF_DAY.

$REGION

$REGION   [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Maximum Region Size

This descriptor represents the maximum region size (in K-bytes) required during execution, as determined by the largest region requested by a job step or the region size specified on the JOB statement.

Type

Range Definition Descriptor

Maximum value

2096128 expressed in K-bytes

Valid values

  • start—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.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$REGION  HUGE_REGION,4,SMALL_REGION,1024,BIG_REGION

For more information, see SET REGION.

Important

All REGION= values specified in JCL are rounded up to the next highest multiple of 4. This is consistent with how the REGION= parameter is handled by MVS when the job executes. When a job contains REGION=0K, MVS treats this as a request for all storage left in the MVS private area, if required by the program that is executing. Since the amount of storage in the private area varies from installation to installation, ThruPut Manager  has no consistent way of treating this request. You can detect and handle this condition in JAL by coding:

$REGION   HUGE_REGION,4,SMALL_REGION,1024,BIG_REGION,6192,CANT_RUN

Here, HUGE_REGION is assigned only to jobs requesting REGION=0K (requests for 1K to 3K are rounded up to 4K), and can be used later to make a classing decision based on your installation’s standards. Also in this example, jobs requesting more than 6192K are given the name CANT_RUN and can be failed if you do not want jobs that large to run.

$RESTART

$RESTART(NO | YES)

This JAL element has the following attributes:

Attribute

Value

Description

Test for Coded Restart=

This Logic Variable indicates that RESTART= is coded on a job card.

Type

Logic Variable

Maximum value

Not applicable

Valid values

  • NO—RESTART= was not coded on a job card.
  • YES—RESTART= was coded on a job card.

Usage

You can use this variable in EVALUATE definition statements and JAL Logic statements, and also as an insert in message definition statements.

If you code RESTART= step1 it will be considered that RESTART= is not coded.

$ROOM

$ROOM(pattern | %patid | table-id)

This JAL element has the following attributes:

Attribute

Value

Description

JES2 Room Number

This descriptor function represents the JES2 room number.

Type

Character string Descriptor

Maximum length

4 characters

Valid values

  • pattern—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 ‘*’.
  • %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. For more information about the description of table support, see DAL-and-JAL-table-management.

Usage

You can use this descriptor 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
Example

$ROOM(1700)
$ROOM(TEST)
$ROOM($TABLE2(ROOMS))

$REQUIRES_ZOS

$REQUIRES_ZOS   [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Indicate z/OS Release

This descriptor represents the z/OS release number.

Type

Range Definition Descriptor

Maximum value

9999

Valid values

  • start—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.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example

$REQUIRES_ZOS 0,No_Req, +  
             1.11,zOS1_11, +
             1.12,zOS1_12, +
             1.13,zOS1_13, +  
            2.1,zOS2_1   

$SAF_ACEE

STRINGDEF %stringid ($SAF_ACEE,length[,start])

This JAL element has the following attributes:

Attribute

Value

Description

Extract Substring from SAF Accessor Environment Element

This descriptor allows you to extract a substring from the SAF Accessor Environment Element.

Type

Character string Descriptor

Maximum length

168 characters

Valid values

  • %stringid—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.
  • length—Is the number of characters to be extracted, from the range 1-168.
  • start—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

You can use this descriptor only in STRINGDEF definition statements.

Example
STRINGDEF %SAF_INFO ($SAF_ACEE,20,8)

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.

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

STRINGDEF %stringid ($SAF_ACEEINST,length[,start])

This JAL element has the following attributes:

Attribute

Value

Description

Extract Substring from Installation Portion of SAF Accessor Environment Element

This descriptor allows you to extract a substring from the installation portion of the SAF Accessor Environment Element.

Type

Character string Descriptor.

Maximum length

255 characters

Valid values

  • %stringid—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.
  • length—Is the number of characters to be extracted, from the range 1-255.
  • start—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

You can use this descriptor only in STRINGDEF definition statements.

Example
STRINGDEF %SAF_INSTINFO ($SAF_ACEEINST,16,12)

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.

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_CHECK

$SAF_CHECK name [ATTR(ALTER | CONTROL | READ | UPDATE)]
               CLASS(‘class’ | %stringid)
               RESOURCE(‘resource’ | %stringid)

This JAL element has the following attributes:

Attribute

Value

Description

Check Security Authorization

ThruPut Manager  creates a System Authorization Facility (SAF) compatible secure environment in which to do Job Analysis. This descriptor allows you to check the SAF authorization for the SAF user or group associated with the job.

Type

Unique Descriptor

Maximum value

Not applicable

Valid values

  • name—Specifies a unique name that consists of 1 through 24 alphabetic, numeric, national (#,@,$), or underscore (_) characters. The first character must be alphabetic or national. Note that the first character of the name cannot be a dollar sign ($) or underscore (_). This is not equivalent to a Property Name, in that Property Names are assigned TRUE/FALSE values. This name can be used only in EVAL statements, and is assigned one of the following values:
    • AUTHORIZED
    • DENIED
    • NOT_DEFINED
    • ERROR
    • JALTEST
  • ATTR(ALTER | CONTROL | READ | UPDATE)—Indicates that you want to check the access authority.
    • ALTER—Checks whether the SAF user or group has total control over the resource.
    • CONTROL—Checks whether the SAF user or group has CONTROL authority for the resource.
    • READ—Checks whether the SAF user or group can open the resource only to read. This is the default.
    • UPDATE—Checks whether the SAF user or group can open the resource to read or write.
  • CLASS(‘class’ | %stringid)—Specifies that SAF authorization checking is to be performed for a resource of the specified class.
    • ‘class’—Is a 1-8 byte SAF resource class, enclosed in apostrophes.
    • %stringid—You can specify the name of a dynamically constructed character string that has been defined with a STRINGDEF statement. The length can be up to 8 characters.
  • RESOURCE(‘resource’ | %stringid)—Specifies that SAF authorization checking is to be performed for the specified resource.
    • ‘resource’—Is a 1-255 byte SAF resource entity, enclosed in apostrophes.
    • %stringid—You can specify the name of a dynamically constructed character string that has been defined with a STRINGDEF statement. The length can be up to 255 characters.

Usage

You can use this descriptor only in the Definition Section of JAL.

Example

$SAF_CHECK SECURITY CLASS(‘FACILITY’) RESOURCE(‘IMS’)
...
EVAL  AUTHORIZED      (SECURITY(AUTHORIZED))
EVAL  UNAUTHORIZED    (SECURITY(DENIED))
EVAL  UNKNOWN         (SECURITY(NOT_DEFINED))
      EVAL  ERROR           (SECURITY(ERROR))
...
IF (UNAUTHORIZED)
  WTU UNAUTHORIZED_MSG /* Notify user of security violation */
  EXIT FAIL
ENDIF
...

The ThruPut Manager  security environment is identical to the security environment when the job executes.

$SAF_USERNAME

STRINGDEF %stringid ($SAF_USERNAME,length[,start])

This JAL element has the following attributes:

Attribute

Value

Description

Extract Substring from SAF User Name

This descriptor allows you to extract a substring from the SAF user information.

Type

Character string Descriptor

Maximum length

20 characters

Valid values

  • %stringid—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.
  • length—Is the number of characters to be extracted, from the range 1-20.
  • start—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

You can use this descriptor only in STRINGDEF definition statements.

Example
STRINGDEF %USERNAME ($SAF_USERNAME,20)

In this example, the entire SAF user name is extracted and placed in the string variable %USERNAME.

This field is padded with blanks. If no data has been entered for the SAF user name, STRINGDEF will return a string of blanks.

$SCRATCH

$SCRATCH [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Scratch Volumes Requested

This descriptor represents the minimum number of requested scratch cartridges and reels. It is the sum of the values contained in $SCRATCH_AUTO, $SCRATCH_MANUAL and $SCRATCH_ REEL.

Type

Range Definition Descriptor

Maximum value

9999 scratch tapes

Valid values

  • start—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.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$SCRATCH  NO_SCRATCH,1,SCRATCH

For more information, see $SCRATCH_AUTO, $SCRATCH_CART_ALL, $SCRATCH_MANUAL, $SCRATCH_REEL, and $SCRATCH_VTS.

Important

This descriptor includes tape reels and all cartridges.

It is possible for a given file requesting a scratch volume to go to several volumes. This Descriptor assumes only one volume, therefore it represents the minimum number of scratch volumes.

$SCRATCH_AUTO

$SCRATCH_AUTO [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Automated Scratch Cartridge Volumes

This descriptor represents the minimum number of scratch cartridge volumes to be served by the automated system as recorded in the selected Job Profile.

Type

Range Definition Descriptor

Maximum value

9999 scratch cartridges

Valid values

  • start—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.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$SCRATCH_AUTO   NO_AUTO_SCRATCH,1,AUTO_SCRATCH,25,AUTO_SCRATCH_ERR

For more information, see $SCRATCH_CART_ALL and $SCRATCH_MANUAL.

It is possible for a given file requesting a scratch volume to go to several volumes. This Job Descriptor assumes only one volume, therefore it represents the minimum number of scratch volumes.

$SCRATCH_CART_ALL

$SCRATCH_CART_ALL [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Scratch Cartridge Volumes Requested

This job descriptor represents the minimum number of requested scratch cartridge volumes as recorded in the selected Job Profile. It is the sum of the values contained in $SCRATCH_AUTO and $SCRATCH_MANUAL.

Type

Range Definition Job Descriptor

Maximum value

9999 scratch cartridge volumes

Valid values

  • start—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.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$SCRATCH_CART_ALL  NO_SCRATCH_CARTS,1,SCRATCH_CARTS

For more information, see $SCRATCH_AUTO and $SCRATCH_MANUAL.

Important

This descriptor includes regular cartridges and automated cartridges.

It is possible for a given file requesting a scratch volume to go to several volumes. This Descriptor assumes only one volume, therefore it represents the minimum number of scratch volumes.

$SCRATCH_MANUAL

$SCRATCH_MANUAL [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Manual Scratch Cartridge Volumes

This descriptor represents the minimum number of cartridge scratch volumes requested that are to be served manually as recorded in the selected Job Profile.

Type

Range Definition Descriptor.

Maximum value

9999 scratch cartridges

Valid values

  • start—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.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$SCRATCH_MANUAL   NO_CART_SCRATCH,1,CART_SCRATCH,25,CART_SCRATCH_ERR

For more information, see $SCRATCH_AUTO and $SCRATCH_CART_ALL.

It is possible for a given file requesting a scratch volume to go to several volumes. This Descriptor assumes only one volume, therefore it represents the minimum number of scratch volumes.

$SCRATCH_REEL

$SCRATCH_REEL   [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Scratch Non-Cartridge Volumes

This descriptor represents the minimum number of non-cartridge scratch tape volumes requested.

Type

Range Definition Descriptor

Maximum value

9999 scratch tape reels

Valid values

  • start—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.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$SCRATCH_REEL   NO_SCRATCH_REEL,1,SCRATCH_REELS

For more information, see $SCRATCH, $SCRATCH_AUTO, and $SCRATCH_MANUAL.

It is possible for a given file requesting a scratch volume to go to several volumes. This Descriptor assumes only one volume, therefore it represents the minimum number of scratch volumes.

$SCRATCH_VTS

$SCRATCH_VTS [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Scratch VTS Volumes

This descriptor represents the minimum number of VTS scratch volumes requested.

Type

Range Definition Descriptor

Maximum value

9999 scratch VTS volumes

Valid values

  • start—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.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$SCRATCH_VTS   NO_SCRATCH_VTS,1,SCRATCH_VTS

Important

It is possible for a given file requesting a scratch volume to go to several volumes. This Descriptor assumes only one volume, therefore it represents the minimum number of scratch volumes.

Because this descriptor describes virtual volumes, its count is not included in summary Descriptors such as $SCRATCH and $SCRATCH_CART_ALL.

SEND

SEND (id1[,id2,...idN])

This JAL element has the following attributes:

Attribute

Value

Description

Write a Message to a TSO User

This JAL statement causes a message to be written to a TSO user. If the user is not logged on, the message is received at the next logon.

Type

Communication statement

Valid values

id—Specifies the symbol or list of symbols associated with TSO messages, as established by prior MSGDEF statements.

Example

STRINGDEF %USERID ($SUBMITTER_RACFU)
MSGDEF OVERNITE_MSG (‘JOB ‘,$JOBNAME,’ WILL BE QUEUED FOR OVERNIGHT SERVICE.’) +   USERID(%USERID)
...
SEND  OVERNITE_MSG

For more information, see MSGDEF, WTCA7, WTO, and WTU.

Important

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.

SET

SET ARRIVAL_TIME(nnn)
   CATALOG_LOOKUP(NO | YES)
   CLASS(class | REPROCESS | $)
   CPUCAP(mmmm[:nn] | NO)
   FAIL
   JES2_HOLD(YES | NO)
   LABEL(name | %stringid)
   NORMALIZE(YES | NO) [FACTOR(n)]
   NOTIFY(nodename.userid | %stringid)
   PERFORM(nnn | NO)
   PRIORITY(prio | $)
   RD(NC | NR | R | RNC)
   REGION(nnnK | nnnM [, VIRT | REAL])
   SCHENV(envname)
   SERVICE_CLASS(srvclass)

For simplification purposes each ‘SET keyword’ has been documented in a separate section and as such it appears that each request requires a separate SET action statement. You can specify several keywords in a single SET statement. This point is illustrated below with several examples.

This JAL element has the following attributes:

Attribute

Value

Description

Set Job Attributes

The SET statement allows you to set the attributes of the job.

Requests made with the SET statement can be reset at any time during the execution of JAL. The value used at EXIT REQUEUE time is the value from the last SET statement executed for a particular type of request. For more information about the actions resulting from a particular keyword, for example LABEL, see SET LABEL.

Type

Action statement

Example
SET CLASS(T) PRIORITY(10) JES2_HOLD(YES)

The above SET statement includes three requests. It causes jobs to be queued in job class T with an execution priority of 10, and to be placed in a JES2 hold.

SET CLASS(D) PRIORITY($) LABEL(OVERNIGHT)

This statement queues jobs to class D with the same queue priority they had when they entered ThruPut Manager. The jobs will have OVERNIGHT as a label.

SET CPUCAP(2:30) NORMALIZE(YES)

This statement sets a CPU limit of 2:30 minutes and requests that ThruPut Manager adjusts the time, at execution time, according to the CPU time factors for the “executing” CPU.

SET ARRIVAL_TIME

SET ARRIVAL_TIME(nnn)

This JAL element has the following attributes:

Attribute

Value

Description

Set Job Arrival Time

The SET ARRIVAL_TIME statement allows you to change the job’s arrival time to make it appear that it arrived in its Service Class a specified number of hours earlier.

Type

Action statement

Valid values

  • ARRIVAL_TIME(nnn)—Requests that the arrival time for the job be set back a specified number of hours. The short form for this keyword is ARRIVAL.
  • nnn—A number in the range 1-255, representing the number of hours that the arrival time should be set back.

For more information, see $JXARRIVAL.

The SET ARRIVAL_TIME statement gives you some control over the selection order of jobs in the same Service Class. You can promote a job over jobs that have arrived earlier by setting its arrival time; however, jobs with arrival times that are earlier than the newly set arrival time are still selected first.

SET CATALOG_LOOKUP

SET CATALOG_LOOKUP(NO | YES)

This JAL element has the following attributes:

Attribute

Value

Description

Execution-time Catalog Lookup

The SET CATALOG_LOOKUP statement controls whether or not the MHS_VOL function of ThruPut Manager  resolves cataloged volume references at execution time. This is useful when you expect catalog changes after Job Analysis but before job execution.

Type

Action statement

Valid values

  • CATALOG_LOOKUP(NO | YES)—Indicates whether catalog lookups are to be performed at execution time.
  • NO—The MHS_VOL function uses the list of DASD volumes created at Job Analysis. This is the default.
  • YES—When the job is about to be selected for execution, the MHS_VOL function does catalog lookups to refresh the list of DASD volumes.

For more information, see $JXCATALOG_LOOKUP.

Setting CATALOG_LOOKUP(YES) adds an extra cycle of catalog lookups for DASD volumes at execution time.

SET CLASS | SET CL

SET CLASS(class | REPROCESS | $ )

This JAL element has the following attributes:

Attribute

Value

Description

Set Execution Class

The SET CLASS statement assigns the execution class to the job.

Type

Action statement

Valid values

  • CLASS(class | REPROCESS | $)—Sets an execution class for this job. The short form for this keyword is CL.
  • class—Any character A-Z or 0-9.
  • REPROCESS—Indicates that the job is to be placed in the Job Analysis Class to be reprocessed later. This implies that the job will be placed in JES2 HOLD.
  • $—This indicates to ThruPut Manager  to set the class equal to the Job Submission Class.

For more information, see $JXCLASS.

Important

The CLASS can be reset at any time during the execution of the JAL. The value used at JAL EXIT time is the value from the last SET CLASS statement executed.

If no SET CLASS statement is executed, the default is the job submission class.

The status of this request can be displayed using the JAL execution time variable $JXCLASS.

The TIME and REGION default values are associated with the job based on the job Submission class. The values stay with the job regardless of the Execution class assigned in JAL.

The TIME and REGION values can be altered by ThruPut Manager  CPU Capping and Normalization (TIME=) and SET REGION (REGION=) respectively.

SET CPUCAP

SET CPUCAP(mmmmmm[:ss] | NO)

This JAL element has the following attributes:

Attribute

Value

Description

Cap Job CPU

Allows you to set a limit to the amount of CPU time a job can consume. To the system this parameter has the same effect as if TIME= had been coded in the JOB statement.

Type

Action statement

Valid values

  • CPUCAP(mmmmmm[:ss] | NO)—Requests that the CPU time for job be capped. The CPU cap is specified in minutes and seconds:
    • mmmmmm—Specifies the maximum number of CPU minutes. The value can range from 0 to 357912.
    • ss—Specifies the number of seconds. The value can range from 0 to 59.
      mmmmmm can be specified without seconds but ss must be preceded by mmmmmm. For example, 0:30 = 30 sec.
  • NO—This parameter indicates that CPUCAP is not to be used. Allows you to override a previous SET CPUCAP statement.

For an explanation of CPU Capping, refer to the System Programming Guide: Base Product.

For more information, see $CPU, $JOBCPU, $JXCPUCAP, and $STEPCPU.

Important

Since SET CPUCAP replicates the behavior of the TIME keyword on the JOB statement, if a value of 1440 is specified then any TIME keyword specified on an EXEC statement is nullified.

CPU capping can be reset at any time during the execution of the JAL. The value used at JAL EXIT time is the value from the last SET CPUCAP statement executed.

If no SET CPUCAP statement is executed, the default is ‘NO’.

The status of this request can be displayed using the JAL execution time variable $JXCPUCAP. If no SET CPUCAP has been executed, or if a SET CPUCAP(NO) has been executed, this variable displays ‘NO’.

SET FAIL

SET FAIL

This JAL element has the following attributes:

Attribute

Value

Description

Set Job to FAIL at Termination

Specifies that the job will be FAILed when JAL processing is completed.

Type

Action statement

Valid values

FAIL—Indicates that ThruPut Manager  is to queue the job for output (JCL error) instead of execution after JAL processing has completed.

For more information, see EXIT.

Important

This statement allows you to indicate that a job will be failed, but continue JAL processing so that full checking can be completed.

SET FAIL cannot be reset.

SET JES2_HOLD

SET JES2_HOLD(YES | NO)

This JAL element has the following attributes:

Attribute

Value

Description

Set Job JES2 Hold Status

Specifies whether or not a job is to be held by JES2 at the end of Job Analysis.

Type

Action statement

Valid values

JES2_HOLD(YES | NO)—Indicates that the status of the JES2 HOLD action is to be specified.

YES | NO— Self-explanatory.

For more information, see $JXJES2HOLD.

Important

The hold status can be reset at any time during the execution of the JAL. The value used at JAL EXIT time is the value from the last SET JES2_HOLD statement executed.

If no SET JES2_HOLD statement is executed the JES2 “hold status” of the job is preserved. That is, a job that is submitted with TYPRUN=HOLD will continue to be in “hold status” at the end of the Job Analysis. Conversely, if a SET JES2_HOLD(NO) statement is executed, the JES2 hold will be removed for jobs that are submitted with TYPRUN=HOLD.

The status of this request can be displayed using the JAL execution time variable $JXJES2HOLD. If no SET JES2_HOLD has been executed, or if a SET JES2_HOLD(NO) has been executed, this variable displays ‘NO’.

SET LABEL

SET LABEL(character-string | %stringid)

This JAL element has the following attributes:

Attribute

Value

Description

Set Job Label

You can set an identifier which appears in job logs, operator messages, and system message data sets. It allows you to “label” a job or type of job. It also appears in Volume List headings.

Type

Action statement

Valid values

  • LABEL(character-string | %stringid)—Indicates a job label is to be set.
  • character-string—A string of 1-20 characters. If special characters are used, the string must be enclosed in apostrophes. An apostrophe can be included by coding two consecutive apostrophes.
  • %stringid—The name of a character string created with a STRINGDEF statement.

For more information, see $JXLABEL.

Important

The job label can be reset at any time during the execution of the JAL. The value used at JAL EXIT time is the value from the last SET LABEL statement executed.

If no SET LABEL statement is executed, no identifier is assigned to the job.

The LABEL can be displayed using the JAL execution time variable $JXLABEL. If no SET LABEL has been executed it displays as 8 asterisks.

SET MEMLIMIT

SET MEMLIMIT(value)

This JAL element has the following attributes:

Attribute

Value

Description

Set MEMLIMIT Parameter

This statement allows you to set the MEMLIMIT parameter for the job that is being analyzed.

Type

Action statement.

Valid values

  • LABEL(value)—Requests that the MEMLIMIT parameter be set.
  • value—Specifies a value to be used as the limit on the total size of usable virtual storage above the bar in a single address space. The value may be expressed in megabytes (M), gigabytes (G), terabytes (T), or petabytes (P). nnnnn may be a value from 0 to 99999, with a maximum value of 16384P. It can be one of the following:
    • nnnnnM
    • nnnnnG
    • nnnnnT
    • nnnnnP
  • NOLIMIT—Specifies that there is no limit on the virtual storage to be used above the bar.

For more information, see $MEMLIMIT.

SET NORMALIZE

SET NORMALIZE(YES | NO) [FACTOR(n)]

This JAL element has the following attributes:

Attribute

Value

Description

Request CPU Normalization

This statement allows you to adjust the CPU time for a job to reflect the different speeds of processors. The factors to be applied are CPU dependent and are specified on the TMPARM initialization statement. For further information on the CPU factors, refer to the publication System Programming Guide: Base Product.

This feature normally applies to installations with more than one CPU, each with a different processor speed. Note that the factors are applied to the JOB CPU time as well as the step times. For this function to take effect, you must code ‘YES’ and TMPARM must provide factors for the CPU where the job executes.

Type

Action statement

Valid values

  • NORMALIZE(YES | NO)—Requests that the CPU times be normalized for this job. The short form for this keyword is NORM.
  • YES | NO—Self-explanatory.
  • FACTOR(n)—Indicates which set of normalization factors in TMPARM should be used. This keyword is valid only if NORMALIZE(YES) has been specified.
  • n—Is an integer from the range 1-8, used as an index into the set of normalization factors specified by TMPARM. The default factor set is 1.

For more information, see $JXFACTOR and $JXNORM.

Important

The request to normalize CPU times can be reset at any time during the execution of the JAL. When JAL processing is finished, the value from the last SET NORMALIZE statement executed is used.

If no SET NORMALIZE statement is executed, the default is ‘NO’.

The status of normalization can be displayed using the JAL execution time variable $JXNORM. If   no SET NORMALIZE has been executed, or if a SET NORMALIZE(NO) has been executed, this variable displays ‘NO’.

The set of normalization factors selected can be displayed using the execution time variable $JXFACTOR.

SET NOTIFY

SET NOTIFY([nodename.]userid | %stringid)

This JAL element has the following attributes:

Attribute

Value

Description

Set NOTIFY Parameter

This statement allows you to set the NOTIFY parameter for the job that is being analyzed.

Type

Action statement

Valid values

  • NOTIFY([nodename.]userid] | %stringid)—Requests that the NOTIFY parameter be set.
  • [nodename.]userid—Identifies a node and a TSO userid at that node. The nodename is the symbolic name defined by your installation, and is 1 to 8 alphanumeric or national ($, #, @) characters. The first character of nodename must be alphabetic or national ($, #, @). The userid must be defined at the node. It is 1 to 7 alphanumeric or national ($, #, @) characters, and the first character must be alphabetic or national ($, #, @). This subparameter follows the conventions used in JCL, therefore you can specify a userid alone, a nodename and userid, or simply a nodename.
  • %stringid—The name of a character string created with a STRINGDEF statement. The string must evaluate to one of:
    • A valid TSO userid, optionally including a nodename.
    • Blanks, allowing the NOTIFY parameter to be removed.
Example

STRINGDEF %BLANK(‘  ‘)
SET NOTIFY(%BLANK)

For more information, see $JXNOTIFY and $NOTIFY.

If more than one SET NOTIFY is encountered, the last one executed takes effect.

SET PERFORM

SET PERFORM(nnn | NO)

This JAL element has the following attributes:

Attribute

Value

Description

Set Performance Group

This statement allows you to set the Job Performance Group as if an operator command to reset the performance group has been issued.

Type

Action statement

Valid values

  • PERFORM—Requests that the performance group be set.
  • nnn—1 to 999 as normally specified in the MVS RESET command.
  • NO—Reverts to whatever the job had. This allows you to “reset” the value in a situation where you have previously set it in JAL.

For more information, see $JOB_PERFORM, $JXPERFORM, and $PERFORM.

Important

The performance group can be reset at any time during the execution of the JAL. The value used at JAL EXIT time is the value from the last SET PERFORM statement executed.

If no SET PERFORM statement is executed, the default is ‘NO’

The status of normalization can be displayed using the JAL execution time variable $JXPERFORM. If no SET PERFORM has been executed, or if a SET PERFORM(NO) has been executed, this variable displays ‘NO’.

SET PRIORITY

SET PRIORITY(prio | $)

This JAL element has the following attributes:

Attribute

Value

Description

Set Execution Priority

Set the initial execution priority for job. After completion of the Analysis phase the job is requeued with this priority.

Type

Action statement

Valid values

  • PRIORITY(prio | $)—Indicates that the execution priority is to be set. The short form for this keyword is PR.
  • prio—The desired priority, which can be expressed in one of two ways:
    • PRIORITY(n), where n is a number in the range 0-15. This is the usual way of expressing this parameter.
    • PRIORITY(n1,n2), where n1 and n2 are both numbers in the range 0-15. This method complements the priority aging technique used by JES2. It allows you to set the initial priority as if the job had already “aged”. n2 represents the amount of initial “aging” in units of 1/16th.
  • $—Coding this character indicates to ThruPut Manager  that you want the job submission priority.

For more information, see $JXPRIORITY.

Important

The execution priority can be reset at any time during the execution of the JAL. The value used at JAL EXIT time is the value from the last SET PRIORITY statement executed.

If no SET PRIORITY statement is executed, the default is the priority that the job had when it was selected for analysis.

TheexecutionpriorityvaluecanbedisplayedusingtheJALexecutiontimevariable$JXPRIORITY.

SET RD

SET RD(NC | NR | R | RNC)

This JAL element has the following attributes:

Attribute

Value

Description

Set Checkpoint/Restart Options

Set the checkpoint/restart options for the job.

Type

Action statement.

Valid values

  • RD(NC | NR | R | RNC)—Requests that checkpoint/restart options are to be set.
  • NC—Suppresses automatic and deferred checkpoint restarts.
  • NR—Suppresses automatic checkpoint restart but permits deferred checkpoint restarts.
  • R—Restart, checkpoints allowed. Indicates that the operator can perform automatic step restart if the job fails, and does not suppress checkpoint restarts.
  • RNC—Restart, no checkpoints. Indicates that the operator can perform automatic step restart if the job fails, but suppresses automatic and deferred checkpoint restarts.

For more information, see $RD.

SET REGION

SET REGION(nnnnnnnK | nnnnM [,REAL | VIRT])

This JAL element has the following attributes:

Attribute

Value

Description

Set Amount and Type of Storage Required

Set the amount and type of central or virtual storage that the job requires.

Type

Action statement

Valid values

  • REGION(nnnnnnnK | nnnnM [,VIRT | REAL])—Indicates that you want to specify the amount of central or virtual storage that the job requires.
    • nnnnnnnK—1-7 digits specifying the required storage in kilobytes, up to a value of 2096128. If this value is not a multiple of 4, the system rounds it up to the next highest multiple of 4.
    • nnnnM—1-4 digits specifying the required storage in megabytes, up to a value of 2047.
    • REAL—Requests central (real) storage.
    • VIRT—Requests virtual storage.
Example

SET REGION(1024K)
SET REGION(3M,VIRT)

For more information, see $ADDRSPC and $REGION.

Important

This SET statement combines the functionality of the REGION and ADDRSPC keyword on the JOB statement.

Since this statement sets the region size for the job, the system applies the value coded to each step of the job.

SET SCHENV

SET SCHENV(envname | $NO_SCHENV)

This JAL element has the following attributes:

Attribute

Value

Description

Set Scheduling Environment

Set the scheduling environment for the job. After completion of the Analysis phase, the job is requeued with this scheduling environment.

Type

Action statement

Valid values

  • envname—A valid scheduling environment name, which can be 1-16 alphanumeric, national ($, #, @) characters, or the underscore (_). Underscores (_) must be embedded.
  • $NO_SCHENV—A reserved word that indicates that a SCHENV keyword coded on the JOB statement is to be ignored.

For more information, see $CURSCHENV and $IN_SCHENV.

Important

If no SET SCHENV statement is executed, the default is the scheduling environment that the job had when it was selected for analysis.

The scheduling environment can be reset at any time during the execution of the JAL. The value used at JAL EXIT time is the value from the last SET SCHENV statement executed.

Setting the scheduling environment can result in a new service class after JAL processing is complete unless a specific service class is assigned by a SET SERVICE_CLASS statement.

The $NO_SCHENV keyword is provided to allow conversion from IBM’s SCHENV to JBS Environments without any JCL changes.

If you use $NO_SCHENV to remove the job’s scheduling environment and the class of the job is altered after Job Analysis, the job acquires any scheduling environment associated with the new class.

SET SERVICE_CLASS

SET SERVICE_CLASS(srvclass)

This JAL element has the following attributes:

Attribute

Value

Description

Set WLM Service Class

Set the WLM service class for the job. After completion of the Analysis phase, the job is requeued with this WLM service class.

Type

Action statement

Valid values

srvclass—A valid WLM service class name, which can be 1-8 alphanumeric, national ($, #, @) characters, or the underscore (_). Underscores (_) must be embedded.

For more information, see $CURSERVICE_CLASS and $IN_SERVICE_CLASS.

Important

The WLM service class can be reset at any time during the execution of the JAL. The value used at JAL EXIT time is the value from the last SET SERVICE_CLASS statement executed.

If no SET SERVICE_CLASS statement is executed, the default is the WLM service class that the job had when it was selected for analysis.

$SETUP

$SETUP(YES | NO)

This JAL element has the following attributes:

Attribute

Value

Description

JES2 /*SETUP control statement

This descriptor allows you to determine if a job was submitted with a JES2 /*SETUP statement.

This function call 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 .

Type

Logic Variable

Maximum value

Not applicable

Valid values

  • YES—Returns a TRUE value if there is a /*SETUP statement in the job.
  • NO—Returns a TRUE value if there is no /*SETUP statement in the job.

Usage

You can use this variable in EVALUATE definition statements and JAL Logic statements, and also as an insert in message definition statements.

Important

There is a ThruPut Manager  initialization parameter to indicate whether jobs that have a JES2 /*SETUP statement 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.

SLM SERVICE

SLM SERVICE [GENERAL | PRODUCTION GROUP(name)]

This JAL element has the following attributes:

Attribute

Value

Description

Set SLM Service for a Job

This statement determines the type of SLM Service that a job is to receive.

Type

Action Statement

Valid values

  • GENERAL— Requests that the job be given GENERAL Service.
  • PRODUCTION GROUP(name)—Requests that Non-Scheduled Production job to be placed to PRODUCTION queue.
  • GROUP(name)—A group that is specified within the SLM dialog.

For more information, see $JXSLM_SERVICE.

The last SLM SERVICE statement will be honored.

SLM SET CONTROL_CENTER

SLM SET CONTROL_CENTER(cc-name)TYPE(type-name)

This JAL element has the following attributes:

Attribute

Value

Description

Set SLM Control Center and Type

This statement specifies the Control Center and Type for a job.

Type

Action Statement

Valid values

  • CONTROL_CENTER(cc-name)—Is a Control Center name, which represents the first part of Service Group name. It is 1-8 characters long and consists of alphanumeric and national ($, #, @) characters. The first character cannot be numeric.
  • TYPE(type-name)—Is a Type name, which represents the second part of Service Group name. It is 1-8 characters long and consists of alphanumeric and national ($, #, @) characters. The first character cannot be numeric.

Important

If the job is not SLM-managed, this statement has no effect.

If more than one SLM SET CONTROL_CENTER is encountered, the last one executed takes effect.

SLM SET MANAGED

SLM SET MANAGED(YES | NO)

This JAL element has the following attributes:

Attribute

Value

Description

Specify a Job is SLM-managed

The SLM SET MANAGED statement is used in a Fast Path implementation approach to specify whether a job is SLM-managed.

Type

Action Statement

Valid values

  • YES—Specifies that SLM is to manage the job.
  • NO—Specifies that SLM is not to manage the job.

For more information, see $JXSLM_MANAGED.

The job can be removed from SLM-managed status at any time during the execution of JAL. The value used at JAL EXIT time is the value from the last SLM SET MANAGED statement executed.

SLM SET NO_CAPACITY_MANAGEMENT

SLM SET NO_CAPACITY_MANAGEMENT

This JAL element has the following attributes:

Attribute

Value

Description

Specify a Job is not Subject to Capacity Management Related Constraints

The SLM SET NO_CAPACITY_MANAGEMENT statement is used to specify that although a job’s characteristics may make it eligible to be constrained by Capacity Management as specified in the current active SLM Policy, it is not to be subject to those constraints

Type

Action Statement.

If the job is not SLM managed, this statement has no effect.

SLM SET NO_OPP

SLM SET NO_OPP

This JAL element has the following attributes:

Attribute

Value

Description

Specifies that the job is to be exempt from being delayed by OPP and is not subject to online performance protection.

Type

Action statement

If the job is not SLM managed, this statement has no effect.

SLM SET QUICKJOB

SLM SET QUICKJOB(YES | NO)

This JAL element has the following attributes:

Attribute

Value

Description

Specify a Job is Quick Job

The SLM SET QUICKJOB statement is used to specify a job that executes extremely quick and installation gives it a preferential treatment.

Type

Action Statement

Valid values

  • YES—The job will be treated by SLM as QUICKJOB.
  • NO—The job will be treated normally.

$SOS_DEFAULT_BURST

$SOS_DEFAULT_BURST(YES | NO)

This JAL element has the following attributes:

Attribute

Value

Description

BURST Default for the Job

This Logic Variable allows you to determine whether the job’s SYSOUT output is to be burst by default.

This function call returns a TRUE/FALSE value depending on whether the job’s SYSOUT output is to be burst by default.

Type

Logic Variable

Maximum value

Not applicable

Valid values

  • YES—When TRUE, it indicates that the job’s SYSOUT output is to be burst.
  • NO—When TRUE, it indicates that the job’s SYSOUT output is not to be burst.

Usage

You can use this variable in EVALUATE definition statements and JAL Logic statements, and also as an insert in message definition statements.

Example

IF ($SOS_DEFAULT_BURST(YES))
  WTU...

For more information, see SOS SET DEFAULT_BURST.

$SOS_DEFAULT_FORMS

$SOS_DEFAULT_FORMS(pattern | %patid | table-id)

This JAL element has the following attributes:

Attribute

Value

Description

FORMS Default for the Job

This descriptor represents the default FORMS setting for the job.

Type

Character string Descriptor

Maximum length

4 characters

Valid values

  • pattern—Is a 1-8 character pattern to be matched against the default FORMS setting for the job.
  • %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. For more information about the description of table support, see DAL-and-JAL-table-management.

Usage

You can use this descriptor 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

For more information, see SOS SET DEFAULT_FORMS.

$SOS_DEFAULT_LINECT

$SOS_DEFAULT_LINECT [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

LINECT Default for the Job

This descriptor returns the default for the LINECT parameter for the job, specifying the maximum number of lines that JES2 is to print on a page.

Type

Range Definition Descriptor

Maximum value

255 lines

Valid values

  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

For more information, see SOS SET DEFAULT_LINECT.

$SOS_DEFAULT_PRINT_DEST

$SOS_DEFAULT_PRINT_DEST(pattern | %patid | table-id)

This JAL element has the following attributes:

Attribute

Value

Description

Print Destination Default for the Job

This Descriptor represents the default destination for a job’s printed data sets.

Type

Character string Descriptor

Maximum length

127 characters

Valid values

  • pattern—Is a 1-127 character pattern to be matched against the default destination setting for the job’s printed data sets.
  • %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. For more information about the description of table support, see DAL-and-JAL-table-management.

Usage

You can use this descriptor 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

For more information, see SOS SET DEFAULT_PRINT_DEST.

$SOS_DEFAULT_PUNCH_DEST

This Descriptor represents the default destination for a job’s punched data sets.

$SOS_DEFAULT_PUNCH_DEST(pattern | %patid | table-id)

This JAL element has the following attributes:

Attribute

Value

Description

Punch Destination Default for the Job

Type

Character string Descriptor

Maximum length

127 characters

Valid values

  • pattern—Is a 1-127 character pattern to be matched against the default destination setting for the job’s punched data sets.
  • %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. For more information about the description of table support, see DAL-and-JAL-table-management.

Usage

You can use this descriptor 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

For more information, see SOS SET DEFAULT_PUNCH_DEST.

$SOS_JOB_COPIES

$SOS_JOB_COPIES [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Number of Copies of SYSOUT data sets

This descriptor returns the number of copies of SYSOUT data sets for the job.

Type

Range Definition Descriptor

Maximum value

255 copies

Valid values

  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

For more information, see SOS SET JOB_COPIES.

$SOS_JOB_LINES

$SOS_JOB_LINES   [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Line Count Limit for the Job

This Descriptor returns the limit for the number of lines of SYSOUT output for the job expressed in thousands of lines (a value of 1 represents 1000 lines).

Type

Range Definition Descriptor

Maximum value

999999 thousands of lines

Valid values

  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

For more information, see SOS SET JOB_LINES.

$SOS_JOB_NOLOG

$SOS_JOB_NOLOG(YES | NO)

This JAL element has the following attributes:

Attribute

Value

Description

NOLOG Default for the Job

This Logic Variable allows you to determine whether the job’s hard-copy log set not to be printed.

This function call returns a TRUE/FALSE value depending on whether the job’s hard-copy log set not to be printed.

Type

Logic Variable

Maximum value

Not applicable

Valid values

  • YES—When TRUE, it indicates that the job log is set not to be printed.
  • NO—When TRUE, it indicates that the job log is set to be printed.

Usage

You can use this variable in EVALUATE definition statements and JAL Logic statements, and also as an insert in message definition statements.

Example

EVALUATE NOLOG ($SOS_JOB_NOLOG(YES))
IF (NOLOG)
  WTU...

For more information, see SOS SET JOB_NOLOG.

SOS SET DEFAULT_BURST

SOS SET DEFAULT_BURST(Y | YES | N | NO |)

This JAL element has the following attributes:

Attribute

Value

Description

Set Default BURST Parameter

This statement allows you to set the default for the BURST parameter for a job. This default applies unless the parameter is explicitly set on a JCL or JECL statement.

Type

Action statement

Valid values

  • YES—It indicates that the job’s SYSOUT output is to be burst.
  • NO—It indicates that the job’s SYSOUT output is not to be burst.

For more information, see $SOS_DEFAULT_BURST.

SOS SET DEFAULT_FORMS

SOS SET DEFAULT_FORMS(formname | %stringid)

This JAL element has the following attributes:

Attribute

Value

Description

Set Default FORMS Parameter

This statement allows you to set the default for the FORMS parameter for a job. This default applies unless the parameter is explicitly set on a JCL or JECL statement.

Type

Action statement.

Valid values

  • formname—Identifies the print or punch forms, and is 1 to 8 alphanumeric or national ($, #, @) characters.
  • %stringid—The name of a character string created with a STRINGDEF statement.

For more information, see $SOS_DEFAULT_FORMS.

SOS SET DEFAULT_LINECT

SOS SET DEFAULT_LINECT(nnn | %stringid)

This JAL element has the following attributes:

Attribute

Value

Description

Set Default LINECT Parameter

This statement allows you to set the defaults for the LINECT parameter for a job. This default applies unless the parameter is explicitly set on a JCL or JECL statement.

Type

Action statement

Valid values

  • nnn—Maximum number of lines JES2 is to print on each page, and is a number from 0-255.
  • %stringid—The name of a character string created with a STRINGDEF statement.

For more information, see $SOS_DEFAULT_LINECT.

SOS SET DEFAULT_PRINT_DEST

SOS SET DEFAULT_PRINT_DEST(destination | %stringid)

This JAL element has the following attributes:

Attribute

Value

Description

Set Default Printer DEST Parameter

This statement allows you to set the default for the DEST parameter for a job’s printed data sets. This default applies unless the parameter is explicitly set on a JCL or JECL statement.

Type

Action statement

Valid values

  • destination—Represents the destination for the printed data sets, and must conform to the definition for a legal destination in JCL or JECL.
  • %stringid—The name of a character string created with a STRINGDEF statement.

For more information, see $SOS_DEFAULT_PRINT_DEST.

SOS SET DEFAULT_PUNCH_DEST

SOS SET DEFAULT_PUNCH_DEST(destination | %stringid)

This JAL element has the following attributes:

Attribute

Value

Description

Set Default Punch DEST Parameter

This statement allows you to set the default for the DEST parameter for a job’s punched data sets. This default applies unless the parameter is explicitly set on a JCL or JECL statement.

Type

Action statement

Valid values

  • destination—Represents the destination for the punched data sets, and must conform to the definition for a legal destination in JCL or JECL.
  • %stringid—The name of a character string created with a STRINGDEF statement.

For more information, see $SOS_DEFAULT_PUNCH_DEST.

SOS SET DEFAULT_ROOM

SOS SET DEFAULT_ROOM(room | %stringid)

This JAL element has the following attributes:

Attribute

Value

Description

Set Default ROOM Parameter

This statement allows you to set the default for the ROOM parameter for a job. This default applies unless the parameter is explicitly set on a JCL or JECL statement.

Type

Action statement

Valid values

  • room—Represents the programmer’s room number, and is 1-4 alphanumeric characters.
  • %stringid—The name of a character string created with a STRINGDEF statement.

For more information, see $ROOM.

SOS SET DO_NOT_LOG_ALTERS

SOS SET DO_NOT_LOG_ALTERS

This JAL element has the following attributes:

Attribute

Value

Description

Stops Logging SOS ALTER Messages

This statement allows you to turn off the logging of statements affected by SOS ALTER actions.

Type

Action statement

Valid values

DO_NOT_LOG_ALTERS—Indicates that messages logging the statements affected by SOS ALTER are not to be issued.

For more information, see SOS SET LOG_ALTERS.

SOS SET JOB_COPIES

SOS SET JOB_COPIES(nnn)

This JAL element has the following attributes:

Attribute

Value

Description

Set Number of Job Copies

This statement allows you to set the number of copies of SYSOUT data sets for the job. This is the same as setting the number of copies using the ACCT keyword of the JOB statement or with the COPIES keyword of the JECL statement /*JOBPARM.

Type

Action statement

Valid values

  • JOB_COPIES(nnn)—Indicates that you want to set the number of copies of printed output for the job.
  • nnn—Is a number in the range 1-255.

For more information, see $SOS_JOB_COPIES.

SOS SET JOB_LINES

SOS SET JOB_LINES(nnnnnn[, CANCEL | DUMP | WARNING])

This JAL element has the following attributes:

Attribute

Value

Description

Set Number of Lines Limit for the Job

This statement allows you to set the limit for the number of lines of SYSOUT output for the job, and optionally the action to take if the limit is exceeded. This is the same as setting the number of lines using the LINES keyword of the JOB statement or with the LINES keyword of the JECL statement /*JOBPARM.

Type

Action statement

Valid values

  • JOB_LINES(nnnnnn[, CANCEL | DUMP | WARNING])—Indicates that you want to set the limit for the number of lines of printed output for the job.
  • nnnnnn—Is a number in the range 0-999999, representing the number of thousands of lines (a value of 1 represents 1000 lines).
  • CANCEL—Requests that the job be canceled without a storage dump when the output for the job exceeds the limit.
  • DUMP—Requests that the job be canceled with a storage dump when the output for the job exceeds the limit.
  • WARNING—Requests that the job be allowed to continue when the output for the job exceeds the limit, but that the JES2 warning message be issued to the operator.

For more information, see $SOS_JOB_LINES and $LINES.

SOS SET JOB_NOLOG

SOS SET JOB_NOLOG(Y | YES | N | NO)

This JAL element has the following attributes:

Attribute

Value

Description

Set Request for JES2 not to print the job log

This statement allows you to set the NOLOG parameter for a job.

Type

Action statement

Valid values

  • YES—Requests that JES2 not print the job log.
  • NO—Requests that JES2 print the job log.

For more information, see $SOS_JOB_NOLOG.

SOS SET LOG_ALTERS

SOS SET LOG_ALTERS

This JAL element has the following attributes:

Attribute

Value

Description

Logging SOS ALTER Messages

This statement allows you to log SOS ALTER messages.

Type

Action statement

Valid values

LOG_ALTERS—Indicates that messages logging the statements affected by SOS ALTER should be issued. It is a default.

If more than one SOS SET LOG_ALTERS or SOS SET DO_NOT_LOG_ALTERS statement is issued, the last one takes effect.

For more information, see SOS SET DO_NOT_SOS_ALTERS.

SOS SET MSGCLASS

SOS SET MSGCLASS(class)

This JAL element has the following attributes:

Attribute

Value

Description

Set MSGCLASS

This statement allows you to specify a MSGCLASS for the job.

Type

Action statement

Valid values

  • MSGCLASS(class)—Indicates that the MSGCLASS for the job is to be set.
  • class—Any character A-Z or 0-9.

For more information, see $CURMSGCLASS, $INMSGCLASS, and $MSGCLASS_ALTERED.

The MSGCLASS can be reset at any time during the execution of the JAL. The value used at JAL EXIT time is the value from the last SOS SET MSGCLASS statement executed.

$SPACE

$SPACE [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Total New DASD Space Requested

This Descriptor represents the total amount of new DASD space requested (primary and secondary) for all data sets (temporary and permanent). Note that secondary space represents the maximum amount that the particular job may request (16 extents).

Type

Range Definition Descriptor

Maximum value

99999 expressed in megabytes of DASD space

Valid values

  • start—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 megabytes as 1-5 decimal digits.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$SPACE  SPACE_OKAY,300,ASK_FIRST

For more information, see $SPACEP, $SPACEPP, $SPACEPS, $SPACET, $SPACETP, and $SPACETS.

The value is rounded upwards by 0.49 of a megabyte. For example, if the maximum width is between zero and half a megabyte it will be treated as if it were zero. If the value was 0.7 then it shows as 1.

$SPACEP

$SPACEP [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Total Permanent DASD Space

This Descriptor represents the total amount of new permanent DASD space requested in the job for all data sets. Note that secondary space represents the maximum amount that the particular job may request (16 extents).

Type

Range Definition Descriptor

Maximum value

99999 expressed in megabytes of DASD space

Valid values

  • start—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 megabytes as 1-5 decimal digits.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$SPACEP  PERM_SPACE_OK,300,ASK_FOR_PERM_SPACE,1000,PERM_SPACE_ERR

For more information, see $SPACEP, $SPACEPP, $SPACEPS, $SPACET, $SPACETP, and $SPACETS.

The value is rounded upwards by 0.49 of a megabyte. For example, if the maximum width is between zero and half a megabyte it will be treated as if it were zero. If the value was 0.7 then it shows as 1.

$SPACEPP

$SPACEPP [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Permanent Primary DASD Space

This Descriptor represents the maximum amount of new permanent primary DASD space requested in the job for all data sets.

Type

Range Definition Descriptor

Maximum value

99999 expressed in megabytes of DASD space

Valid values

  • start—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 megabytes as 1-5 decimal digits.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$SPACEPP   PRIME_PERM_OKAY,300,ASK_FOR_PRIME_PERM

For more information, see $SPACE, $SPACEP, $SPACEPS, $SPACET, $SPACETP, and $SPACETS.

The value is rounded upwards by 0.49 of a megabyte. For example, if the maximum width is between zero and half a megabyte it will be treated as if it were zero. If the value was 0.7 then it shows as 1.

$SPACEPS

$SPACEPS [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Permanent Secondary DASD Space

This descriptor represents the maximum amount (16 extents) of new permanent secondary DASD space requested in the job for all data sets.

Type

Range Definition Descriptor

Maximum value

99999 expressed in megabytes of DASD space

Valid values

  • start—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 megabytes as 1-5 decimal digits.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$SPACEPS   PERM_SECONDARY_OK,100,ASK_FOR_PERM_SECONDARY

For more information, see $SPACE, $SPACEP, $SPACEPP, $SPACET, $SPACETP, and $SPACETS.

The value is rounded upwards by 0.49 of a megabyte. For example, if the maximum width is between zero and half a megabyte it will be treated as if it were zero. If the value was 0.7 then it shows as 1.

$SPACET

$SPACET [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Total Temporary DASD Space

This descriptor represents the high water mark of temporary DASD space needed by the job.

Type

Range Definition Descriptor

Maximum value

99999 expressed in megabytes of DASD space

Valid values

  • start—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 megabytes as 1-5 decimal digits.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$SPACET   TEMP_SPACE_OK,300,ASK_FOR_TEMP_SPACE

For more information, see $SPACE, $SPACEP, $SPACEPP, $SPACEPS, $SPACETP, and $SPACETS.

The value is rounded upwards by 0.49 of a megabyte. For example, if the maximum width is between zero and half a megabyte it will be treated as if it were zero. If the value was 0.7 then it shows as 1.

$SPACETP

$SPACETP [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Temporary Primary DASD Space

This Descriptor represents the high water mark of temporary primary DASD space needed by the job.

Type

Range Definition Descriptor.

Maximum value

99999 expressed in megabytes of DASD space

Valid values

  • start—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 megabytes as 1-5 decimal digits.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$SPACETP   TEMP_PRIMARY_OKAY,300,ASK_FOR_TEMP_PRIMARY

For more information, see $SPACE, $SPACEP, $SPACEPP, $SPACEPS, $SPACET, and $SPACETS.

The value is rounded upwards by 0.49 of a megabyte. For example, if the maximum width is between zero and half a megabyte it will be treated as if it were zero. If the value was 0.7 then it shows as 1.

$SPACETS

$SPACETS [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Temporary Secondary DASD Space

This descriptor represents the high water mark of temporary secondary DASD space needed by the job.

Type

Range Definition Descriptor

Maximum value

99999 expressed in megabytes of DASD space

Valid values

  • start—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 megabytes as 1-5 decimal digits.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$SPACETS   TEMP_SECONDARY_OK,200,ASK_FOR_TEMP_SECONDARY

For more information, see  $SPACE, $SPACEP, $SPACEPP, $SPACEPS, $SPACET, and $SPACETP.  

The value is rounded upwards by 0.49 of a megabyte. For example, if the maximum width is between zero and half a megabyte it will be treated as if it were zero. If the value was 0.7 then it shows as 1.

$STEPCPU

$STEPCPU [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Maximum Step CPU Time

This descriptor represents the maximum estimated CPU time for any step in the job.

Type

Range Definition Descriptor

Maximum value

357912:00 in minutes

Valid values

  • 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 mmmmmm:ss, where, mmmmmm ranges from 0 to 357912 in minutes and ss ranges from 0 to 59 in seconds. The value mmmmmm can be specified without seconds but ss must be preceded by mmmmmm. For example, 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$STEPCPU  SMALL_STEP_CPU,2:30,BIG_STEP_CPU,10,TOO_MUCH_STEP_CPU

For more information, see $CPU, $JOBCPU, and SET CPUCAP.

$STEPTOT

$STEPTOT [0,]name1,start2,name2[,...,startN,nameN]

This JAL element has the following attributes:

Attribute

Value

Description

Total Number of Steps

This Descriptor represents the total number of steps in a job.

Type

Range Definition Descriptor

Maximum value

255 steps

Valid values

  • start—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 steps from 0 to 255.
  • 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

You can use this descriptor in the Definition Section of JAL, and also as an insert in message definition statements.

Example
$STEPTOT  SINGLE_STEP,2,MULTI_STEP

You can use this descriptor to detect single step IEFBR14 jobs so they can be classed accordingly (normally clean up jobs).

STRINGDEF

STRINGDEF %stringid (source1) [ || (source2)]

This JAL element has the following attributes:

Attribute

Value

Description

To Define Character Strings Dynamically

This definition statement is provided to allow you to dynamically define character strings at JAL execution time.

Type

Definition statement

Maximum value

255 characters

Valid values

  • %stringid—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.
  • source1—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, STRINGDEF %STRING (‘DEVELOP’)
    • A character Descriptor. For example, STRINGDEF %FROM_RACFU ($RACFU)
      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 symbols are accepted only in a STRINGDEF.
    • The substring function. For example, STRINGDEF %NAME1 ($USERC1,5)
      Here, at JAL execution time, the first 5 characters contained in $USERC1 are used. For an explanation of the substring function refer to the “Substring Function” in this section.
    • %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.
    • %STRINGID—A character string that was previously defined with STRINGDEF. You specify the string id.
    • ||—Indicates that source2 is to be concatenated to source1.
  • source2—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 %stringid can be used in any construct that allows character Job/User descriptors.

Example

STRINGDEF  %NAME ($PGMR,4)
...
...
IF (%NAME(‘MIKE’))

is a valid construct or

EVALUATE PRODJOB (%NAME(‘MIKE’))
...
IF (PRODJOB)

is a valid construct.

STRINGDEF %BLANK(‘  ‘)
SET NOTIFY(%BLANK)

is also a valid construct.

Example

With STRINGDEF the characters ‘*’ or ‘?’ are treated as normal characters.

The maximum length for the resulting character string is 255 characters.

$SUBMITTER_RACFG

$SUBMITTER_RACFG(pattern | %patid | table-id)

This JAL element has the following attributes:

Attribute

Value

Description

RACF Group of Job Submitter

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.

Type

Character String Descriptor

Maximum length

8 characters

Valid values

  • 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. For more information about the description of table support, see DAL-and-JAL-table-management.

Usage

You can use this descriptor 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
Example

$SUBMITTER_RACFG(AP100)
$SUBMITTER_RACFG($TABLE1(GROUPS))

For more information, see $RACFG, $RACFU, and $SUBMITTER_RACFU.

$SUBMITTER_RACFU

$SUBMITTER_RACFU(pattern | %patid | table-id)

This JAL element has the following attributes:

Attribute

Value

Description

RACF USER Parameter of Job Submitter

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.

Type

Character String Descriptor

Maximum length

8 characters

Valid values

  • 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. For more information about the description of table support, see DAL-and-JAL-table-management.

Usage

You can use this descriptor 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
Example

$SUBMITTER_RACFU(MKTING)
$SUBMITTER_RACFU($TABLE1(USERS))

For more information, see $RACFG, $RACFU, and $SUBMITTER_RACFG.

$SUBMITTER_TSSU

$SUBMITTER_TSSU(pattern | %patid | table-id)

This JAL element has the following attributes:

Attribute

Value

Description

TSS User ID of Job Submitter

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.

Type

Character String Descriptor

Maximum length

8 characters

Valid values

  • 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. For more information about the description of table support, see DAL-and-JAL-table-management.

Usage

You can use this descriptor 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
Example

$SUBMITTER_TSSU(PM800MP)
$SUBMITTER_TSSU($TABLE1(TSSUSERS))

For more information, see $TSSUSER.

This descriptor is applicable to TOP SECRET security environments.

substring function

(Character-descriptor[,length[,starting-position]])

This JAL element has the following attributes:

Attribute

Value

Description

To extract character substrings

This is a built-in function provided to facilitate the creation of character strings from character Descriptors.

Type

Character String Function

Maximum value

Not applicable

Valid values

  • character descriptor—Represents a character Job/User Descriptor.
  • length—The number of characters to be used. If this operand is omitted the length of the Job/User descriptor is used. The substring function allows a value from 1 to 255.
  • starting position—The starting position of the character string within the Job/User 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 described below.

It can also be used with the JLS_LIMITDEF statement to construct Limiting Agent names.

Important

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

$SCHENV_SYSAFF

$SCHENV SYSAFF(system-name(s) )

This JAL element has the following attributes:

Attribute

Value

Description

Scheduling Environment System Affinity

This descriptor represents the JES2 system affinity associated with the Scheduling Environment.

Type

Character-string descriptor

Maximum length

8 characters

Valid values

system-name(s)—You can use system-names to determine if the job can execute in the named system.

Usage

You can use this descriptor in EVALUATE definition statements and JAL Logic statements. This Descriptor can also be used as an insert in message definition statements.

Example
EVALUATE SCHENV_S1 ($SCHENV_SYSAFF(SYS1))

In this case, for $SCHENV_SYSAFF to return a TRUE value the Scheduling Environment system affinity must include SYS1.

When using the Job Extract Facility, the value returned is the 32-bit System Affinity Mask.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*