ENTER Dateien/Bibl.Elemente mit DO-Prozedur bearbeiten
ONXENTER ['str1'=...] {datei|bibl(element)|%name|%?} [,do-params|,?] [/[enter-param] [,JRF=jr-file] [, JN=jobname] [, EM] ]
Die angekreuzten Datenobjekte werden mit einer DO-Prozedur bearbeitet. Dies geschieht in der Weise, daß der Name des angekreuzten Datenobjekts als erster Stellungsparameter an die DO-Prozedur übergeben wird. Es wird eine Hauptprozedur mit CALL-Aufrufen auf die Verarbeitungsprozedur erstellt. Die DO-Prozedur wird anschließend durch das Job-Report System im Enter gestartet. Die Beendigung des Enter-Jobs wird überwacht und dem Benutzer in Form der Job-Report Maske mitgeteilt. Für nähere Informationen zum Job-Report System siehe Seite 11-.
'str1'= ... Namenstransformationsregeln. Näheres siehe Seite 5-.
'str1'='str2' | 'str1'=DP[n][I] | 'str1'=DS[n][I]
Der an die Verarbeitungsprozedur übergebene Name wird in der Weise gebildet, daß 'str1' im Originalnamen durch 'str2' ersetzt wird bzw. die davor oder dahinterliegenden Zeichen gelöscht werden. Enthält der Originalname die Zeichenfolge 'str1' nicht, so wird dieser Name unverändert an die Prozedur übergeben.
Ohne Angabe von 'str1'=... und falls do-params für die Verarbeitungsprozedur keine der Platzhalter-Zeichenfolgen !NAME, !ELEMENT, !LIBRARY, !TYP, !VERS enthält, wird der Verarbeitungsprozedur der Name des zu bearbeitenden Datenobjekts in folgender Form übergeben:
- Dateien/Jobvariablen/FMS-Bibliothekselemente:
vollständiger, bis zu 44 Byte langer Name des Datenobjekts
- PLAM-Bibliothekselemente:
Name ohne Typ- und Versionsbezeichnung
- Elemente einer LMS-ISAM Bibliothek:
die ersten acht Stellen des Namens
Falls 'str1'=... nicht angegeben ist und do-params eine der Platzhalter-Zeichenfolgen !NAME, !ELEMENT, !LIBRARY, !TYP oder !VERS enthält, so wird der Verarbeitungsprozedur von CFS nicht als erster Stellungsparameter ein Name übergeben. Es werden vielmehr in den do-params die Platzhalter-Zeichenfolgen mit folgenden Inhalten substituiert:
!NAME Name der Datei/Jobvariablen
!ELEMENT Bezeichnung des Bibliothekselements ohne Typ und Version
!LIBRARY Name der Bibliothek, in der das Element enthalten ist
!TYP Typ des Bibliothekselements
!VERS Version des Bibliothekselements
Beispiele:
...'CFS.S.'=''... Das Prefix 'CFS.S.' wird aus dem Namen entfernt
...''='CFS.S.'... Dem Namen wird das Prefix 'CFS.S.' vorangestellt
...'.SRC '=''... Das Suffix '.SRC' wird aus dem Namen entfernt
...' '='.SRC'... Dem Namen wird das Suffix '.SRC' angehängt
datei Name der Verarbeitungsprozedur.
bibl(element)   Die DO-Prozedur ist in dem angegebenen Bibliothekselement gespeichert. Bei PLAM-Bibliotheken muß das Element unter dem Elementtyp J gespeichert sein.
%name Name des Parameter-Sets in der JRSAVE-Datei. Die mit dem Kommando SP %name gesicherte Parameter-Maske wird dem Benutzer erneut angeboten. Mit %name wird ein Bezug sowohl auf eine bestimmte DO-Prozedur, als auch auf eine vordefinierte Belegung der DO-Parameter hergestellt hergestellt.
%? Es werden alle in Frage kommenden Parametersets in einer Maske angezeigt. Durch Ankreuzen kann einer der vorgeschlagenen Parametersets ausgewählt werden.
do-params, enter-params, jr-file, jobname
zusätzliche Parameter zum Starten der DO-Prozedur im Enter. DO-Parameter können nicht zusammen mit %name angegeben werden. Für eine ausführliche Beschreibung der einzelnen Parameter wird auf Seite 11- und folgende (Job-Report System) verwiesen.
EM Enter Multiple. Für jeden DO-Aufruf wird ein eigener Enter-Auftrag erzeugt und als solcher getrennt von allen anderen durch den Job-Report überwacht.
Standard: Es wird nur ein Enter-Auftrag gestartet. Innerhalb des Enters wird für jede angekreuzte Datei ein /CALL do-prozedur,dateiname ausgeführt.
Hinweise:
Die bei ONXENTER angegebene DO-Prozedur muß mindestens einen Stellungsparameter besitzen. In diesem ersten Stellungsparameter wird ein 44-stelliger Datei / Elementname übergeben. Die DO-Prozedur sollte funktionell so aufgebaut sein, daß in ihr eine Datei / ein Bibliothekselement, dessen Name im ersten Stellungsparameter zu übergeben ist, in einer bestimmten Weise bearbeitet wird.
Werden Elemente einer Bibliothek mit ONXENTER bearbeitet, so sollte die DO-Prozedur neben dem Namen des Elements mindestens noch einen Parameter für den Bibliotheksnamen enthalten. Dieser ist bei der Definition der Variablen Action in der Parameter-Maske für die DO-Prozedur anzugeben.
Beim Starten einer DO-Prozedur im Enter und JRF=SYSLST wird in der Enter-Datei neben dem Kommando /SYSFILE SYSLST auch /OPTION MSG=FH eingefügt. Damit wird erreicht, daß auch die SYSOUT-Ausgaben in der SYSLST-Datei enthalten sind.
Im Zusammenhang mit der Variablen Action ONXENTER sei auch auf die Variable Action ONXDO auf Seite 5- hingewiesen.
Beispiele:
ONXENTER CFS.S.LMSLIB(ASSEMB),LIB=CFS.SRCLIB/
JOB-CLASS=JCBLONG,TIME=500
Die Prozedur ASSEMB in der Bibliothek CFS.S.LMSLIB hat folgende PROC-Anweisung:
/PROC N,(&PROGNAM, ":Name des Quellprogramms" -
/ &LIB=, ":Name der Source-Bibliothek" -
/ &IDA=NO, -
/ &XREF=NOXREF ":XREF/NOXREF/ATXREF/NOATXREF" -
/ ),SUBDTA=&



Angenommen, der Benutzer hat durch NPLMS CFS.SRCLIB alle Quellprogramme in der LMS-Bibliothek CFS.SRCLIB selektiert. Durch die oben angegebene Variable Action werden alle mit X markierten Quellprogramme mit der Prozedur ASSEMB übersetzt. Es wird hierzu die folgende Enter-Datei erzeugt:


/LOGON
/SYSFILE SYSOUT=CFS.SYSOUT.tsn.time
/STEP
/DO CFS.S.LMSLIB(ASSEMB),(name-1,LIB=CFS.SRCLIB,IDA=NO,XREF=NOXREF,)
/STEP
/DO CFS.S.LMSLIB(ASSEMB),(name-2,LIB=CFS.SRCLIB,IDA=NO,XREF=NOXREF,)
/STEP
.....

/LOGOFF NOSPOOL



Die Enter-Datei wird über das Job-Report System von CFS gestartet. Als Enter-Parameter werden verwendet JOB-CLASS=JCBLONG und TIME=500. Nach Beendigung des Enter-Auftrags wird dem Benutzer das Ablaufprotokoll des Jobs in Form des SYSOUT-Listings CFS.SYSOUT.tsn.time präsentiert.
ONXENTER CFS.S.LMSLIB(ASSEMB),LIB=CFS.SRCLIB/EM
Aufgrund der EM-Option (Enter Multiple) wird für jedes angekreuzte Source Element eine eigene Enter-Datei erzeugt, z.B.
/LOGON
/SYSFILE SYSOUT=CFS.SYSOUT.tsn.time
/STEP
/DO CFS.S.LMSLIB(ASSEMB),(name-1,LIB=CFS.SRCLIB,XREF=NOXREF,)
/STEP
/LOGOFF NOSPOOL
Jede der so erzeugten Enter-Dateien wird separat über das Job-Report System gestartet. Über die Beendigung jedes einzelnen Enter-Auftrags wird der Benutzer durch Ausgabe des SYSOUT-Protokolls informiert.