Hiểu về Paragraph trong COBOL: Cấu trúc, PERFORM và EXIT
5:00 read
Paragraph trong COBOL là gì?
Trong COBOL, paragraph là đơn vị cơ bản của executable logic trong PROCEDURE DIVISION. Nó rất giống function hoặc subroutine trong các ngôn ngữ hiện đại:
- Có tên (label) để gọi bằng câu lệnh
PERFORM. - Chứa các câu lệnh thực thi tuần tự.
- Khi paragraph kết thúc, control bình thường quay lại nơi gọi.
- Nhiều team dùng paragraph
-EXITnhư một return point theo convention.
Ví dụ pattern thường gặp:
SQL-COMMIT-PROC.
EXEC SQL COMMIT WORK RELEASE END-EXEC.
SQL-COMMIT-EXIT.
EXIT.
Paragraph khác gọi nó bằng PERFORM:
PERFORM SQL-COMMIT-PROC.
Và dạng THRU sẽ chạy tất cả paragraph từ tên đầu tới label exit:
PERFORM LOGON-PROC THRU LOGON-EXIT.
Về ý nghĩa:
SQL-COMMIT-PROC.giống thân của một function.SQL-COMMIT-EXIT.là exit point được đặt tên rõ ràng.PERFORM SQL-COMMIT-PROCgiống như gọi function.
Cấu trúc chương trình COBOL và vị trí của Paragraph
Một chương trình COBOL cơ bản có các division:
IDENTIFICATION DIVISIONENVIRONMENT DIVISIONDATA DIVISIONPROCEDURE DIVISION
Trong PROCEDURE DIVISION thường có:
- Section (tuỳ chọn, hay dùng trong chương trình lớn).
- Paragraph bên trong section, hoặc trực tiếp trong
PROCEDURE DIVISION.
Ví dụ rút gọn:
IDENTIFICATION DIVISION.
PROGRAM-ID. SAMPLE.
PROCEDURE DIVISION.
MAIN-LOGIC SECTION.
MAIN-START.
PERFORM INITIALIZE-PROC
PERFORM PROCESS-ORDERS
PERFORM FINALIZE-PROC
GOBACK.
INITIALIZE-PROC.
... initialization statements ...
INITIALIZE-EXIT.
EXIT.
PROCESS-ORDERS.
... processing statements ...
PROCESS-ORDERS-EXIT.
EXIT.
FINALIZE-PROC.
... cleanup statements ...
FINALIZE-EXIT.
EXIT.
Điểm chính:
- Section gom nhóm các paragraph liên quan.
- Paragraph là đơn vị logic được
PERFORM. - Paragraph
-EXITlà convention cho paragraph cuối của một routine.
Yêu cầu đăng nhập
Vui lòng đăng nhập để truy cập nội dung này
Additional Resources
Course Guide
Comprehensive PDF guide with examples
GitHub Repository
Example code for all lessons
Discussion
Have a question about this lesson? Post it here and get answers from instructors and peers.
