En la definición de los registros de salida de un sort con BUILD se puede incluir una barra (carácter “/”) para insertar un registro en blanco. Los campos y/o literales que se incluyan a continuación formarán parte del nuevo registro.
Por defecto se inserta un único registro. Si añadimos un número delante de la barra, se insertarán n registros en blanco.
Este separador solo puede incluirse dentro de un BUILD o OUTREC que forme parte de un OUTFIL.
Ejemplo:
//PASSORT EXEC PGM=SORT
//SYSOUT DD SYSOUT=*
//SORTIN DD DSN=FICH.ENTRADA,DISP=SHR
//
//SALIDA1 DD DSN=FICH.SALIDA1,
// DISP=(,CATLG,DELETE),
// SPACE=(TRK,(10,10),RLSE),
// RECFM=FB
//SALIDA2 DD DSN=FICH.SALIDA2,
// DISP=(,CATLG,DELETE),
// SPACE=(TRK,(10,10),RLSE),
// RECFM=FB
//SYSIN DD *
SORT FIELDS=COPY
OUTFIL FNAMES=SALIDA1,BUILD=(1,10,/,11,10)
OUTFIL FNAMES=SALIDA2,BUILD=(1,10,11,10,2/)
En SALIDA1, por cada registro del fichero de entrada generamos dos registros en el fichero de salida con campos de entrada diferentes.
En SALIDA 2, por cada registro del fichero de entrada generamos un registro con campos del fichero de entrada y dos registros en blanco.
Hola. ¿Me podríais ayudar a hacer lo contrario, un único registro de salida por todos los registros de entrada?
Ejemplo:
Entrada
AAAA
BBBB
CCCC
Salida
AAAABBBBCCCC
Muchas gracias. Un saludo, Esther.