COBOL mag altmodisch , wenn die objektorientierte Sprachen verglichen , aber es lebt von Legacy- Mainframes , wo seine blitzschnelle Zahlenverarbeitung geeignet ist, ihre Verwendung für die kommenden Jahre zu gewährleisten. Für diejenigen, die versiert in Java oder C # , kann es wie ein Schock kommen , dass diese Sprache kein Datum Primitiven hat , noch viel von der Anwendungs-Code ist abhängig von Datum Abhängigkeiten . Hier sind ein paar Tipps für die Verwaltung von Daten in COBOL . Anleitung
1
verstehen, die grundlegende Struktur der COBOL . Jeder COBOL-Programm hat vier große Abschnitte, so genannte Divisionen . Dies sind GEFAHREN , UMWELT, DATA und VERFAHREN . Datum Daten geht in dem Datenteil , ein Gebiet, das Speicher-Strukturen beschreibt .
2
Sie fest, wie die Daten auf der Festplatte gespeichert sind. Termine werden oft als nackte Zahlen in JJJJMMTT -Format gespeichert. So wird beispielsweise 10. Februar 2014 in der Regel als 20140210 gespeichert. Vertreten in COBOL, sieht das Datum in der Struktur DATA Abteilung wie folgt aus:
01 DATA-RECOR D. ... Datenfelder ... 03 EVENT-DATE .05 EVENT - JAHR PIC 9.999,05 EVENT -MONATS- PIC 99.05 EVENT-DAY PIC 99 ... mehr Felder ..
Eine Reihe von Daten wird in die DATA -RECORD Element, das in einer Reihe von Bereichen unterteilt wird gelesen. Das Feld Datum des Ereignisses (EVENT - DATE) irgendwo in jeder Zeile von Daten in JJJJMMTT -Format gespeichert. Das Datum wird in Jahr , Monat und Tag Felder unterteilt .
3
Definieren Sie eine Struktur, bei der die Daten von der Konsole akzeptiert werden können. Da Daten in der Regel in MM /DD /YYYY Format eingegeben werden , muss die Struktur spiegeln dies wider.
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
definieren Lagerung sowohl für Start -und Enddatum . Nachdem die Daten in die DATE -IN Struktur bekommen zu lesen, müssen sie JJJJMMTT neu formatiert werden. Die START -DATE und END -DATE Strukturen halten diese Werte.
01 START-DATE .03 START -JJJJ PIC 9.999,03 START -MM PIC 99.03 START-DD PIC 99 .
Erstellen ähnliche Struktur END -DATE mit Feldern END - YYYY , END -MM -DD und ENDE .
5
Übernehmen Sie die Daten von der Konsole oder JCL (Job Control Language ) und formatieren Sie sie JJJJMMTT . In der PROCEDURE DIVISION , fügen Sie den folgenden Code:
VERFAHREN DIVISION.0000 - START.DISPLAY "Start Date: " ACCEPT DATE - IN.START -JJJJ = YYYY -MM - IN.START = MM -IN. . START -DD = DD -IN
DISPLAY . " End Date: " . DATUM - IN.END -JJJJ = YYYY -MM - IN.END = MM- IN.END -DD = DD -IN ACCEPT .
das Programm startet , wird eine Meldung aufgefordert, das Startdatum , das Datum Wert wird übernommen und dann in die START - DATE-Feld formatiert , indem jedem Feld, das an seinem Eingang Gegenstück beziehen . Die äquivalente Prozess wird für das Enddatum getan .
6
Lesen eines Datensatzes und vergleichen Sie die Daten. . Weil alle Daten sind jetzt in Format JJJJMMTT , brauchen Sie nur Zeichenfolgen vergleichen um festzustellen, ob Datensatz ist im Datumsbereich Sie gerade erstellt
0100READ - RECORD.READ in Daten - RECORDAT END , TO GO 0900 - . END IF
EVENT - . DATUM > = START -DATE oder < = END - DATEPERFORM 1000 PROCESS -DATA
Jeder Datensatz in der DATA -RECORD Struktur gelesen wird , dann die Event- DATE-Feld wird der START -DATE und END -DATE Feldern verglichen. In diesem Beispiel, wenn des Datensatzes Datum zwischen dem Start-und Enddatum , wird der Datensatz verarbeitet .