COBOL程式結構包括如在下面的圖片顯示:
簡單介紹這些分割區如下:
您可以互相涉及的以下範例中的上述條件與COBOL程式:
PROCEDURE DIVISION. A0000-FIRST-PARA SECTION. FIRST-PARAGRAPH. ACCEPT WS-ID - Statement-1 -----| MOVE '10' TO WS-ID - Statement-2 |-- Sentence - 1 DISPLAY WS-ID - Statement-3 -----| .
COBOL程式由4個區劃組成
這是每個COBOL程式的第一個也是唯一的強制性分工。程式設計器和編譯器使用該分工鑑定程式。在此處程式唯一的ID是強制性的段落。程式ID指定的程式名稱。程式名稱可以由1?30個字元組成。
IDENTIFICATION DIVISION. PROGRAM-ID. HELLO. PROCEDURE DIVISION. DISPLAY 'Welcome to yiibai'. STOP RUN.
JCL以上COBOL程式執行。
//SAMPLE JOB(TESTJCL,XXXXXX),CLASS=A,MSGCLASS=C //STEP1 EXEC PGM=HELLO
當編譯並執行上面的程式它會產生以下結果:
Welcome to Yiibai
環境區劃用於指定輸入和輸出檔案的程式。它由兩部分組成:
目標計算機:用於執行程式系統。
IO控制:提供在程式中使用的檔案的資訊。
ENVIRONMENT DIVISION. CONFIGURATION SECTION. SOURCE-COMPUTER. XXX-ZOS. OBJECT-COMPUTER. XXX-ZOS. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT FILEN ASSIGN TO DDNAME ORGANIZATION IS SEQUENTIAL.
資料分割區是用來定義在該程式中使用的變數。它包括四個部分:
COBOL程式
IDENTIFICATION DIVISION. PROGRAM-ID. HELLO. ENVIRONMENT DIVISION. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT FILEN ASSIGN TO INPUT. ORGANIZATION IS SEQUENTIAL. ACCESS IS SEQUENTIAL. DATA DIVISION. FILE SECTION. FD FILEN 01 NAME PIC A(25). WORKING-STORAGE SECTION. 01 WS-STUDENT PIC A(30). 01 WS-ID PIC 9(5). LOCAL-STORAGE SECTION. 01 LS-CLASS PIC 9(3). LINKAGE SECTION. 01 LS-ID PIC 9(5). PROCEDURE DIVISION. DISPLAY 'Executing COBOL program using JCL'. STOP RUN.
JCL以上COBOL程式執行。
//SAMPLE JOB(TESTJCL,XXXXXX),CLASS=A,MSGCLASS=C //STEP1 EXEC PGM=HELLO //INPUT DD DSN=ABC.EFG.XYZ,DISP=SHR
當編譯並執行上面的程式它會產生以下結果:
Executing COBOL program using JCL
程式分部被用於包含程式的邏輯。它包括使用資料分割定義的變數可執行語句。在這個劃分,段落和章節名稱是user-defined。
必須有程式師至少有一個語句。最後語句結束在執行這種劃分或者是停止執行它用於呼叫它採用的是被稱為程式的程式或退出程式。
IDENTIFICATION DIVISION. PROGRAM-ID. HELLO. DATA DIVISION. WORKING-STORAGE SECTION. 01 WS-NAME PIC A(30). 01 WS-ID PIC 9(5) VALUE '12345'. PROCEDURE DIVISION. A000-FIRST-PARA. DISPLAY 'Hello World'. MOVE 'YiiBai' TO WS-NAME. DISPLAY "My name is : "WS-NAME. DISPLAY "My ID is : "WS-ID. STOP RUN.
JCL以上COBOL程式執行。
//SAMPLE JOB(TESTJCL,XXXXXX),CLASS=A,MSGCLASS=C //STEP1 EXEC PGM=HELLO
當編譯並執行上面的程式它會產生以下結果:
Hello World My name is : YiiBai My ID is : 12345