Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

JV exit (033)

&pagelevel(3)&pagelevel

This exit routine is called when a special job variable that is not supported by the system is accessed. The access can be made either via the SHOW-JV and MODIFY-JV commands or using the GETJV and SETJV macros. Values for the special job variable which are destined for the person using the command can be passed in this exit routine. This makes it possible to implement separate special job variables.
The address of parameter area EX033 is passed in register 1. The JVSXJV field of the parameter area contains the name of the special job variable requested by the user.

The following information is transferred to the exit routine:

R1 = A(EX033 parameter area)
R12 = A(TPR program manager)
R13 = A(save area of calling component)
R14 = A(indirect return)
R15 = A(exit routine)

Return code

The return code for the calling system component can be transferred in the parameter area. The code can be entered in the JVSXLEN field (1-256) and the contents of the special job variable can be transferred in the JVSXVAL field. The maincode in the standard header must be set to X'0000' and subcode1 must be set to X'00'.

If no exit routine has been specified, the maincode is not equal to X'0000' and/or the subcode is not equal to X'00', the following message is displayed:

% JVS0472 NAME OF SPECIAL JOB VARIABLE NOT PERMITTED. CORRECT COMMAND

 

DSECT

A DSECT for the parameter area (address in register 1) can be generated with the EX033 macro.

         EX033 MF=D
         MFTST MF=D,PREFIX=J,MACID=VSX,ALIGN=F,                        C
               DMACID=VSX,SUPPORT=(D,C,M,L),DNAME=VSXPL
JVSXPL   DSECT ,
               *,##### PREFIX=J, MACID=VSX #####
JVSXMIN  EQU   1                         MIN. LENGTH
*
JVSXMAX  EQU   256                       MAX. LENGTH
*
*   end parameterarea
JVSXHDR  FHDR  MF=(C,JVSX),EQUATES=NO                    STANDARDHEADER
JVSXHDR  DS    0A
JVSXFHE  DS    0XL8            0   GENERAL PARAMETER AREA HEADER
*
JVSXIFID DS    0A              0   INTERFACE IDENTIFIER
JVSXFCTU DS    AL2             0   FUNCTION UNIT NUMBER
*                                  BIT 15    HEADER FLAG BIT,
*                                  MUST BE RESET UNTIL FURTHER NOTICE
*                                  BIT 14-12 UNUSED, MUST BE RESET
*                                  BIT 11-0  REAL FUNCTION UNIT NUMBER
JVSXFCT  DS    AL1             2   FUNCTION NUMBER
JVSXFCTV DS    AL1             3   FUNCTION INTERFACE VERSION NUMBER
*
JVSXRET  DS    0A              4   GENERAL RETURN CODE
JVSXSRET DS    0AL2            4   SUB RETURN CODE
JVSXSR2  DS    AL1             4   SUB RETURN CODE 2
JVSXSR1  DS    AL1             5   SUB RETURN CODE 1
JVSXMRET DS    0AL2            6   MAIN RETURN CODE
JVSXMR2  DS    AL1             6   MAIN RETURN CODE 2
JVSXMR1  DS    AL1             7   MAIN RETURN CODE 1
JVSXFHL  EQU   8               8   GENERAL OPERAND LIST HEADER LENGTH
*
*   main return codes
JVSXSUCC EQU   0                         NO ERROR DETECTED
JVSXREJE EQU   1                         INVALID SPECIAL JV
*
JVSXJV   DS    CL54                      NAME OF THE SPECIAL JV
JVSXLEN  DS    H                         RETURNED LENGTH OF JV-VALUE
JVSXUNU  DS    XL2                       UNUSED
JVSXVAL  DS    CL256                     RETURNED VALUE OF THE SPECIAL
*                                        JV
JVSXUNU1 DS    XL2                       UNUSED
JVSX#    EQU   *-JVSXHDR