The (standard) file names SYSDTA, SYSSTMT, SYSCMD, SYSIPT, SYSLST, SYSLST01, SYSLST02, ..., SYSLST99, SYSOPT and SYSOUT designate (system) files used by the operating system for data and command input to the operating system and for data output by the operating system. These files are created in each case by the task and initially designate (primary) specified input or output areas.
Users may cancel the primary assignment and assign their own cataloged files or complex S variables (when the SDF-P software product is used) to the (standard) file names.
The following system files are available to a job for input:
SYSCMD | Commands given by users to control the execution of their jobs are expected from SYSCMD. During the processing of the commands, i.e. in command mode (system mode), SYSCMD is active. |
SYSDTA | The system file SYSDTA is used for the input of input data, i.e. data, parameters and statements, which a program reads in without the SDF interface (see the CMDRST or RDATA macro in the “Executive Macros” manual [22]). SYSDTA is active the moment a program begins execution, i.e. in program mode. |
SYSIPT | This system file is only still available for reasons of compatibility and is consequently no longer described. |
SYSSTMT | This system file is used for the input of statements to programs. The statements must be defined in a syntax file (see the “SDF-A” manual [33]). |
The following system files are available to a job for output: | |
SYSOUT | The system directs logging messages and error messages arising during the currently executing job to SYSOUT. Utility routines and compilers also use SYSOUT in this way. |
SYSLST | In general larger data sets, such as memory dumps and listings generated by utility routines and compilers, are written to the system file SYSLST. In addition, SYSLST may contain records from the SYSOUT system file, if desired (specify LOGGING in the SET-LOGON-PARAMETERS or MODIFY-JOB-OPTIONS command). |
SYSLST01, SYSLST02, ..., SYSLST99 | |
Unlike the system file SYSLST, these system files do not have their own EAM area for storing output data. They are used for buffering and are operative only when cataloged files are assigned to them. | |
SYSOPT | This system file is only still available for reasons of compatibility and is consequently no longer described. |
Meaning of the file name parts:
tsn | TSN of the task (4 characters) |
yyyy-mm-dd | File creation date, where mm=month, dd=day of the month, yyyy=4-digit year specification |
hhmmss | File creation time, where hh=hours, mm=minutes and ss=seconds |
nnnn | 4-digit counter |
lib | First 7 characters of the PLAM library |
elem | First 7 characters of the element name |
The system files for output are normally output when a job is ended (EXIT-JOB or LOGOFF command) if no cataloged file or a complex S variable has been assigned to them and output was not suppressed on job termination. Depending on the setting of the system parameter SSMOUT, the files are output to printer or sent by email. If they cannot be sent by email, they are output to printer. Before the job has been completed, the system file can be output to printer using the PRINT-DOCUMENT command or sent by email using the MAIL-FILE command. Using the COPY-SYSTEM-FILE command, the system file SYSLST can also be copied to a file if SYSLST has the primary assignment.
In the PRINT-DOCUMENT and DELETE-SYSTEM-FILE commands, the (standard) file names SYSOUT and SYSLST may also be specified when cataloged files or complex S variables have been assigned to them. SYSLST and SYSOUT are rejected in the MAIL-FILE command if an S variable is assigned to them.
Accessing system files
With the help of system files, user programs can input and output data. The system file SYSCMD represents an exception; it is accessible only to the system via privileged macros. The following table lists the macros and statements required to access system files.
System file | Macros that access system files | Language statements referring to system files: | |||
---|---|---|---|---|---|
Assembler | COBOL | FORTRAN | PL/I | RPG3 | |
SYSCMD | privileged | - | - | - | - |
SYSDTA | RDATA | ACCEPT dataname FROM TERMINAL | READ (1,... | GET | (DEVICE=) |
SYSSTMT | CMDRST 1) | 1) | 1) | - | - |
SYSIPT 2) | - | - | - | - | - |
SYSOUT | WROUT | DISPLAY dataname UPON TERMINAL | WRITE (2,... | DISPLAY dataname (without REPLY) | DSPLY |
SYSLST | WRLST | DISPLAY dataname; UPON SYSLST | WRITE (6,... | PUT | (DEVICE=) no explicit statement |
SYSOPT 2) | - | - | - | - | - |
1) | There exists a High-Level Languages program interface for the programming languages C, COBOL and FORTRAN. The functions of the most important SDF macros (such as RDSTMT, CORSTMT and TRSTMT) are supported in function calls (see the “SDF-A” manual [33]). |
2) | The system files SYSIPT and SYSOPT are only still available for reasons of compatibility. |
Primary assignment and redirection of system files
In general, a specific assignment for the system files is preset. With the help of commands, this primary assignment can be changed; the following table provides an overview of this. Examples may be found in the descriptions of the commands involved.
System file | Primary assignment | Further assignments | Commands for changing the assignment |
---|---|---|---|
SYSCMD | in dialog: terminal in batch: | cataloged disk file (SAM/ISAM), library member or complex S variable | CALL-PROCEDURE: |
SYSDTA | same as SYSCMD primary assignment | cataloged file (SAM/ISAM), library member, complex S variable | ASSIGN-SYSDTA: |
SYSSTMT | same as SYSDTA primary assignment | same as SYSDTA | same as SYSDTA |
SYSIPT | This system file is still provided for reasons of compatibility. | - | - |
SYSOUT | in dialog: terminal in batch: | cataloged file (SAM/ISAM), library member or complex S variable; | ASSIGN-SYSOUT: |
SYSLST | temporary spoolout file (S.LST.) which at the end of the job is printed out and then deleted | cataloged file (SAM), library member or complex S variable; | ASSIGN-SYSLST: |
SYSLST01 | current assignment of SYSLST | same as SYSLST; also possible between each other | same as SYSLST |
SYSOPT | This system file is still provided for reasons of compatibility. | - | - |
Termination of the procedure and the resultant change in assignment can be explicitly effected by means of an EXIT-PROCEDURE, CANCEL-PROCEDURE or END-PROCEDURE command (only non-S procedures). A procedure is implicitly terminated on reaching end of file (EOF condition).