الانتقال إلى المحتوى الرئيسي
الوحدة 5 · الدرس 1 من 29/10 في الدورة~15 min
دروس الوحدة (1/2)

تعريف الملف والتحكم في الملفات

في COBOL، تعد إدارة الملفات الخارجية (مثل الأرشيفات النصية أو السجلات الثنائية على القرص) إحدى أهم الميزات لتطبيقات الشركات المجمعة. وبما أن لغة COBOL قد تم تصميمها قبل وقت طويل من إنشاء قواعد البيانات الحديثة، فإن ملفات القرص تعمل بمثابة وحدة التخزين الأساسية.

يتم ربط الملفات الفعلية المخزنة على نظام التشغيل مع المتغيرات الداخلية للبرنامج على مرحلتين:

  1. الارتباط المنطقي والمادي في ENVIRONMENT DIVISION.
  2. تعريف سجل البيانات في DATA DIVISION.

1. الاقتران: التحكم في الملفات واختيار التعيين

في الفصل المخصص لبنية البرنامج، استكشفنا ENVIRONMENT DIVISION. بداخلها INPUT-OUTPUT SECTION تحتوي على الفقرة FILE-CONTROL التي تعلن عن الملفات الخارجية التي يستخدمها البرنامج.

لربط ملف منطقي في البرنامج (على سبيل المثال، SALES-FILE) بملف فعلي حقيقي على القرص (على سبيل المثال، sales.dat)، استخدم العبارة SELECT ... ASSIGN TO ...:

COBOL
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT SALES-FILE ASSIGN TO "sales.dat"
               ORGANIZATION IS LINE SEQUENTIAL.
  • SELECT SALES-FILE: يحدد الاسم المنطقي الذي سيستخدمه البرنامج للإشارة إلى الملف.
  • ASSIGN TO "sales.dat": يحدد اسم الملف الفعلي (أو المسار) على القرص.
  • ORGANIZATION IS LINE SEQUENTIAL (اختياري): يشير إلى أن الملف عبارة عن ملف نص عادي حيث يمثل كل سطر سجلاً (مفصولاً بأحرف السطر الجديد).

2. الإعلان: قسم الملف وFD

بعد ربط الملف في ENVIRONMENT DIVISION، يجب علينا تحديد بنية سجلاته في DATA DIVISION. للقيام بذلك، نستخدم قسمًا مخصصًا يسمى FILE SECTION (الذي يسبق WORKING-STORAGE SECTION).

يجب أن يحتوي كل ملف محدد على إدخال FD (وصف الملف) الذي يعلن عن بنية السجل:

COBOL
       DATA DIVISION.
       FILE SECTION.
       FD SALES-FILE.
       01 SALES-RECORD.
           05 EMP-ID       PIC 9(5).
           05 EMP-NAME     PIC X(20).
           05 EMP-SALARY   PIC 9(6)V99.
  • FD SALES-FILE.: يحدد وصف الملف للاسم المنطقي SALES-FILE. لاحظ أنه ينتهي بفترة.
  • 01 SALES-RECORD.: يحدد بنية المجموعة (السجل) المرتبطة بالملف. ستقوم كل عملية قراءة/كتابة بتبادل البيانات باستخدام بنية الذاكرة هذه.

جربه

تمرين#cobol.m5.l1.e1
المحاولات: 0جارٍ التحميل…

أكمل قسم البيئة لإعلان قسم الإدخال والإخراج وفقرة التحكم في الملف، مع ربط الملف المنطقي SALES-FILE بالملف الفعلي "sales.dat" باستخدام عبارة SELECT ASSIGN.

جارٍ تحميل المحرر…
إظهار التلميح

اكتب قسم البيئة. وقسم الإدخال والإخراج. في العمود 8 (7 مسافات)، ثم التحكم في الملفات. في العمود 8، وأخيرًا حدد ملف المبيعات المخصص لـ "sales.dat". في العمود 12 (11 مسافة).

الحل متاح بعد 3 من المحاولات

تمرين#cobol.m5.l1.e2
المحاولات: 0جارٍ التحميل…

قم بتعريف قسم البيانات وقسم الملف للبرنامج. حدد واصف الملف (FD) لملف المبيعات، واربطه بسجل المستوى 01 المسمى SALES-RECORD الذي يحتوي على حقلين ثانويين: معرف المبيعات (رقمي مكون من 4 أرقام) وSALES-AMOUNT (رقم مكون من 5 أرقام مع رقمين عشريين ضمنيين).

جارٍ تحميل المحرر…
إظهار التلميح

استخدم قسم البيانات. وقسم الملفات. في العمود 8، ملف مبيعات FD. في العمود 8، متبوعًا بـ 01 سجل المبيعات. في العمود 8، والحقول 05 - معرف المبيعات PIC 9(4). و05 مبلغ المبيعات الموافقة المسبقة عن علم 9(5)V99. في العمود 12 على أسطر جديدة.

الحل متاح بعد 3 من المحاولات