Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

CSWJV Jobvariable prüfen und setzen

&pagelevel(4)&pagelevel

Allgemeines

Anwendungsgebiet:

Jobvariablen

Makrotyp:

S-Typ: (Standardform/C-/D-/E-/L-Form) siehe Abschnitt „Der Operand MF“

Bei der C-Form und D-Form des Makroaufrufs kann ein Präfix PREFIX (pre = 1..3 Buchstaben) angegeben werden (siehe Abschnitt „Der Operand PREFIX“).

Voreinstellung: 

PREFIX = IDJ

Makrobeschreibung

Mit dem Makro CSWJV kann auf Programmebene ein bedingtes Setzen einer Jobvariablen durchgeführt werden (siehe auch Kommando MODIFY-JV-CONDITIONALLY).

Eine angegebene Jobvariable wird mit einem Feldinhalt verglichen. Bei Gleichheit wird die Jobvariable mit dem Inhalt eines anderen Feldes überschrieben, bei Ungleichheit wird der Jobvariablen-Wert in das Vergleichsfeld übertragen.

Die zu prüfende Jobvariable ist während der Bearbeitung durch den Makro gegen Zugriffe anderer Aufträge geschützt.

Makroaufrufformat und Operandenbeschreibung

Operation

Operanden

CSWJV

{ jvid |
  (jvid [,start [,länge]])
}

,bereich1, bereich2

[,PASS=kennwort]

,VERSION=0 / 1

,MF=S / C / (E,..) / D / L

,PREFIX=IDJ / pre


jvid
identifiziert die zu prüfende oder zu setzende Jobvariable. jvid kann sein:

jvname

ein vollqualifizierter Pfadname einer permanenten oder temporären Jobvariablen

*jvlink

ein gültiger Jobvariablen-Kettungsname

start
gibt die Position des ersten zu prüfenden oder zu setzenden Bytes innerhalb des Jobvariablen-Wertes an.
Es gilt: 1 <= start <= 256. Standardwert = 1.

länge
legt die Anzahl der zu prüfenden oder zu setzenden Bytes des Jobvariablen-Wertes fest. Die Summe aus start und länge darf höchstens 257 betragen. Ist länge nicht gegeben, gelten die in den jeweiligen Satzlängenfeldern von bereich1 und bereich2 eingetragenen Längen.

bereich1
symbolische Adresse des Vergleichsfeldes im Benutzerprogramm.

Format 

1111xxxx

vergleichswert             

<-4Byte-->

<- 1111=Gesamtlänge ----------------------->

Der aktuelle Wert der Jobvariablen jvid wird mit vergleichswert verglichen. Bei Ungleichheit wird vergleichswert mit dem Jobvariablen-Wert überschrieben (Returncode 0456 bzw. Meldung JVS0456).

bereich1
symbolische Adresse des Setzwertes der Jobvariablen.

Format 

1111xxxx

setzwert                  

<-4Byte-->

<- 1111=Gesamtlänge ----------------------->

Ist der Jobvariablen-Wert von jvid gleich dem Vergleichswert in bereich1, wird der Jobvariablen-Wert durch setzwert überschrieben.

PASS=kennwort
ermöglicht die Eingabe des zum Schreibzugriff auf die Jobvariable erforderlichen Kennworts (siehe Makro CATJV). Ist die Jobvariable kennwortgeschützt und der Operand PASS nicht gegeben, muss das Kennwort mit dem Kommando ADD-PASSWORD (z.B. über den CMD-Makro) vor dem ersten Aufruf von CSWJV dem System bekannt gemacht werden.

MF=
PREFIX=
Zur Beschreibung der Operanden MF und PREFIX siehe "Der Operand MF ". Die gültigen Werte sind zu Beginn der Makrobeschreibung und aus dem Aufrufformat ersichtlich.

VERSION=
legt fest, welcher Version die Makroauflösung entsprechen soll.

0
ist Voreinstellung: Die Makroauflösung entspricht dem Stand JV <= V8.7. Der Operand MF=D/C zur Erzeugung einer DSECT/CSECT wird dabei nicht unterstützt (siehe Hinweis DSECT).

1
Die Makroauflösung entspricht JV >= V10.0.


Hinweise zur DSECT

  • Der Aufruf des Makros CSWJV mit den Operanden MF=D und VERSION=1 erzeugt eine DSECT für die Operandenliste des CSWJV-Makros (VERSION=1).

  • Eine DSECT für den Makro mit VERSION=0 wird mit Aufruf des Makros IDJCS [D][,prefix] erzeugt.

Rückinformation und Fehleranzeigen

siehe Kapitel "Meldungen" - "Makroebene".

DSECT

  CSWJV    CSWJV MF=D,VERSION=1
1 ***********************************************************************
1 *        VERSION 203
1 ***********************************************************************
1 *       C S W J V   P A R A M E T E R   L I S T                       *
1 ***********************************************************************
1          #INTF REFTYPE=REQUEST,                                        C 
1                INTNAME=CSWJV,INTCOMP=001
1 CSWJV    DSECT
1 ***********************************************************************
1 *       UNIT=41, FUNCTION=5,   VERSION=<PARAMETER VERSION>            *
1 ***********************************************************************
1          FHDR   MF=(C,IDJW) 
2          DS    0A
2 IDJWFHE  DS    0XL8            0   GENERAL PARAMETER AREA HEADER
2 *
2 IDJWIFID DS    0A              0   INTERFACE IDENTIFIER
2 IDJWFCTU 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 IDJWFCT  DS    AL1             2   FUNCTION NUMBER
2 IDJWFCTV DS    AL1             3   FUNCTION INTERFACE VERSION NUMBER
2 *
2 IDJWRET  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 IDJWSRET DS    0AL2            4   SUB RETURN CODE
2 IDJWSR2  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 IDJWR2OK EQU   X'00'               All correct, no additional info
2 IDJWR2NA EQU   X'01'               Successful, no action was necessary
2 IDJWR2WA EQU   X'02'               Warning, particular situation
2 IDJWSR1  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 IDJWRFSP EQU   X'00'               FUNCTION SUCCESSFULLY PROCESSED
2 IDJWRPER EQU   X'01'               PARAMETER SYNTAX ERROR
2 *  3 GLOBALLY DEFINED ISL ERROR CODES IN CLASS X'01' - X'1F'
2 IDJWRFNS EQU   X'01'               CALLED FUNCTION NOT SUPPORTED
2 IDJWRFNA EQU   X'02'               CALLED FUNCTION NOT AVAILABLE
2 IDJWRVNA EQU   X'03'               INTERFACE VERSION NOT SUPPORTED
2 *
2 IDJWRAER EQU   X'04'               ALIGNMENT ERROR
2 IDJWRIER EQU   X'20'               INTERNAL ERROR
2 IDJWRCAR EQU   X'40'               CORRECT AND RETRY
2 *  2 GLOBALLY DEFINED ISL ERROR CODES IN CLASS X'40' - X'7F'
2 IDJWRECR EQU   X'41'               SUBSYSTEM (SS) MUST BE CREATED
2 *                                  EXPLICITELY BY CREATE-SS
2 IDJWRECN EQU   X'42'               SS MUST BE EXPLICITELY CONNECTED
 2 *
2 IDJWRWAR EQU   X'80'               WAIT FOR A SHORT TIME AND RETRY
2 IDJWRWLR EQU   X'81'                    "     LONG       "
2 IDJWRWUR 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 IDJWRTNA EQU   X'81'               SS TEMPORARILY NOT AVAILABLE
2 IDJWRDH  EQU   X'82'               SS IN DELETE / HOLD
2 *
2 IDJWMRET DS    0AL2            6   MAIN RETURN CODE
2 IDJWMR2  DS    AL1             6   MAIN RETURN CODE 2
2 IDJWMR1  DS    AL1             7   MAIN RETURN CODE 1
2 *
2 * SPECIAL LAYOUT OF LINKAGE_MAIN_RETURN_CODE (YYYY IN X'00XXYYYY')
2 *
2 IDJWRLNK EQU   X'FFFF'             LINKAGE ERROR / REQ. NOT PROCESSED
2 IDJWFHL  EQU   8               8   GENERAL OPERAND LIST HEADER LENGTH
2 *
1 ***********************************************************************
1 *  END OF STANDARD HEADER. START OF SPECIAL CSWJV PARAMETER LIST      *
1 ***********************************************************************
1 IDJWHDRI      EQU   X'00290501',4
1 IDJWAREA      DS    A                       AREA 1 ADDRESS
1 IDJWARE2      DS    A                       AREA 2 ADDRESS
1 IDJWJV        DS    CL54                    JVNAME
1 IDJWPOS       DS    H                       SUBSTRING START POSITION
1 IDJWLEN       DS    H                       SUBSTRING LENGTH
1          DS    XL2                     RESERVED
1 IDJWPASS      DS    CL4                     PASSWORD
1          DS    XL12                    RESERVED
1 IDJWFLAG      DS    X                       FLAGS
1 IDJWENCR      EQU   X'80'                   7-7 0=YES, 1=NO
1 *                                          (ENCRYPTION)
1 IDJWFGNV      EQU   X'00'                   6-6 NOT USED (DEL. V12)
1 IDJWJVIX      EQU   X'20'                   5-5 0=NO,  1=YES
1 *                                          (JVID INDEXED (SUBSTRING) )
1 IDJWFEX       EQU   X'10'                   4-4 0=NO,  1=YES
1 *                                          (PASSWORD GIVEN)
1 IDJWP2        EQU   X'08'                   3-3 0=P1 CALLER,1=P2 CALLER
1          DS    XL3                     RESERVED
1 IDJWJVS       DS    A                       RESERVED
1 IDJWPLLN      EQU   *-CSWJV              LENGTH OF DSECT
1 ***********************************************************************
1          SPACE