Foro de Cobol
Registrate en el Foro de Cobol y Aporta tus experiencias y conocimientos sobre este lenguaje de programacion, con tu ayuda el foro crecera y todos nos podremos beneficiar de los conocimientos de los demas.

Gracias por entrar a COBOLEROS.ES
Síguenos en Twitter

3.8.- SYSOUT

Ver el tema anterior Ver el tema siguiente Ir abajo

3.8.- SYSOUT

Mensaje por Coboler@ el Miér Mayo 25, 2011 10:50 pm

Para utilizar un fichero de salida como fichero sysout, poner:


//ddname DD SYSOUT=clase
//ddname DD SYSOUT=(clase,writer-name,form-name)
//ddname DD SYSOUT=(clase,writer-name,code-name)
//ddname DD SYSOUT=*
//ddname DD SYSOUT=(,)

Se puede establecer la prioridad con la cláusula PRTY:

//OUTA OUTPUT PRTY=255
//MYDS DD SYSOUT=F,OUTPUT=*.OUTA

(este ejemplo pide la mayor prioridad posible, hay veces que técnica de sistemas invalida este parámetro para que no funcione).


EJEMPLO:

//EXAMP JOB MSGCLASS=A
//OUT1 OUTPUT DEFAULT=YES,DEST=COMPLEX7,FORMS=BILLING,
// CHARS=(AOA,AOB),COPIES=2
//OUT2 OUTPUT DEFAULT=YES,DEST=COMPLEX1
//PASO01 EXEC PGM=ORDERS
//R1 DD SYSOUT=A
//R2 DD SYSOUT=A
//PASO02 EXEC PGM=BILLING
//OUT3 OUTPUT DEFAULT=YES,DEST=COMPLEX3
//B1 DD SYSOUT=A
//B2 DD SYSOYT=A,OUTPUT=(*.OUT3,*.OUT2)
//PASO03 EXEC PGM=REPORTS
//OUT4 OUTPUT FORMS=SHORT,DEST=COMPLEX1
//RP1 DD SYSOUT=A
//RP2 DD SYSOUT=A,OUTPUT=(*.PASO02.OUT3,*.OUT1)


En PASO01 las sentencias R1 y R2 utilizarán las opciones especificadas en OUT1 y OUT2 por:

- DEFAULT=YES está especificado en OUT1 y OUT2 y no hay ninguna sentencia OUTPUT en el paso PASO01
- R1 y R2 no tienen especificada la cláusula OUTPUT.

En PASO02 ejecutará la sentencia B1 utilizando las opciones especificadas en OUT3 por:

- DEFAULT=YES está especificada en OUT3 y pertenece al paso PASO02.
- B1 no tiene especificada la cláusula OUTPUT.
- Al tener OUT3 definido DEFAULT=YES en este paso, el sistema ignora los DEFAULT=YES de OUT1 y OUT2.

En PASO02 ejecutará la sentencia B2 utilizando las opciones especificadas en OUT3 y OUT2 por:

- Ambos están especificados en su cláusula OUTPUT.
- Ignora el DEFAULT=YES de B1 por tener los otros especificados.

En PASO03 ejecutará la sentencia RP1 utilizando las sentencias especificadas en OUT1 y OUT2 por:

- DEFAULT=YES está especificado en la cláusula OUTPUT.
- No existe ninguna cláusula OUTPUT definida en PASO03.
- R1 no tiene cláusula OUTPUT.

En PASO03 ejecutará la sentencia RP2 utilizando las sentencias OUT3 y OUT1.


Notar que la sentencia OUT4 no se utiliza.

Como ya hemos dicho antes si se quiere evitar que se ejecute se utiliza la sentencia DUMMY:

//EXA DD DUMMY,SYSOUT=A
//EXB DD DUMMY,SYSOUT=(B,WRT),DCB=(RECFM=FB,LRECL=80,BLKSIZE=800)


Para limitar el número de registros que puede contener se utiliza la cláusula OUTLIM=número (siendo número entre 1 y 16777215).

//ddname DD SYSOUT=clase,OUTLIM=número

Para sacar varias copias se utiliza el parámetro COPIES=número (entre 1 y 255).

//ddname DD SYSOUT=clase,COPIES=número

avatar
Coboler@
Admin

Mensajes : 215
Reputación : 19
Fecha de inscripción : 02/02/2011
Edad : 37
Localización : Madrid

Ver perfil de usuario http://www.coboleros.es

Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


 
Permisos de este foro:
No puedes responder a temas en este foro.