General
Domain: | Job variables |
Macro type: | Type S (standard form/C/D/E/L form) see section “The MF operand” |
In the C and D forms of the macro, a prefix (PREFIX = pre, where pre is 1..3 letters) can be specified (see section “The PREFIX operand”). | |
Default value: | PREFIX=IDJ |
Macro description
The STAJV macro transfers the attributes of a job variable to a user area or creates a list of job variable names in this area.
Macro call format and operand description
Operation | Operands |
|
|
jvid
Identifies the job variable whose attributes are to be transferred to the user area. This is not possible for special job variables.
jvid can be:
jvname | A fully or partially qualified path name of a permanent or temporary job variable. |
*jvlink | A valid job variable link name. |
temp | A name list is output containing all of the temporary job variables created for the job. |
area
Specifies the user area to which the information is to be transferred (see “Function” below).
size
Specifies the length of the area in bytes.
Up to VERSION=3 the maximum length is 32767 bytes.
The length of the area is dependent on the output format:
OUTPUT=OLD :
size
>=
60 bytes, where 60 bytes are set as default value;
OUTPUT=NEW:
size
>=
80 bytes, where 80 bytes are set as default value (when VERSION=2 is specified (JV V10.0))size
>=
120 bytes, where 120 bytes are set as default value (when VERSION=3 is specified (JV V11.0 und V11.2))size
>=
160 bytes, where 160 bytes are set as default value (when VERSION=4 is specified (JV>=
V12.0))
OUTPUT=
Specifies the output format for a job variable whose name was specified in fully qualified form.
This specification is only permitted for Version 2 and higher and when MF=L or MF=S is specified.
OLD
Default value; the requested information contains only the fixed part of the catalog entry, but without the name of the job variable (60 bytes). A DSECT for this output format is generated with the IDJE macro (see also note on DSECT).
NEW
The information is requested in the new format.
If VERSION=2 is specified, the information is output in JV V10.0 layout (80 bytes).
If VERSION=3 is specified, the information is output in JV V11.0 or JV V11.2 layout (120 bytes).
If VERSION=4 is specified, the information is output in JV
>=
V12.0 layout (160 bytes).
LIST=
Determines the output format in the user area. This operand only takes effect when Version >=
1 and the path name is specified in partially qualified form (see paragraph “Function” below).
OLD
Default value; the old output format (without :catid:$userid.) is supported.
NEW
Outputs the complete path name (with :catid:$userid.).
TIMBASE=
Determines the time base to be used for the creation date and the deletion date. This operand only takes effect when VERSION=4 and OUTPUT=NEW are specified.
*UTC
Default value; UTC time (global time) is to be used as the time base.
*LTI
Specifies that the local time set in the calling system is to be used as the time base.
ODSECT=
Specifies for which output format a DSECT is to be generated.
Permitted only when MF=D is specified.
NO
Default value; the DSECT for the old output format can be generated with the IDJE macro (see OUTPUT=OLD).
YES
The DSECT is generated for the new output format (80/120/160 bytes; see OUTPUT=NEW).
SELADDR=
Limits the jobset specified by the fully or partially qualified path name jvid, with further selection criteria. If the operand is not specified, the IDJFJVS field is set to zero, and no further selection takes place.
Values can only be specified in versions >=
2.
selection
Symbolic address of the parameter list which was created with the desired selection criteria by calling the JVSEL macros (see "JVSEL Limiting the JV selection of the STAJV macros to specific attributes" ff). See paragraph "Function" below.
SORT=
Determines the sorting of catalog entries/ path names in the output.
*JVNAM
The catalog entries/ path names are sorted alphabetically for output; default.
NO
The catalog entries/ path names are output in the order that they appear in the catalog.
VERSION=
Specifies which BS2000 version the macro expansion is to be compatible with.
0
Is the default: the macro expansion is compatible with JV <
V8.7.
The following specifications are not supported yet in this version:
MF=C/D (see the DSECT note)
LIST=NEW
OUTPUT=NEW
SELADDR=
1
The macro expansion is compatible with JV V8.7. The following
specifications are not supported yet in this version:
MF=C/D (see the DSECT note)
OUTPUT=NEW
SELADDR=
2
The macro expansion is compatible with JV V10.0.
3
The macro expansion is compatible with JV V11.0 and V11.2.
4
The macro expansion is compatible with JV >=
V12.0.
PARMOD=
Controls macro expansion. Either the 24-bit interface or the 31-bit interface is generated.
PARMOD is evaluated only with VERSION=0.
If PARMOD is not specified, macro expansion is performed according to the specification for the GPARMOD macro or according to the default setting for the assembler (= 24-bit interface).
24
The 24-bit interface is generated. Data lists and instructions use 24-bit addresses. (Address space <=
16 Mb.)
31
The 31-bit interface is generated. Data lists and instructions use 31-bit addresses. (Address space <=
2 Gb.) Data lists start with the standard header.
MF=
PREFIX=
For a description of the MF and PREFIX operands, see .
Their permitted values are indicated at the beginning of the macro description and in the macro call format. The MF=D/C operand used to generate a DSECT or CSECT is only supported in VERSION=2 and higher (see the DSECT note).
Function
If a fully qualified job variable name is specified, the checking information is transferred from the JV catalog entry to the specified area. The OUTPUT operand determines the format of the output here.
The DSECT for the catalog entry can be generated with MF=D. The password field is set to binary zero. If the specified area is too small to accommodate the information, the program receives the return code X'0490' in the rightmost two bytes of register 15.
If the specified job variable name is not fully qualified (partially qualified or containing wildcards), or if the special character for temporary job variables is specified, a list of the job variable names is transferred to the specified area. The format of the information transferred depends on what is specified in the LIST operand:
LIST=OLD | LIST=NEW | |
---|---|---|
name length 1 | 1 byte | 1 byte |
jvname1 | 1-41 characters | 14-54 characters |
... | ||
name lengthn | 1 byte | 1 byte |
jvnamen | 1-41 characters | 14-54 characters |
End | 1 byte(X'00'/X'01') | 1 byte(X'00'X'01') |
“name length” specifies the length of the associated job variable name (plus 1-character length field). The proper end of the list is marked by X'00'. If the area is not long enough to accommodate all the job variable names, the last byte is set to X'01'.
When a partially qualified job variable name is specified, an additional corresponding value (IDJPQFN=X’20’) is returned in the parameter list of the STAJV call.
Additional selection of job variables
The set of job variable names to be transferred can be limited to the job variables with specific characteristics. When a fully qualified job variable name is entered, the transfer of catalog information can be made dependent on specific characteristics.
The desired selection criteria are specified in a JVSEL macro call. In the STAJV call, the symbolic address of the created JVSEL parameter list must then be specified in the operand SELADDR. If SELADDR is not specified, the field IDJFJVS is set to zero
(X’00000000’= no selection according to selection criteria).
Note
If no operands are specified, a list is output containing all the job variables included in the standard catalog of the user ID under which the job executes.
Notes concerning the DSECT
Calling the STAJV macro with the operands MF=D and VERSION=2/3/4 generates a DSECT for the operand list of the STAJV macro (VERSION=2/3/4). If ODSECT=YES is specified, an additional DSECT is generated for output of a catalog entry.
The following applies to VERSION=0 or VERSION=1:
The macro call IDJE [D][,prefix] generates a CSECT/DSECT for the catalog entry. The macro call IDJST [D][,prefix][,PARMOD=24/31][,VERSION=0/1] generates a
CSECT/DSECT for the operand list of the STAJV macro.
Return information and error flags
see "Macro level "
DSECT
STAJV STAJV MF=D,VERSION=4,ODSECT=YES 1 *********************************************************************** 1 * VERSION 400 1 *********************************************************************** 1 * S T A J V P A R A M E T E R L I S T * 1 *********************************************************************** 1 #INTF REFTYPE=REQUEST, C 1 INTNAME=STAJV,INTCOMP=005 1 STAJV DSECT 1 *********************************************************************** 1 * UNIT=41, FUNCTION=2, VERSION=<PARAMETER VERSION> * 1 *********************************************************************** 1 FHDR MF=(C,IDJF) 2 DS 0A 2 IDJFFHE DS 0XL8 0 GENERAL PARAMETER AREA HEADER 2 * 2 IDJFIFID DS 0A 0 INTERFACE IDENTIFIER 2 IDJFFCTU DS AL2 0 FUNCTION UNIT NUMBER 2 * BIT 15 HEADER FLAG BIT, 2 * MUST BE RESET UNTIL FURTHER NOTICE 2 * BIT 14-12 UNUSED, MUST BE RESET 2 * BIT 11-0 REAL FUNCTION UNIT NUMBER 2 IDJFFCT DS AL1 2 FUNCTION NUMBER 2 IDJFFCTV DS AL1 3 FUNCTION INTERFACE VERSION NUMBER 2 * 2 IDJFRET DS 0A 4 GENERAL RETURN CODE 2 * 2 * GENERAL_RETURN_CODE CLEARED (X'00000000') MEANS 2 * REQUEST SUCCESSFUL PROCESSED AND NO ADDITIONAL INFORMATION 2 * 2 IDJFSRET DS 0AL2 4 SUB RETURN CODE 2 IDJFSR2 DS AL1 4 SUB RETURN CODE 2 2 * ALWAYS CLEARED (X'00') IF MAIN_RETURN_CODE IS X'FFFF' 2 * Standard subcode2 values as defined by convention: 2 IDJFR2OK EQU X'00' All correct, no additional info 2 IDJFR2NA EQU X'01' Successful, no action was necessary 2 IDJFR2WA EQU X'02' Warning, particular situation 2 IDJFSR1 DS AL1 5 SUB RETURN CODE 1 2 * 2 * GENERAL INDICATION OF ERROR CLASSES 2 * 2 * CLASS A X'00' FUNCTION WAS SUCCESSFULLY PROCESSED 2 * CLASS B X'01' - X'1F' PARAMETER SYNTAX ERROR 2 * CLASS C X'20' INTERNAL ERROR IN CALLED FUNCTION 2 * CLASS D X'40' - X'7F' NO CLASS SPECIFIC REACTION POSSIBLE 2 * CLASS E X'80' - X'82' WAIT AND RETRY 2 * 2 IDJFRFSP EQU X'00' FUNCTION SUCCESSFULLY PROCESSED 2 IDJFRPER EQU X'01' PARAMETER SYNTAX ERROR 2 * 3 GLOBALLY DEFINED ISL ERROR CODES IN CLASS X'01' - X'1F' 2 IDJFRFNS EQU X'01' CALLED FUNCTION NOT SUPPORTED 2 IDJFRFNA EQU X'02' CALLED FUNCTION NOT AVAILABLE 2 IDJFRVNA EQU X'03' INTERFACE VERSION NOT SUPPORTED 2 * 2 IDJFRAER EQU X'04' ALIGNMENT ERROR 2 IDJFRIER EQU X'20' INTERNAL ERROR 2 IDJFRCAR EQU X'40' CORRECT AND RETRY 2 * 2 GLOBALLY DEFINED ISL ERROR CODES IN CLASS X'40' - X'7F' 2 IDJFRECR EQU X'41' SUBSYSTEM (SS) MUST BE CREATED 2 * EXPLICITELY BY CREATE-SS 2 IDJFRECN EQU X'42' SS MUST BE EXPLICITELY CONNECTED 2 * 2 IDJFRWAR EQU X'80' WAIT FOR A SHORT TIME AND RETRY 2 IDJFRWLR EQU X'81' " LONG " 2 IDJFRWUR EQU X'82' WAIT TIME IS UNCALCULABLY LONG 2 * BUT RETRY IS POSSIBLE 2 * 2 GLOBALLY DEFINED ISL ERROR CODES IN CLASS X'80' - X'82' 2 IDJFRTNA EQU X'81' SS TEMPORARILY NOT AVAILABLE 2 IDJFRDH EQU X'82' SS IN DELETE / HOLD 2 * 2 IDJFMRET DS 0AL2 6 MAIN RETURN CODE 2 IDJFMR2 DS AL1 6 MAIN RETURN CODE 2 2 IDJFMR1 DS AL1 7 MAIN RETURN CODE 1 2 * 2 * SPECIAL LAYOUT OF LINKAGE_MAIN_RETURN_CODE (YYYY IN X'00XXYYYY') 2 * 2 IDJFRLNK EQU X'FFFF' LINKAGE ERROR / REQ. NOT PROCESSED 2 IDJFFHL EQU 8 8 GENERAL OPERAND LIST HEADER LENGTH 2 * 1 *********************************************************************** 1 * END OF STANDARD HEADER. START OF SPECIAL STAJV PARAMETER LIST * 1 *********************************************************************** 1 IDJFHDRI EQU X'00290205',4 1 IDJAR31 DS F AREA ADDRESS(31 BIT FORMAT) 1 IDJSIZE DS F AREA SIZE 1 IDJFLAGS DS X FLAGS 1 IDJPASSW EQU X'00' 7-7 S NOT USED (DEL. V9.5) 1 IDJNAREA EQU X'40' 6-6 S ADDR NOT GIVEN 1 * SET BY JVSTAEX 1 IDJPQFN EQU X'20' 5-5 S PART. QUAL. JVNAME 1 * SET BY JVSTAEX 1 * FOR CMD PROCESSING 1 IDJFECT EQU X'10' 4-4 S SET BY CMD PROCESSING 1 IDJLNEW EQU X'08' 3-3 S OUTPUT JVNAME LONG 1 IDJFCE EQU X'04' 2-2 S NEW CE OUTPUT V10 1 IDJFP2 EQU X'02' 1-1 S P2 CALLER 1 IDJFCE11 EQU X'01' 0-0 S NEW CE OUTPUT V11 1 IDJFLAG1 DS X FLAGS 1 IDJFCE12 EQU X'80' 7-7 S NEW CE OUTPUT V12 1 IDJFTLTI EQU X'40' 6-6 S TIME-BASE = LOCAL 1 IDJFSORT EQU X'20' 5-5 S SORT = NO 1 DS X RESERVED 1 DS CL16 RESERVED 1 IDJFJV DS CL80 JV-NAME 1 DS CL41 RESERVED 1 * * * * * * * * * * * * * * * * * * * * * * * * * * * * 1 * THE FOLLOWING FIELD IS USED ONLY FOR CMD PROCESSING * 1 * * * * * * * * * * * * * * * * * * * * * * * * * * * * 1 IDJSRTAD DS A ADDRESS OF JVNAME 1 IDJFJVS DS A ADDRESS OF SELECTION PL 1 IDJFPLLN EQU *-STAJV LENGTH OF DSECT 1 SPACE 1 *********************************************************************** 1 * S T A J V O U T P U T * 1 *********************************************************************** 1 IDJES DSECT 1 IDJEDMS DS CL1 0 DMS INDICATOR 1 IDJESJV EQU X'04' S SHARE = YES 1 IDJEROA EQU X'08' S READ ONLY ACCESS 1 IDJERPP EQU X'10' S READ PASSWORD SPECIFIED 1 IDJEWPP EQU X'20' S WRITE PASSWORD SPECIFIED 1 IDJEDM2 DS CL1 1 DMS INDICATOR2 1 IDJENSH EQU X'80' S NON-SHARE FLAG 1 IDJECON EQU X'40' S CONVERTED CE 1 IDJENCR EQU X'01' S PASSWORD IS ENCRYPTED 1 IDJERD DS CL4 2 READ PASSWORD 1 IDJEWRT DS CL4 6 WRITE PASSWORD 1 IDJECRD DS 0CL14 10 CREATION DATE 1 IDJECRY DS CL4 YEAR 1 IDJECRM DS CL2 MONTH 1 IDJECRT DS CL2 DAY 1 IDJECRH DS CL2 HOURS 1 IDJECRI DS CL2 MINUTES 1 IDJECRS DS CL2 SECONDS 1 IDJEEXD DS 0CL14 24 EXPIRATION DATE 1 IDJEEXY DS CL4 YEAR 1 IDJEEXM DS CL2 MONTH 1 IDJEEXT DS CL2 DAY 1 IDJEEXH DS CL2 HOURS 1 IDJEEXI DS CL2 MINUTES 1 IDJEEXS DS CL2 SECONDS 1 IDJEACL DS CL1 38 ACCESS CONTROL LIST 1 IDJEMAC EQU X'80' S BASIC ACL PRESENT 1 IDJEGACT EQU X'40' S GUARD PRESENT 1 IDJEURD EQU X'20' S USER: READ-PRIVILEG 1 IDJEUWR EQU X'10' S USER: WRITE-PRIVILEG 1 IDJEGRD EQU X'08' S GROUP: READ-PRIVILEG 1 IDJEGWR EQU X'04' S GROUP: WRITE-PRIVILEG 1 IDJEORD EQU X'02' S OTHERS: READ-PRIVILEG 1 IDJEOWR EQU X'01' S OTHERS: WRITE-PRIVILEG 1 IDJEDIV DS CL1 39 ADDITIONAL CHARASTERISTICS 1 IDJETYP EQU X'80' S NUMERIC-TYPE 1 IDJEMJV EQU X'40' S MONJV 1 IDJETEMP EQU X'20' S TEMPORARY INDICATOR 1 IDJENSTD EQU X'10' S NULL STRING DEFINED 1 IDJEBLID EQU X'08' S BOOLEAN-TYPE 1 IDJECAT DS CL4 40 GUARD: CATID 1 IDJEREAD DS CL18 44 GUARD: READ 1 IDJEWRIT DS CL18 62 GUARD: WRITE 1 IDJEMANC DS CL8 80 MANAGEMENT CLASS 1 IDJEVLL DS CL2 88 JV VALUE LENGTH 1 IDJECLN DS CL1 90 CATID LENGTH 1 IDJEULN DS CL1 91 USERID LENGTH 1 IDJEJLN DS CL1 92 JV NAME LENGTH 1 IDJEPLN DS CL1 93 PATHNAME LENGTH 1 IDJENAM DS CL54 94 JV NAME 1 DS CL12 148 RESERVED 1 IDJELEN EQU *-IDJEDMS LENGTH OF FIXED PORTION 1 *********************************************************************** 1 SPACE