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.



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow