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

FIELDS

Ver el tema anterior Ver el tema siguiente Ir abajo

FIELDS

Mensaje por Coboler@ el Mar Mar 22, 2011 8:28 pm

Mediante esta opción del Sort, se puede copiar un fichero sobre otro con la opción de ordenamiento de los registros a la salida según las posiciones especificadas.

Los distintos tipos de datos que se pueden utilizar son :

• CH : Carácter
• BI : Binario
• PD : Decimal Empaquetado
• ZD : Decimal (Numérico Display)
• AC : ASCII


Los operandos de comparación que se pueden utilizar son :

• EQ : Igual a
• NE : No Igual a
• GT : Mayor que
• GE : Mayor o Igual que
• LT : Menor que
• LE : Menor o Igual que

Los operandos lógicos que se pueden utilizar son :

• AND : Y
• OR : O

//******************************************************************
//* SORT SOBRE EL FICHERO XXXXXXX *
//******************************************************************
//P010 EXEC PGM=SORT,COND=(0,NE)
//SORTIN DD DSN=XXX.XXX.XXXXXXX.XXXXXXXXX,DISP=SHR
//SORTOUT DD DSN=XXX.XXX.XXXXXX,
// DISP=(,CATLG,DELETE),
// UNIT=SYSPRO,SPACE=(CYL,(50,10),RLSE) ),
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=18400)
//SYSOUT DD SYSOUT=*
//SYSIN DD *
SORT FIELDS=COPY
/*
//SYSIN DD *
OPTION COPY
/*


En el ejemplo, se copia el fichero de entrada en el de salida sin efectuar ningún ordenamiento, y se puede poner de las 2 formas indicadas.

//******************************************************************
//* SORT SOBRE EL FICHERO XXXXXXXXXXXX *
//* ORDENANDO POR EMPRESA, CENTRO, CUENTA Y POR FECHA *
//* CUOTA DESCENDENTE *
//******************************************************************
//P010 EXEC PGM=SORT,COND=(0,NE)
//SORTIN DD DSN=XXX.XXX.XXXXXXX.XXXXXXXX,DISP=SHR
//SORTOUT DD DSN=XXX.XXX.XXXXXXX.XXXXXXX.SORT,
// DISP=(,CATLG,DELETE),
// UNIT=SYSPRO,SPACE=(CYL,(50,10),RLSE) ),
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=18400)
//SYSOUT DD SYSOUT=*
//SYSIN DD *
SORT FIELDS=(1,4,CH,A,5,4,CH,A,9,10,BI,A,19,8,CH,D)
/*


En el ejemplo, se copia el fichero de entrada en el de salida, ordenando los registros a la salida por los caracteres 1 a 4 en modo ascendente, después por los caracteres 5 al 8 ascendente, después por las posiciones 9 a la 18 ascendente en modo Binario, y finalmente por los caracteres 19 al 28 en modo descendente.

Puede ser muy útil, especialmente en pruebas, grabar en la salida un determinado número de registros.

//SYSIN DD *
SORT FIELDS=(1,4,CH,A,5,4,CH,A,9,10,CH,A,19,8,CH,D),FILSZ=E200000
/*

En el ejemplo, se copia el fichero de entrada en el de salida ordenando por los criterios especificados, grabando únicamente 200.000 registros (el número que va acontinuación de la E).

//SYSIN DD *
SORT FIELDS=(1,4,CH,A,5,4,CH,A,9,10,CH,A,19,8,CH,D),FILSZ=200000
/*


En el ejemplo, se copia el fichero de entrada en el de salida ordenando por los criterios especificados, procesando únicamente 200.000 registros de entrada.

//SYSIN DD *
SORT FIELDS=(1,4,CH,A,5,4,CH,A,9,10,CH,A),STOPAFT=200000
/*


En el ejemplo, se copia el fichero de entrada en el de salida ordenando por los criterios especificados, aceptando únicamente 200.000 registros en la copia.

//SYSIN DD *
SORT FIELDS=(1,4,CH,A,5,4,CH,A,9,10,CH,A),SKIPREC=5
/*


En el ejemplo, se copia el fichero de entrada en el de salida ordenando por los criterios especificados, saltándose los 5 primeros registros.

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.