COPY Clause trong COBOL: Tái sử dụng code với copybook
COPY Clause trong COBOL là gì?
Trong COBOL, COPY clause là cơ chế tái sử dụng code thông qua các file gọi là copybook. Thay vì lặp lại cùng một đoạn khai báo hoặc cùng một nhóm paragraph trong nhiều chương trình, bạn đặt chúng vào một copybook và dùng câu lệnh COPY để nhúng vào nơi cần thiết.
Ví dụ:
COPY RZ6PCOMN.
Khi gặp câu lệnh này, COBOL compiler (hoặc preprocessor) sẽ chèn toàn bộ nội dung source của file copybook RZ6PCOMN vào đúng vị trí COPY trong chương trình chính. Kết quả là:
- Chương trình gọi
COPYcó đầy đủ mọi khai báo và paragraph bên trong copybook. - Bạn có thể dùng trực tiếp các paragraph như
LOGON-PROC,SQL-ERR-PROC, v.v. được định nghĩa trong copybook đó.
Nói cách khác, COPY clause hoạt động giống như cơ chế "include" theo kiểu text: copy-paste nội dung file chung vào chương trình tại thời điểm compile.
Tại sao cần COPY Clause?
Trong hệ thống COBOL lớn, thường có rất nhiều chương trình batch, online, utility… cần dùng chung:
- Khai báo data structure giống nhau (ví dụ layout record của file, layout message gửi qua MQ, layout của giao diện màn hình,…).
- Các paragraph xử lý chung: login, logging, xử lý lỗi SQL, chuẩn hoá dữ liệu, v.v.
Nếu bạn copy-paste code thủ công vào từng chương trình:
- Rất khó bảo trì: sửa một lỗi phải sửa ở nhiều nơi.
- Dễ không đồng bộ: nơi cập nhật, nơi quên cập nhật.
Dùng COPY clause:
- Đặt phần dùng chung vào một copybook.
- Mỗi chương trình chỉ cần
COPY <tên-copybook>.. - Khi cần sửa logic chung, chỉ sửa một file copybook.
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.
