COBOL lijkt misschien ouderwets in vergelijking met objectgeoriënteerde talen , maar het nog steeds bloeit op legacy mainframes waar haar bliksemsnelle rekenwerk is waarschijnlijk het gebruik ervan voor de komende jaren te garanderen . Voor degenen die thuis in Java of C # , kan het komen als een schok die deze taal heeft geen datum primitieven , maar veel van de applicatie code is afhankelijk van datum afhankelijkheden . Hier zijn een paar tips voor het beheren van data in COBOL . Instructies 1 Begrijp de basisstructuur van COBOL . Elke COBOL -programma heeft vier belangrijke secties die Divisies . Dit zijn IDENTIFICATIE , MILIEU , DATA en PROCEDURE . Date gegevens gaat in de afdeling DATA , een gebied dat geheugen structuren beschrijft . Kopen van 2 Bepalen hoe de data worden opgeslagen op schijf. Data worden vaak opgeslagen als ruwe cijfers in YYYYMMDD formaat . Zo wordt 10 februari 2014 meestal opgeslagen als 20.140.210 . Vertegenwoordigd in COBOL , de datum structuur in de afdeling DATA ziet er zo uit : 01 DATA-RECOR D. ... datavelden ... 03 EVENT-DATE 0,05 EVENT - JAAR PIC 9.999,05 EVENT - MAAND PIC 99.05 EVENT-DAY PIC 99 ... meer velden .. gegevensrij wordt gelezen in de RECORD DATA - element , dat is onderverdeeld in een aantal gebieden . Het veld evenement datum ( EVENT - DATE ) wordt ergens opgeslagen in elke rij gegevens in YYYYMMDD formaat . De datum is onderverdeeld in jaar , maand en dag velden . 3 Definieer een structuur waarin de data van de console kan worden aanvaard . Omdat data meestal in DD /MM /YYYY formaat worden ingevoerd , moet de structuur van dit. 01 DATE-IN 0,03 MM - IN PIC 99,03 VULLER PIC X.03 DD - IN PIC 99,03 VULLER PIC X. weerspiegelen 03 YYYY-IN PIC 9999 . 4 opslag definiëren voor zowel de begin -en einddatum . Nadat de data om te lezen in de DATUM - IN structuur , moeten ze worden geformatteerd naar YYYYMMDD formaat . De START - DATE en END - DATE structuren zal houden deze waarden . 01 START-DATE 0,03 START - YYYY PIC 9.999,03 START - MM PIC 99,03 START-DD PIC 99 . Maak een soortgelijke structuur END - DATE met velden END - YYYY , END - MM en END - DD . 5 Accepteer de data van de console of JCL ( Job control Language ) en formatteer ze naar YYYYMMDD formaat . In de Divisie Procedure , voeg de volgende code : PROCEDURE DIVISION.0000 - START.DISPLAY " Startdatum : " ACCEPT DATE - IN.START - YYYY = YYYY - IN.START - MM = MM - IN . . START - DD = DD - IN DISPLAY . " Einddatum: " . ACCEPT DATE - IN.END - YYYY = YYYY - IN.END - MM = MM - IN.END - DD = DD - IN het programma . begint , een melding voor de startdatum , wordt de valutadatum geaccepteerd en vervolgens geformatteerd in het veld sTART - dATE door het toewijzen van elk veld om te verwijzen naar haar inbreng tegenhanger . De gelijkwaardig proces wordt gedaan voor de einddatum . 6 Lees een record en vergelijk de data . . Omdat alle data zijn nu in YYYYMMDD -formaat , hoeft u alleen maar te vergelijken tekenreeksen om te bepalen of een record binnen de periode die u zojuist hebt gemaakt 0100READ - RECORD.READ DATA IN DATA - RECORDAT END , GA NAAR 0900 - . END IF EVENT - . DATE > = START - DATE of < = END - DATEPERFORM 1000 - PROCES - DATA Elke record wordt gelezen in de DATA - RECORD structuur , dan het veld EVENT - DATE wordt vergeleken met de START - DATE en END - DATE velden . In dit voorbeeld, als datum van de record is tussen het begin-en einddatum , het record wordt verwerkt . |