EXECIO DISKW - Schreiben der Datei

REXX Instruktionen
Dateiverarbeitung

Syntax:                                 
EXECIO #zeilen / *  DISKW ddname
(<STEM  variable>
<OPEN> <FINIS>  <)>

/* REXX DISKW Copyright YCOS Yves Colliard Software 1990-2009 */
/* TRACE ?R  */
  /* einschalten des interaktiven Trace Modus */
  /* */
meindat = "AAA.BBB.CCC"
             /* Eigenen Data Set Name eingeben           */
             /* Muss ein PDS sein, Member Y1, Y2 und Y3  */
             /*     werden erzeugt                       */
"ALLOCATE FI(MYFILE) DA('"meindat"(Y1)') SHR"
IF rc <> 0 THEN DO
   SAY 'Falscher Data Set Name!' meindat
   EXIT
END
  /* */
DO i=1 to 23           /* 23 Saetze werden im Program-Stack */
  QUEUE "Y1 Satz" i    /* gestapelt (FIFO)                 */
END
QUEUE ""               /* Datenende                        */
ADDRESS MVS 'EXECIO * DISKW MYFILE (FINIS'
             /* Schreiben aller Saetze im Data Set MYFILE  */
             /* aus dem Program-Stack                      */
             /* das Data Set wird geschlossen              */
'FREE FI(MYFILE)'
  /* */
/* REXX */
"ALLOCATE FI(MYFILE) DA('"meindat"(Y2)') SHR"
  /* */
DO i=1 to 23           /* 23 Saetze werden ueber STEM      */
  out.1 = "Y2 Satz" i  /* Variablen geschrieben            */
  ADDRESS MVS 'EXECIO 1 DISKW MYFILE (STEM out.'
             /* Schreiben eines Satzes im Data Set MYFILE  */
             /* aus der STEM Varaible                      */
END
ADDRESS MVS 'EXECIO 0 DISKW MYFILE (FINIS'
             /* das Data Set wird geschlossen            */
'FREE FI(MYFILE)'
  /* */
/* REXX */
"ALLOCATE FI(MYFILE) DA('"meindat"(Y3)') SHR"
  /* */
DO i=1 to 23
  satz.i = "Y3 Satz" i   /* 23 Saetzen werden angelegt     */
END
ADDRESS MVS 'EXECIO 23 DISKW MYFILE (STEM satz. FINIS'
             /* Schreiben von 23 Saetze im Data Set MYFILE */
             /* aus den "satz" Variablen                   */
             /* das Data Set wird geschlossen              */
'FREE FI(MYFILE)'
  /* */