Jobvariable kopieren
Komponente: | JV |
Funktionsbereich: | Jobvariablen |
Anwendungsbereich: | JOB-VARIABLES |
Privilegierung: | STD-PROCESSING |
Funktionsbeschreibung
Das Kommando COPY-JV kopiert den Inhalt einer Jobvariablen (Sende-JV) in eine andere Jobvariable (Empfangs-JV). Wahlweise können neben dem Inhalt auch die Schutzattribute der Sende-JV mit Ausnahme eines bestehenden MONJV- bzw. CJC-Schutzes kopiert werden.
Es können sowohl permanente als auch temporäre Jobvariablen kopiert werden.
Für die Sende-JV muss Lesezugriff und für die Empfangs-JV Schreibzugriff erlaubt sein. Eine nicht existierende Empfangs-JV wird neu angelegt, wobei beim Anlegen einer permanenten JV die im Benutzereintrag maximal erlaubte Anzahl nicht überschritten werden kann (s.a. Kommando CREATE-JV).
Privilegierte Funktionen
Die Systembetreuung (Privileg TSOS) ist standardmäßig Mit-Eigentümer aller Jobvariablen (kann somit also auch Jobvariablen unter jeder Benutzerkennung anlegen bzw. kopieren). Diese Mit-Eigentümerschaft kann für permanente Jobvariablen bei Einsatz von SECOS eingeschränkt werden.
Format
COPY-JV | Kurzname: CPJV | ||||||||||||||||||||||||||||||||
|
Operandenbeschreibung
FROM-JV = <filename 1..54 without-gen-vers>
Name der Jobvariable, die zu kopieren ist (Sende-JV).
Der Lesezugriff muss erlaubt sein (bei einer JV unter fremder Benutzerkennung muss entweder USER-ACCESS=ALL-USERS oder Leserecht über BASIC-ACL oder GUARDS bzw. Miteigentümerschaft bestehen).
FROM-JV = *LINK(...)
Die Sende-JV wird über einen Kettungsnamen bezeichnet.
LINK-NAME = <alphanum-name 1..7>
Kettungsname der JV.
TO-JV = <filename 1..54 without-gen-vers>
Name der Jobvariable, in die kopiert werden soll (Empfangs-JV).
Ist die Empfangs-JV noch nicht katalogisiert, wird sie neu angelegt. In diesem Fall darf nur die eigene Benutzerkennung oder eine Benutzerkennung, für die der Benutzer Miteigentümer ist, angegeben werden.
Ist die Empfangs-JV katalogisiert, muss der Schreibzugriff erlaubt sein (bei einer JV unter fremder Benutzerkennung muss entweder Standardzugriffkontrolle mit USER-ACCESS= *ALL-USERS oder Schreibrecht über BASIC-ACL oder GUARDS bzw.
Miteigentümerschaft bestehen). Die Empfangs-JV wird jedoch nur bei Angabe von REPLACE=*YES (ist Voreinstellung) überschrieben.
TO-JV = *LINK(...)
Die Empfangs-JV wird über einen Kettungsnamen bezeichnet.
LINK-NAME = <alphanum-name 1..7>
Kettungsname der JV.
PROTECTION = *STD / *SAME
Gibt an, ob die Schutzmerkmale der Sende-JV auch für die Empfangs-JV gelten sollen. Ein bestehender MONJV- bzw. CJC-Schutz der Sende-JV wird nicht übernommen.
PROTECTION = *STD
Die Schutzmerkmale werden nicht in die Empfangs-JV übernommen. Bei einer neu zu erstellende Empfangs-JV werden bei den Schutzmerkmalen die System-Standardwerte gesetzt (s.a. Voreinstellungen des Kommandos CREATE-JV). Für eine bereits bestehende Empfangs-JV bleiben die bisherigen Schutzmerkmale erhalten.
PROTECTION = *SAME
Die Empfangs-JV erhält die gleichen Schutzmerkmale wie die Sende-JV (bzgl. ACCESS, USER-ACCESS, OWNER, GROUP, OTHERS, EXPIR-DATE, EXPIR-TIME, MAN-CLASS, vereinbarte GUARDS, sowie die gleichen Kennwörter; siehe auch Ausgabefelder des Kommandos SHOW-JV-ATTRIBUTES). Ein bestehender MONJV- bzw. CJC-Schutz werden jedoch nicht übernommen.
Die Angabe PROTECTION=*SAME wird in folgenden Fällen ignoriert (d.h. es gilt *STD):
Die Empfangs-JV ist eine temporäre JV.
Für die Empfangs-JV besteht CJC-Schutz.
Die Empfangs-JV liegt unter einer fremden Benutzerkennung und der Aufrufer ist nicht Miteigentümer .
Da Management-Klassen pubset-spezifisch sind, können sie nur übernommen werden, wenn Empfangs- und Sende-JV auf demselben Pubset liegen. Beim Kopieren auf einen anderen Pubset behält eine existierende Empfangs-JV ihre Management-Klasse, eine neue Empfangs-JV erhält MANAGEMENT-CLASS=*NONE
(so wie bei PROTECTION=*STD
). Bei einer Sende-JV, die unter einer fremden Benutzerkennung liegt und mit BASIC-ACL oder GUARDS geschützt ist, werden die Schutzmerkmale USER-ACCESS, BASIC-ACL und GUARDS auf System-Standardwerte gesetzt (s. Kommando CREATE-JV).
REPLACE-OLD-JV = *YES / *NO
Gibt an, ob eine bereits existierende Empfangs-JV überschrieben werden soll.
REPLACE-OLD-JV = *YES
Eine bereits existierende Empfangs-JV wird ohne Meldung überschrieben.
REPLACE-OLD-JV = *NO
Eine bereits existierende Empfangs-JV wird nicht überschrieben. Das Kommando wird abgewiesen. In Prozeduren wird die Fehlerbehandlung ausgelöst (Spin-Off-Mechanismus in Nicht-S-Prozeduren oder SDF-P-Fehlerbehandlung in S-Prozeduren).
Kommando-Returncode
(SC2) | SC1 | Maincode | Bedeutung |
---|---|---|---|
0 | CMD0001 | Kommando ausgeführt | |
2 | 0 | CMD0001 | Kommando ausgeführt mit Warnung |
1 | CMD0202 | Syntaxfehler | |
32 | CMD0221 | Systemfehler | |
64 | JVS04E0 | Kommando in der Aufruf-Umgebung nicht ausführbar; | |
130 | JVS04E1 | Kommando kann vorübergehend nicht ausgeführt werden; | |
130 | CMD2282 | Subsystem JV für unbestimmte Zeit nicht verfügbar |