Mit dem Makro IMOKIT können Informationen aus einer SYSSII-Datei gelesen werden. Die SYSSII-Datei muss zuerst mit der Funktion SIIOPEN geöffnet werden. Dabei werden Information darin definierte Release-Unit gelesen. Mit der Funktion SIIREAD können Informationen über die Release-Items sequentiell aus einer geöffneten SYSSII-Datei gelesen werden. Das Schließen der SYSSII-Datei erfolgt mit der Funktion SIICLOSE.
Die Weiterverarbeitung eine SYSSII-Datei mit den Funktionen SIIRCOM, SIIRDEP, SIIRKON und SIIRPAR des Makros IMOKIA ("IMOKIA Kommentare, Abhängigkeiten und Parametertexte lesen ") ist nur möglich, wenn die SYSII-
Datei mit der Funktion SIIOPEN geöffnet wurde.
Makro | Operanden | ||||||||||||
IMOKIT |
|
Zur Beschreibung der Parameter MF, PREFIX, MACID und PARAM siehe Abschnitt „Makroformen“ auf "Makrosyntax ".
FUNCT | Gibt die gewünschte Funktion an. |
=*SIIOPEN | Öffnen einer SYSSII-Datei. Der Name muss im Parameter SYSSII angegeben werden. |
=*SIIREAD | Informationen aus einer SYSSII-Datei lesen. |
=*SIICLOSE | Schließen der SYSSII-Datei. Name der SYSSII-Datei. Die Angabe des Names nur beim Öffnen der Datei (FUNCT=*SIIOPEN) erforderlich. |
SYSSII | Name der SYSSII-Datei. Die Angabe des Names nur beim Öffnen der Datei (FUNCT=*SIIOPEN) erforderlich. |
=X’40’ | Keine Angabe. |
=<c-string 1..54> | Explizite Angabe des SYSSII-Dateinamens. |
=<var: char:55> | Symbolische Adresse, die die Angabe zum Namen der SYSSII-Datei enthält. Darf nicht zusammen mit MF=L angegeben werden. |
Parameterliste
IMOKIT IMOKIT MF=D 1 IMOKIT MFTST MF=D,PREFIX=I,MACID=REA,ALIGN=F, C 1 DMACID=REA,SUPPORT=(E,D,C,M,L),DNAME=REA_PL 2 IMOKIT DSECT , 2 *,##### PREFIX=I, MACID=REA ##### 1 IREAPVER EQU 23 value for parameter list 1 * version 1 IREAFOPN EQU 150 value for SIIOPEN 1 * 1 IREAFCLO EQU 151 value for SIICLOSE 1 * 1 IREAFRED EQU 152 value for SIIREAD 1 * 1 * PARAMETER LIST OF IMON-SIC 1 IREASTANDARD_HEADER FHDR MF=(C,IREA),EQUATES=NO 2 IREASTANDARD_HEADER DS 0A 2 IREAFHE DS 0XL8 0 GENERAL PARAMETER AREA HEADER 2 * 2 IREAIFID DS 0A 0 INTERFACE IDENTIFIER 2 IREAFCTU 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 IREAFCT DS AL1 2 FUNCTION NUMBER 2 IREAFCTV DS AL1 3 FUNCTION INTERFACE VERSION NUMBER 2 * 2 IREARET DS 0A 4 GENERAL RETURN CODE 2 IREASRET DS 0AL2 4 SUB RETURN CODE 2 IREASR2 DS AL1 4 SUB RETURN CODE 2 2 IREASR1 DS AL1 5 SUB RETURN CODE 1 2 IREAMRET DS 0AL2 6 MAIN RETURN CODE 2 IREAMR2 DS AL1 6 MAIN RETURN CODE 2 2 IREAMR1 DS AL1 7 MAIN RETURN CODE 1 2 IREAFHL EQU 8 8 GENERAL OPERAND LIST HEADER LENGTH 2 * 1 * STD HEADER 1 * main return codes 1 IREAOK EQU 0 Success 1 IREAESIN EQU 1 Invalid SYSSII 1 IREAEIPL EQU 2 Invalid Parameter List 1 * Version 1 IREAEIFC EQU 7 Invalid Function Called 1 IREAESIF EQU 20 Bad SYSSII format 1 IREAEDMS EQU 21 DMS error 1 IREAEFNO EQU 22 File not open 1 IREAEOF EQU 30 End of file 1 IREAES EQU 256 System error 1 IREAEI EQU 257 Internal error 1 * 1 IREAFD DS A FILE DESCRIPTOR 1 IREADMS DS H DMS ERROR 1 IREADEL DS X STRING DELIMITOR 1 IREASII DS CL55 SYSSII FILE NAME 1 IREASIV DS CL7 SYSSII FILE VERSION 1 IREACN DS CL9 ETPND COMPONENT NAME 1 IREACV DS CL4 ETPND COMPONENT VERSION 1 IREACD DS CL14 ETPND COMPONENT DOMAIN 1 IREACPM DS 20CL9 ETPND COMPONENT PM NUMBER 1 IREACPM# EQU 20 1 IREAUN DS CL31 UNIT NAME 1 IREAUV DS CL8 UNIT VERSION 1 IREAUFL DS X UNIT FUNCTIONAL LEVEL 1 IREAUU DS CL9 UNIT USER ID 1 IREAUMU DS X UNIT MANDATORY USER ID 1 IREAR1 DS XL2 filler 1 1 IREAODEP DS F UNIT OLD DEPENDENCE NUMBER 1 IREADEP DS F UNIT DEPENDENCE NUMBER 1 IREAUC DS F UNIT COMMENT NUMBER 1 IREAIN DS CL31 ITEM NAME 1 IREAIDUM DS X DUMMY ITEM FLAG 1 IREAIT DS X ITEM TARGET 1 IREAR1A DS XL3 filler 1a 1 IREAILG DS X ITEM LANGUAGE 1 IREAR2 DS XL3 filler 2 1 IREAIC DS F ITEM COMMENT NUMBER 1 IREAIFL DS X ITEM FUNCTIONAL LEVEL 1 IREAIL DS CL31 ITEM LOGICAL ID 1 IREAILM DS X MANDATORY PATHNAME 1 IREAILU DS X UPDATE PATHNAME 1 IREAILF DS X FILENAME TYPE 1 IREAITP DS CL4 ITEM TYPE 1 IREAIF DS CL39 ITEM FILENAME 1 IREAIFM DS X MANDATORY FILENAME 1 IREAIUI DS CL9 ITEM USER ID 1 IREAIMU DS X ITEM MANDATORY USER ID 1 IREASH DS X USER-ACCESS ATTRIBUTE 1 IREAAC DS X ACCESS ATTRIBUTE 1 IREAMI DS X MIGRATE ATTRIBUTE 1 IREAFO DS X FORMAT ATTRIBUTE 1 IREAIPL DS X IPL FILE 1 IREAR3 DS XL2 filler 3 1 IREAPAR DS F INSTALLATION PARAMETER NUMBER 1 IREA# EQU *-IREASTANDARD_HEADER
Hinweise zur Programmierung
Die Funktionen SIIOPEN, SIIREAD und SIICLOSE bauen aufeinander auf. Sie benutzen dieselbe Parameterliste, auch bei wiederholten Aufrufen von SIIREAD.
Beim ersten Aufruf von SIIREAD wird die Information des ersten Release-Item der geöffneten SYSSII-Datei in die Parameterliste ausgegeben. Die Informationen über die restlichen Release-Items erhalten Sie durch wiederholte Aufrufe von SIIREAD, bis der Returncode „EOF in SYSSII-Datei erreicht“ zurückgegeben wird.
Die Funktion SIIREAD wertet das Metazeichen „+“ in der SYSSII-Datei aus und liefert den vollständigen Release-Item-Namen zurück.
Bei Verwendung mehrerer Parameterlisten können mehrere SYSSII-Dateien parallel bearbeitet werden.
Für den Aufruf der Funktion SIIOPEN kann der Name der SYSSII-Datei (siehe Parameter SYSSII) auch in der Parameterleiste im Feld IREASII übergeben werden.
Neben dem Returncode werden bei den Funktionen SIIOPEN und SIIREAD weitere Daten zur Auswertung in der Parameterleiste übergeben:
Bei FUNCT=*SIIOPEN werden die Attribute der Release-Unit zurückgeliefert:
Assembler
C-Schnittstelle
Bedeutung
IREAFD
sii_fd
interner Dateideskriptor (darf nicht verändert werden)
IREADMS
dms_error
bezeichnet ggf. den beim Öffnen der SYSSII-Datei aufgetretenen DMS-Fehler
IREASII
sii_name
Name der SYSSII-Datei
IREASIV
sii_file_version
Version des SYSSII-Datei
IREAUN
ru_name
Name der Release-Unit
IREAUV
ru_version
Version der Release-Unit z.B. wird V01.2A00 abgebildet als C’012A00’ gefolgt von dem vereinbarten Endekennzeichen X’00’ bzw. X’40’
IREAUFL
ru_functlev
Funktionszustand, in dem die Release-Unit abläuft
(U=TU, P=TPR, B=Both)
IREAUU
ru_userid
Default-Benutzerkennung
IREAUMU
ru_mandatory_uid
Zeigt an, ob die Benutzerkennung obligatorisch ist
(Y=Yes, N=No)
IREADEP
ru_dependence
Anzahl der neuen Abhängigkeiten zu anderen Release-Units. Für Werte > 0 können die Abhängigkeiten mit dem Makro IMOKIA (FUNCT=*SIIRKON) gelesen werden.
IREAODEP
ru_old_dependence
Anzahl der alten Abhängigkeiten zu anderen Release-Units. Für Werte > 0 können die Abhängigkeiten mit dem Makro IMOKIA (FUNCT=*SIIRDEP) gelesen werden.
IREAUC
ru_comment
Anzahl der Kommentarzeilen . Für Werte > 0 können die Kommentarzeilen mit dem Makro IMOKIA (FUNCT=*SIIRCOM) gelesen werden.
Bei FUNCT=*SIIREAD werden die Attribute des Release-Items zurückgeliefert:
Assembler
C-Schnittstelle
Bedeutung
IREAFD
sii_fd
interner Dateideskriptor (darf nicht verändert werden)
IREAIN
ri_name
Name des Release-Items
IREAIDUM
ri_dummy
Zeigt an, ob ein Dummy-Release-Items vorliegt
(Y=Yes, N=No)
IREAIT
ri_target
Hardware-Ausprägung (A, R, U oder S)
IREAILG
ri_language
Sprachkennzeichen für den Kommentar
IREAIC
ri_comment
Anzahl der Kommentarzeilen. Für Werte > 0 können die Kommentarzeilen mit dem Makro IMOKIA (FUNCT=*SIIRCOM) gelesen werden.
IREAIFL
ri_functlev
Funktionszustand, in dem das Release-Item abläuft
(U=TU, P=TPR, B=Both)
IREAIL
ri_logid
logischer Name des Release-Items
IREAILM
ri_logmand
Zeigt an, ob der Pfadname obligatorisch ist (Y=Yes, N=No)
IREAILU
ri_logupd
Zeigt an, ob der Pfadname geändert werden kann
(Y=Yes, N=No)
IREAILF
ri_logfiltyp
Dateiname voll- oder teilqualifiziert (F=Full, P=Partial)
IREAITP
ri_type
Installationstyp
IREAIF
ri-file
Default-Pfadname
IREAIFM
ri_mandatory_file
Zeigt an, ob der Pfadname obligatorisch ist (Y=Yes, N=No)
IREAIUI
ri_userid
Default-Benutzerkennung
IREAIMU
ri_mandatory_uid
Zeigt an, ob die Benutzerkennung obligatorisch ist
(Y=Yes, N=No)
IREASH
ri_user_access
Dateiattribut USER-ACCESS (O=Owner-Only, A=All-Users, S=Special)
IREAAC
ri_access
Dateiattribut ACCESS (R=Read, W=Write)
IREAMI
ri_migrate
Dateiattribut MIGRATE und BACKUP-CLASS
I: Migrate=Inhibited und Backup-Class=Any
E: Migrate=Inhibited und Backup-Class=E
S: Standardeinstellungen des Systems
IREAFO
ri_format
Blockformat der Datei (K=Key, 2=NK2, 4=NK4)
IREAIPL
ri_ipl
Zeigt an, ob eine IPL-Datei vorliegt (Y=Yes, N=No)
IREAPAR
ri_par
Anzahl der Zeilen für Installationsparameter. Für Werte > 0 können die Parametertextzeilen mit dem Makro IMOKIA (FUNCT= *SIIRPAR) gelesen werden.
Makro-Returncode
(SC2) | SC1 | Maincode | Bedeutung | SII OPEN | SII READ | SII CLOSE |
X’00’ | X’00’ | X’0000’ | Funktion erfolgreich ausgeführt | x | x | x |
X’00’ | X’01’ | X’0001’ | SYSSII-Dateiname ungültig | x | ||
X’00’ | X’01’ | X’0007’ | Funktion (Parameter FUNCT) ungültig | x | x | x |
X’00’ | X’03’ | X’0003’ | Parameterliste ungültig | x | x | x |
X’00’ | X’40’ | X’0014’ | SYSSII-Dateiformat ungültig | x | ||
X’00’ | X’40’ | X’0015’ | DMS-Fehler (siehe IREADMS-Feld in der Parameterliste) | x | ||
X’00’ | X’40’ | X’0016’ | keine SYSSII-Datei geöffnet | x | x | |
X’00’ | X’40’ | X’001E’ | EOF in SYSSII-Datei erreicht | x | ||
X’00’ | X’20’ | X’0100’ | Systemfehler | x | x | x |
X’00’ | X’20’ | X’0101’ | Interner Fehler | x | x | x |
Die auftretenden Returncodes sind abhängig von der gewählten Funktion des Makros IMOKIT.