I have this Rexx program which I want to write the output to a particular dataset. However I can't get to print the exact output produced on the terminal to the dataset.
/* REXX */
"FREE FI(outdd)"
"ALLOC FI(outdd) DA('Z01510.OUTPUT(SAMPLCBL)') SHR REUSE"
row = 0
hline = ' *-----------------------'
mline.0 = ' IDENTIFICATION DIVISION.'
mline.1 = ' *'
mline.2 = ' PROGRAM-ID. '
mline.3 = ' *'
mline.4 = ' *'
mline.5 = ' * Description :'
mline.6 = ' *'
mline.7 = ' * Created on : 'date()
mline.8 = ' * Created by : '
mline.9 = ' * : Userid('')'
mline.10 = ' * : Using' '()'
mline.11 = ' *'
mline.12 = ' * Called by :'
mline.13 = ' *'
mline.14 = ' * Calls :'
mline.15 = ' * Change Activity :'
mline.16 = ' * ©Copyright of -----.'
mline.17 = ' ENVIRONMENT DIVISION.'
mline.18 = ' INPUT-OUTPUT SECTION.'
mline.19 = ' DATA DIVISION.'
mline.20 = ' WORKING-STORAGE SECTION.'
mline.21 = ' LINKAGE SECTION.'
mline.22 = ' PROCEDURE DIVISION.'
mline.23 = ' A-MAIN SECTION.'
mline.24 = ' STOP RUN.'
mline.25 = ' * End of '
say hline
say mline.0
say hline
say mline.2
say hline
do i = 4 to 16
say mline.i
end
say hline
do i=17 to 24
say mline.i
say hline
end
say mline.25
"EXECIO * DISKW outdd (STEM mline."
"EXECIO 0 DISKW outdd (FINIS"
"FREE FI(outdd)"
exit
I run the Rexx script on the z/OS terminal and I get the following sample output which I want copied to the dataset in the exact same way.
*-----------------------
IDENTIFICATION DIVISION.
*-----------------------
PROGRAM-ID.
*-----------------------
*
* Description :
*
* Created on : 14 Oct 2020
* Created by :
* : Userid(')
* : Using ()
*
* Called by :
*
* Calls :
* Change Activity :
* ©Copyright of -----.
*-----------------------
ENVIRONMENT DIVISION.
*-----------------------
INPUT-OUTPUT SECTION.
*-----------------------
DATA DIVISION.
*-----------------------
WORKING-STORAGE SECTION.
*-----------------------
LINKAGE SECTION.
*-----------------------
PROCEDURE DIVISION.
*-----------------------
A-MAIN SECTION.
*-----------------------
STOP RUN.
*-----------------------
* End of
There's a few ways to achieve what you're looking for, but the easiest way would likely be to:
say
withQUEUE
to place the lines on the stackDELSTACK
So, your script would look like this: