Comprendere la struttura di base del COBOL . Ogni programma COBOL ha quattro principali sezioni denominate divisioni . Questi sono IDENTIFICAZIONE , AMBIENTE , DATA E PROCEDURA . Dati appuntamento va nella Divisione DATI , una zona che descrive le strutture di memoria . 
 2 
 Determinare come le date vengono memorizzate su disco. Le date vengono spesso memorizzati come numeri grezzi in formato AAAAMMGG . Ad esempio , 10 feb 2014 sono generalmente memorizzati come 20.140.210 . Rappresentato in COBOL , la struttura di data nella Divisione DATI aspetto: 
 
 01 DATA-RECOR D. ... i campi di dati ... 03 EVENT-DATE .05 EVENTO ANNI PIC 9.999,05 EVENT- MESE PIC 99.05 EVENT-DAY PIC 99 ... più campi .. 
 
 una riga di dati viene letto nell'elemento DATI RECORD , che si articola in una serie di settori. La data dell'evento campo ( EVENT- DATA ) viene memorizzato da qualche parte in ogni riga dei dati in formato AAAAMMGG . La data è suddiviso in anno, mese e giorno i campi . 
 3 
 definire una struttura in cui le date possono essere accettati dalla console . Perché le date sono solitamente inseriti in formato MM /GG /AAAA , la struttura deve riflettere questo . 
 
 01 DATE-IN .03 MM -IN PIC 99.03 FILLER PIC X.03 DD -IN PIC 99.03 FILLER PIC X. 03 YYYY-IN PIC 9999. 
 4 
 Definire stoccaggio sia per data di inizio e data di fine . Dopo le date vengono letti nel DATA -IN struttura , devono essere riformattato in formato AAAAMMGG . Le strutture di data di inizio e la data finale terranno questi valori . 
 
 01 START-DATE .03 INIZIO - AAAA PIC 9999,03 INIZIO -MM PIC 99.03 START-DD PIC 99 . 
 
 Creare un struttura simile end-date con campi END - YYYY , END - mM e END - DD . 
 5 
 Accetto le date dalla console o JCL ( Job Control Language) e riformattare loro di formato AAAAMMGG . Nella Divisione procedura, aggiungere il seguente codice : 
 
PROCEDURA DIVISION.0000 - START.DISPLAY " Data di inizio : " ACCEPT DATE- IN.START - AAAA = AAAA - MM - IN.START = MM -IN . . AVVIO - DD = DD - economici con
 DISPLAY . " Data fine: " . ACCEPT DATE- IN.END - AAAA = AAAA - MM - IN.END = MM - IN.END - DD = DD -IN . 
 
 il programma inizia , un messaggio richiede la data di inizio , il valore della data viene accettato e quindi riformattato in campo data di inizio assegnando ogni campo per riferirsi alla sua controparte di ingresso . Il processo equivalente è fatto per la data di fine . 
 6 
 leggere un record e confrontare le date . . Poiché tutte le date sono ora in formato AAAAMMGG , è sufficiente confrontare le stringhe per determinare se qualsiasi record è nell'intervallo di date che avete appena creato 
 
 DATI 0100READ - RECORD.READ in dati - RECORDAT END , andare al 0900 - . END 
 
 se l'evento - . DATA > = data di inizio o < = END - DATEPERFORM 1000 - PROCESSO -DATA 
 
 Ogni record viene letto nella struttura DATI RECORD , poi il campo event- DATA viene confrontato con i campi END - data di inizio - DATA e . In questo esempio, se la data del record è tra la data di inizio e fine , il record viene elaborato . 
 
              
Programmazione © www.354353.com