1
Comprender la estructura básica de COBOL. Cada programa COBOL tiene cuatro secciones principales llamadas divisiones . Estos son IDENTIFICACIÓN , MEDIO AMBIENTE , LOS DATOS Y PROCEDIMIENTO . Datos de fecha va en la división de datos, un área que describe las estructuras de memoria .
2
Determinar cómo las fechas se almacenan en el disco. Fechas a menudo se almacenan como números en bruto en formato AAAAMMDD . Por ejemplo , 10 de febrero 2014 normalmente se almacena como 20140210 . Representado en COBOL , la estructura de la fecha en la División DATOS aspecto:
01 DATA-RECOR D. ... campos de datos ... 03 EVENT-DATE 0.05 EVENTO AÑOS PIC 9,999.05 CASO MESES PIC 99.05 EVENT-DAY PIC 99 ... más campos ..
Una fila de datos se leen en el elemento de datos -RECORD , que se subdivide en una serie de campos . La fecha del evento de campo ( CASO -DATE ) se almacena en algún lugar de cada fila de datos en formato AAAAMMDD . La fecha en que se subdivide en campos de día , mes y año .
3
Definir una estructura en la que las fechas pueden ser aceptadas desde la consola. Dado que las fechas se suelen introducir en formato MM /DD /YYYY , la estructura debe reflejar esto.
01 DATE-IN 0.03 MM- EN RELLENO 99,03 PIC PIC X.03 DD- EN RELLENO 99,03 PIC PIC X. 03 YYYY-IN PIC 9999.
4
Definir el almacenamiento tanto para la fecha de inicio y fecha de finalización. Después de las fechas son leídos en la FECHA EN estructura , tienen que volver a formatear en formato AAAAMMDD . Las estructuras de la fecha de inicio y de fin FECHA mantendrán estos valores.
01 START-DATE 0,03 START -AAAA PIC 9,999.03 START -MM 99,03 START-DD PIC PIC 99 .
Crear un estructura similar FINAL fECHA con campos END - YYYY , FIN - mM -DD y END .
5
Acepte las fechas de la consola o JCL ( Job Control Language ) y dar nuevo formato a formato AAAAMMDD . En la División de Procedimiento, agregue el código siguiente :
PROCEDIMIENTO DIVISION.0000 - START.DISPLAY " Fecha de inicio : " ACEPTAR FECHA - IN.START -AAAA = AAAA- MM - IN.START = MM- IN. . START -DD = DD- EN
DISPLAY . " Fecha de finalización: ." ACEPTAR FECHA - IN.END -AAAA = AAAA- MM = IN.END - MM- DD = IN.END - DD- EN .
el programa arranca , un mensaje que pide la fecha de inicio, la fecha valor es aceptado y luego formatear en el campo de fecha de inicio mediante la asignación de cada campo para hacer referencia a su homólogo de entrada. El proceso se hace equivalente a la fecha de finalización .
6
Leer un registro y comparar las fechas. . Debido a que todas las fechas están en formato AAAAMMDD , sólo es necesario comparar cadenas para determinar si algún registro se encuentra dentro del rango de fecha que acaba de crear
DATOS 0100READ - RECORD.READ EN DATOS RECORDAT END , vaya a 0900 - . End of
si el evento - . FECHA > = fecha de inicio o < = FIN - DATEPERFORM 1000 - PROCESO -DATA
Cada registro se lee en la estructura de datos -RECORD , entonces el campo EVENT- Date obtiene en comparación con los campos FINAL FECHA DE INICIO FECHA - y . En este ejemplo, si la fecha del registro se encuentra entre la fecha de inicio y fin, el registro se procesa .