Information can be read from a SYSSII file with the IMOKIT macro. The SYSSII file must first be opened with the SIIOPEN function. Information on release units defined in the file are read upon opening. With the SIIREAD function information on the release items can be read sequentially from an open SYSSII file. The SYSSII file is closed with the function SIICLOSE.
A SYSSII file can only be edited with the SIIRCOM, SIIRDEP, SIIRKONand SIIRPAR functions of the IMOKIA macro ("IMOKIA Read comments, dependencies and parameter text ") when the SYSII file was opened with the SIIOPEN function.
Macro | Operands | ||||||||||||||
IMOKIT |
|
The MF, PREFIX, MACID, and PARAM parameters are described in “Macro forms” on "Macro syntax ".
FUNCT | The desired function. |
= *SIIOPEN | Open a SYSSII file. |
= *SIIREAD | Read information from a SYSSII file. |
= *SIICLOSE | Close the SYSSII file. |
SYSSII | Name of the SYSSII file. The name only needs to be specified when opening the file (FUNCT=*SIIOPEN). |
=X’40’ | No specification. |
=<c-string 1..54> | Explicit specification of the SYSSII filename. |
=<var: char:55> | Symbolic address containing the name of the SYSSII file. May not be specified together with MF=L. |
Parameter list
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
Programming notes
The functions SIIOPEN, SIIREAD and SIICLOSE are related to each other. They use the same parameter list even when SIIREAD is called a multiple number of times.
The information on the first release item of the opened SYSSII file is output in the parameter list during the first SIIREAD call . The information on the rest of the release items is obtained by calling SIIREAD again and again until the return code “EOF reached in SYSSII file” is returned.
The SIIREAD function evaluates the metacharacter “+” in the SYSSII file and returns the complete release item name.
When several parameter lists are used, several SYSSII files can be processed in parallel.
The name of the SYSSII file (see SYSSII parameter) can also be passed in the parameter list in the IREASII field to call the SIIOPEN function.
Additional data for evaluating the parameter list is passed in addition to the return code for the SIIOPEN and SIIREAD functions:
The attributes of the release unit are returned for FUNCT=*SIIOPEN:
Assembler
C interface
Meaning
IREAFD
sii_fd
Internal file descriptor (may not be changed)
IREADMS
dms_error
Denotes the DMS error (if there was one) that occurred when the SYSSII file was opened
IREASII
sii_name
Name of the SYSSII file
IREASIV
sii_file_version
Version of the SYSSII file
IREAUN
ru_name
Name of the release unit
IREAUV
ru_version
Version of the release unit
e.g. V01.2A00 is represented as C’012A00’ followed by the end character setting X’00’ or X’40’
IREAUFL
ru_functlev
Function state in which the release unit runs
(U=TU, P=TPR, B=Both)
IREAUU
ru_userid
Default user ID
IREAUMU
ru_mandatory_uid
Indicates if the user ID is mandatory
(Y=Yes, N=No)
IREADEP
ru_dependence
Number of new dependencies to other release units.
For values > 0 the dependencies can be read with the IMOKIA macro (FUNCT=*SIIRKON).
IREAODEP
ru_old_dependence
Number of old dependencies to other release units.
For values > 0 the dependencies can be read with the IMOKIA macro (FUNCT=*SIIRDEP).
IREAUC
ru_comment
Number of comment lines . For values > 0 the comment
lines can be read with the IMOKIA macro (FUNCT= *SIIRCOM).
The attributes of the release items are returned for FUNCT=*SIIREAD:
Assembler
C interface
Meaning
IREAFD
sii_fd
Internal file descriptor (may not be changed)
IREAIN
ri_name
Name of the release items
IREAIDUM
ri_dummy
Indicates if there is a dummy release item present
(Y=Yes, N=No)
IREAIT
ri_target
Hardware variant (A, R, U or S)
IREAILG
ri_language
Language code for the comment
IREAIC
ri_comment
Number of comment lines. For values > 0 the comment lines can be read with the IMOKIA macro (FUNCT=*SIIRCOM).
IREAIFL
ri_functlev
Function state in which the release item runs (U=TU, P=TPR, B=Both)
IREAIL
ri_logid
Logical name of the release item
IREAILM
ri_logmand
Indicates if the path name is mandatory (Y=Yes, N=No)
IREAILU
ri_logupd
Indicates if the path name can be changed
(Y=Yes, N=No)
IREAILF
ri_logfiltyp
Fully or partially qualified file name (F=Full, P=Partial)
IREAITP
ri_type
Installation type
IREAIF
ri-file
Default path name
IREAIFM
ri_mandatory_file
Indicates if the path name is mandatory (Y=Yes, N=No)
IREAIUI
ri_userid
Default user ID
IREAIMU
ri_mandatory_uid
Indicates if the user ID is mandatory
(Y=Yes, N=No)
IREASH
ri_user_access
File attribute USER-ACCESS (O=Owner-Only, A=All-Users, S=Special)
IREAAC
ri_access
File attribute ACCESS (R=Read, W=Write)
IREAMI
ri_migrate
File attributes MIGRATE and BACKUP-CLASS
I: Migrate=Inhibited and Backup-Class=Any
E: Migrate=Inhibited and Backup-Class=E
S: default setting of the system
IREAFO
ri_format
Block format of the file (K=Key, 2=NK2, 4=NK4)
IREAIPL
ri_ipl
Indicates if a IPL file is present (Y=Yes, N=No)
IREAPAR
ri_par
Number of lines for installation parameters. For values > 0 the parameter text lines can be read with the IMOKIA macro (FUNCT= *SIIRPAR).
Macro return codes
(SC2) | SC1 | Maincode | Meaning | SII OPEN | SII READ | SII CLOSE |
X’00’ | X’00’ | X’0000’ | Function successfully executed | x | x | x |
X’00’ | X’01’ | X’0001’ | SYSSII file name invalid | x | ||
X’00’ | X’01’ | X’0007’ | Function (Parameter FUNCT) invalid | x | x | x |
X’00’ | X’03’ | X’0003’ | Invalid parameter list | x | x | x |
X’00’ | X’40’ | X’0014’ | SYSSII file format invalid | x | ||
X’00’ | X’40’ | X’0015’ | DMS error (see IREADMS field in the parameter list) | x | ||
X’00’ | X’40’ | X’0016’ | No SYSSII file open | x | x | |
X’00’ | X’40’ | X’001E’ | EOF reached in SYSSII file | x | ||
X’00’ | X’20’ | X’0100’ | System error | x | x | x |
X’00’ | X’20’ | X’0101’ | Internal error | x | x | x |
The return codes which can occur depend on the function of the IMOKIT macro you select.