דילוג לתוכן המרכזי
מודול 5 · שיעור 1 מתוך 29/10 בקורס~15 min
שיעורי מודול (1/2)

הגדרת קבצים ובקרת קבצים

ב-COBOL, ניהול קבצים חיצוניים (כגון ארכיוני טקסט או רשומות בינאריות בדיסק) הוא אחת התכונות החשובות ביותר ליישומים ארגוניים. מכיוון ש-COBOL תוכנן הרבה לפני מסדי נתונים מודרניים, קבצי דיסק משמשים כאחסון העיקרי.

חיבור קבצים פיזיים המאוחסנים במערכת ההפעלה עם המשתנים הפנימיים של התוכנית מתרחש בשני שלבים:

  1. שיוך לוגי-פיזי ב-ENVIRONMENT DIVISION.
  2. הגדרת רשומת הנתונים ב-DATA DIVISION.

1. שיוך: FILE-CONTROL ו-SELECT ASSIGN

בפרק המוקדש למבנה התוכנית, חקרנו את 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. הצהרה: FILE SECTION ו-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טוען...

השלם את ה-ENVIRONMENT DIVISION כדי להכריז על ה-INPUT-OUTPUT SECTION ופסקת FILE-CONTROL, שיוך את הקובץ הלוגי SALES-FILE לקובץ הפיזי 'sales.dat' באמצעות המשפט SELECT ASSIGN.

טוען עורך...
הצג רמז

כתוב אגף סביבה. וקטע קלט-פלט. בעמודה 8 (7 רווחים), ואז FILE-CONTROL. בעמודה 8, ולבסוף SELECT SALES-FILE ASSIGN TO 'sales.dat'. בעמודה 12 (11 רווחים).

הפתרון זמין לאחר 3 ניסיונות

פעילות גופנית#cobol.m5.l1.e2
ניסיונות: 0טוען...

הכריז על חלוקת הנתונים ו-FILE SECTION עבור התוכנית. הגדר את מתאר הקובץ (FD) עבור SALES-FILE, שייך אותו לרשומה ברמה 01 בשם SALES-RECORD המכילה שני שדות כפופים: SALES-ID (מספרי 4 ספרות) ו-SALES-AMOUNT (מספרי 5 ספרות עם 2 עשרונים מרומזים).

טוען עורך...
הצג רמז

השתמש ב-DATA DIVISION. ו-FILE SECTION. בעמודה 8, FD SALES-FILE. בעמודה 8, ואחריו 01 SALE-RECORD. בעמודה 8, והשדות 05 SALES-ID PIC 9(4). ו-05 סכום מכירות תמונה 9(5)V99. בעמודה 12 בשורות חדשות.

הפתרון זמין לאחר 3 ניסיונות