COBOL - Datentypen



Daten Teilung ist verwendet, zu um die Variablen in einem Programm definiert werden. Um Daten in COBOL zu beschreiben, muss man die folgenden Begriffe verstehen:

  • Daten Name

  • Stufe Zahl

  • Picture-Klausel

  • Wert-Klausel

01            TOTAL-STUDENTS            PIC9(5)            VALUE '125'.
|                    |                    |                    |
|                    |                    |                    |
|                    |                    |                    | 
Level Number     Data Name           Picture Clause       Value Clause

Daten Name

Daten namen dürfen in dem Datenteilung, bevor Sie sie in der Abteilung Ordnung bestimmt werden. Sie müssen einen benutzer definierten Namen haben; reservierten Wörter kann nicht verwendet werden. Daten Namen verleiht Hinweis zu die Speicherstellen in dem wo eigentlichen Daten gespeichert werden. sie können elementare oder Gruppentyp sein.

Beispiel

Das folgende Beispiel zeigt gültige und ungültige Daten Namen:

Valid:
WS-NAME
TOTAL-STUDENTS
A100
100B

Invalid:
MOVE            (Reserved Words)
COMPUTE         (Reserved Words)
100             (No Alphabet)
100+B           (+ is not allowed) 

Stufe Zahl

Ebenennummer wird verwendet, zu angeben Niveau der Daten in einem Datensatz . Sie werden verwendet, um zwischen elementarArtikel und gruppe Artikel zu differenzieren. elementarArtikel können in Gruppen zusammengefasst werden, um gruppe Artikel zu schaffen.

Stufe Anzahl Beschreibung
01 Rekord Beschreibung Eintrag
02 to 49 Gruppe und elementar Artikel
66 Umbenennen Klausel Artikel
77 Artikel welche nicht unterteilt sein kann
88 Zustand Namenseintrag
  • Grundlegend Artikel kann nicht weiter geteilt werden. Level-Nummer, Daten Name, picture-Klausel und Value-Klausel (optional) werden verwendet, um eine elementare Artikel zu beschreiben.

  • Gruppe Artikel besteht aus einem oder mehreren elementar Artikels. Level-Nummer, Daten Name und Wert-Klausel (optional) werden verwendet, um eine Gruppe Artikel zu beschreiben. Konzernebene Nummer ist immer 01.

Beispiel

Das folgende Beispiel zeigt Group und Grund Produkte:

DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-NAME    PIC X(25).                               ---> ELEMENTARY ITEM 
01 WS-CLASS   PIC 9(2)  VALUE  '10'.                   ---> ELEMENTARY ITEM

01 WS-ADDRESS.                                         ---> GROUP ITEM   
   05 WS-HOUSE-NUMBER    PIC 9(3).                     ---> ELEMENTARY ITEM
   05 WS-STREET          PIC X(15).                    ---> ELEMENTARY ITEM
   05 WS-CITY            PIC X(15).                    ---> ELEMENTARY ITEM
   05 WS-COUNTRY         PIC X(15)  VALUE 'INDIA'.     ---> ELEMENTARY ITEM

Picture-Klausel

Picture-Klausel wird verwendet zu definieren, um die folgenden Artikel:

  • Datentyp kann numerisch, alphabetisch oder alphanumerisch. Numerischen Typ besteht aus nur Ziffern 0 bis 9 Alphabetische Typ besteht aus Buchstaben A zu Z und Leerzeichen. Alphanumerischen Typ besteht aus Ziffern, Buchstaben und Sonderzeichen.

  • Zeichen kann mit numerischen Daten verwendet werden. Es kann entweder + oder.

  • Dezimalpunktposition kann mit numerischen Daten verwendet werden. Angenommene Position ist die Position der Dezimalstelle und nicht in den Daten enthalten sind.

  • Länge legt die Anzahl der Bytes, die von dem Datenelement verwendet.

Symbole in einem Bild-Klausel:

Symbol Beschreibung
9 Numeric
A Alphabetische
X alphanumerische
V Implizite Decimal
S Sign
P ausgegangen dezimal

Beispiel

Das folgende Beispiel zeigt die Verwendung von PIC-Klausel:

IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.

DATA DIVISION.
   WORKING-STORAGE SECTION.
   01 WS-NUM1 PIC S9(3)V9(2).
   01 WS-NUM2 PIC PPP999.
   01 WS-NUM3 PIC S9(3)V9(2) VALUE -123.45.
   01 WS-NAME PIC A(6) VALUE 'ABCDEF'.
   01 WS-ID PIC X(5) VALUE 'A121$'.

PROCEDURE DIVISION.
   DISPLAY "WS-NUM1 : "WS-NUM1.
   DISPLAY "WS-NUM2 : "WS-NUM2.
   DISPLAY "WS-NUM3 : "WS-NUM3.
   DISPLAY "WS-NAME : "WS-NAME.
   DISPLAY "WS-ID : "WS-ID.
STOP RUN.

JCL oben COBOL-Programm zu ausführen:

//SAMPLE JOB(TESTJCL,XXXXXX),CLASS=A,MSGCLASS=C
//STEP1 EXEC PGM=HELLO

Wenn Sie kompilieren und führen Sie das obige Programm, es produziert das folgende Ergebnis:

WS-NUM1 : +000.00
WS-NUM2 : .000000
WS-NUM3 : -123.45
WS-NAME : ABCDEF
WS-ID : A121$

Wert-Klausel

Wert Klausel ist optional Klausel, die verwendet wird, um die Datenelemente zu initialisieren. Die Werte können numerisches Literal, alphanumerisches Literal oder figurative Konstante sein. Es kann sowohl mit Gruppe und Datenelemente verwendet werden.

Beispiel

Das folgende Beispiel zeigt die Verwendung der Wert-Klausel:

IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.

DATA DIVISION.
   WORKING-STORAGE SECTION.
   01 WS-NUM1 PIC 99V9 VALUE IS 3.5.
   01 WS-NAME PIC A(6) VALUE 'ABCD'.
   01 WS-ID PIC 99 VALUE ZERO.

PROCEDURE DIVISION.
   DISPLAY "WS-NUM1 : "WS-NUM1.
   DISPLAY "WS-NAME : "WS-NAME.
   DISPLAY "WS-ID   : "WS-ID.
STOP RUN.

JCL oben COBOL-Programm zu ausführen:

//SAMPLE JOB(TESTJCL,XXXXXX),CLASS=A,MSGCLASS=C
//STEP1 EXEC PGM=HELLO

Wenn Sie kompilieren und führen Sie das obige Programm, es produziert das folgende Ergebnis:

WS-NUM1 : 03.5
WS-NAME : ABCD
WS-ID   : 00
Advertisements