cobol
Uppdelning av data
Sök…
Introduktion
DATA DIVISION är en av de fyra delarna som utgör ett COBOL-program. Den innehåller uttalanden som beskriver data som används av programmet. Den består av fyra avsnitt: FILSEKTION, ARBETSLAGRING AVSNITT, LOCAL-LAGRING AVSNITT och LINKAGE SECTION.
Avsnitt i Data Division
AVSNITTER i COBOL kan krävas eller valfritt, beroende på vilken avdelning de är i.
DATA DIVISION.
FILE SECTION.
FD SAMPLE-FILE
01 FILE-NAME PIC X(20).
WORKING-STORAGE SECTION.
01 WS-STUDENT PIC A(10).
01 WS-ID PIC 9(5).
LOCAL-STORAGE SECTION.
01 LS-CLASS PIC 9(3).
LINKAGE SECTION.
01 LS-ID PIC 9(5).
I exemplet ovan är 01 talnivåer.
Nivånummer
Nivånummer används för att specificera datainivån i en post. De används för att skilja mellan elementära artiklar och gruppobjekt. Elementära objekt kan grupperas tillsammans för att skapa gruppobjekt.
- 01: Spela in beskrivning. Gruppnivå är alltid 01.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-NAME PIC X(25). ---> ELEMENTARY ITEM
01 WS-SURNAME PIC X(25). ---> ELEMENTARY ITEM
01 WS-ADDRESS. ---> GROUP ITEM
05 WS-HOUSE-NUMBER PIC 9(3). ---> ELEMENTARY ITEM
05 WS-STREET PIC X(15). ---> ELEMENTARY ITEM
- 02 till 49: Elementära artiklar
- 66: Byt namn på klausuler
- 77: Objekt som inte kan delas upp.
- 88: Nivå 88 är ett speciellt nivånummer som används för att förbättra läsbarheten för COBOL-program och för att förbättra IF-tester. En nivå 88 ser ut som en nivå under en annan variabel, men det är det inte. Det har inte ett BILD, men det har ett värde. En nivå 88 är alltid associerad med en annan variabel och är ett villkornamn för den variabeln.
01 YES-NO PIC X.
88 ANSWER-IS-YES VALUE "Y".
Båda följande villkor testar om YES-NO är lika med "Y":
IF YES-NO = "Y"
IF ANSWER-IS-YES
Ett villkorsnamn på nivå 88 kan användas för en alfanumerisk eller numerisk variabel.
Bildbestämmelse
PICTURE CLAUSE definierar två saker om en variabel: storleken på variabeln (antalet byte som används i minnet för värdet) och typen av data som kan lagras i variabeln.