Vì sao trong COBOL có 01 trước tên biến? Hiểu đúng về Level Number và cấu trúc dữ liệu phân cấp
Vì sao trong COBOL có 01 trước tên biến?
Khi đọc code COBOL, bạn sẽ thường thấy cấu trúc như sau:
01 CUSTOMER-SRC.
05 CUST-ID PIC 9(5).
05 CUST-NAME PIC X(30).
01 CUSTOMER-DST.
05 CUST-ID PIC 9(5).
05 CUST-NAME PIC X(30).
Rất nhiều người mới học COBOL thắc mắc:
Tại sao lại có
01trướcCUSTOMER-SRCvàCUSTOMER-DST?
Nó có ý nghĩa gì? Có giống kiểu dữ liệu không?
Trong bài viết này, chúng ta sẽ phân tích rõ bản chất của 01, cách COBOL tổ chức dữ liệu, và tại sao điều này cực kỳ quan trọng trong hệ thống legacy.
1️⃣ 01 là gì trong COBOL?
01 là Level Number – mức cấp trong cấu trúc dữ liệu phân cấp của COBOL.
COBOL tổ chức dữ liệu theo dạng cây (hierarchical structure), không giống như kiểu struct/class hiện đại.
Ví dụ các level thường gặp:
| Level | Ý nghĩa |
|---|---|
| 01 | Record cấp cao nhất (root) |
| 05 | Field con của 01 |
| 10 | Field con của 05 |
| 77 | Biến đơn lẻ (không thuộc group) |
| 88 | Condition name (biến điều kiện) |
Trong bài 002 về biến và kiểu dữ liệu, bạn đã thấy level number dùng để khai báo group item và field con. Ở đây, ta zoom kỹ hơn vào vai trò của 01.
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.
