Разделение данных используется для определения переменных, используемых в программе. Чтобы описать данные в COBOL, нужно понимать следующие термины —
- Название данных
- Номер уровня
- Пункт изображения
- Пункт о стоимости
01 TOTAL-STUDENTS PIC9(5) VALUE '125'. | | | | | | | | | | | | Level Number Data Name Picture Clause Value Clause
Название данных
Имена данных должны быть определены в Отделе данных перед их использованием в Отделе процедур. У них должно быть определенное пользователем имя; зарезервированные слова не могут быть использованы. Имена данных дают ссылку на места памяти, где хранятся фактические данные. Они могут быть элементарного или группового типа.
пример
В следующем примере показаны действительные и недействительные имена данных —
Valid: WS-NAME TOTAL-STUDENTS A100 100B Invalid: MOVE (Reserved Words) COMPUTE (Reserved Words) 100 (No Alphabet) 100+B (+ is not allowed)
Номер уровня
Номер уровня используется для указания уровня данных в записи. Они используются для различения элементарных предметов и групповых предметов. Элементарные элементы могут быть сгруппированы для создания групповых элементов.
Sr.No. | Номер уровня и описание |
---|---|
1 |
01 Запись описания записи |
2 |
02 до 49 Групповые и элементарные предметы |
3 |
66 Переименовать пункты |
4 |
77 Предметы, которые нельзя подразделить |
5 |
88 Запись названия условия |
01
Запись описания записи
02 до 49
Групповые и элементарные предметы
66
Переименовать пункты
77
Предметы, которые нельзя подразделить
88
Запись названия условия
-
Элементарные предметы не могут быть разделены дальше. Номер уровня, Имя данных, предложение Picture и предложение Value (необязательно) используются для описания элементарного элемента.
-
Групповые элементы состоят из одного или нескольких элементарных элементов. Номер уровня, Имя данных и Предложение значения (необязательно) используются для описания элемента группы. Номер уровня группы всегда 01.
Элементарные предметы не могут быть разделены дальше. Номер уровня, Имя данных, предложение Picture и предложение Value (необязательно) используются для описания элементарного элемента.
Групповые элементы состоят из одного или нескольких элементарных элементов. Номер уровня, Имя данных и Предложение значения (необязательно) используются для описания элемента группы. Номер уровня группы всегда 01.
пример
В следующем примере показаны групповые и элементарные элементы —
DATA DIVISION. WORKING-STORAGE SECTION. 01 WS-NAME PIC X(25). ---> ELEMENTARY ITEM 01 WS-CLASS PIC 9(2) VALUE '10'. ---> ELEMENTARY ITEM 01 WS-ADDRESS. ---> GROUP ITEM 05 WS-HOUSE-NUMBER PIC 9(3). ---> ELEMENTARY ITEM 05 WS-STREET PIC X(15). ---> ELEMENTARY ITEM 05 WS-CITY PIC X(15). ---> ELEMENTARY ITEM 05 WS-COUNTRY PIC X(15) VALUE 'INDIA'. ---> ELEMENTARY ITEM
Пункт изображения
Предложение Picture используется для определения следующих элементов:
-
Тип данных может быть числовым, буквенным или буквенно-цифровым. Числовой тип состоит только из цифр от 0 до 9. Алфавитный тип состоит из букв от A до Z и пробелов. Буквенно-цифровой тип состоит из цифр, букв и специальных символов.
-
Знак может использоваться с числовыми данными. Это может быть либо +, либо -.
-
Положение десятичной точки может использоваться с числовыми данными. Предполагаемая позиция — это позиция десятичной точки, которая не включена в данные.
-
Длина определяет количество байтов, используемых элементом данных.
Тип данных может быть числовым, буквенным или буквенно-цифровым. Числовой тип состоит только из цифр от 0 до 9. Алфавитный тип состоит из букв от A до Z и пробелов. Буквенно-цифровой тип состоит из цифр, букв и специальных символов.
Знак может использоваться с числовыми данными. Это может быть либо +, либо -.
Положение десятичной точки может использоваться с числовыми данными. Предполагаемая позиция — это позиция десятичной точки, которая не включена в данные.
Длина определяет количество байтов, используемых элементом данных.
Символы, используемые в предложении Picture —
Sr.No. | Символ и описание |
---|---|
1 |
9 числовой |
2 |
буквенный |
3 |
Икс алфавитно-цифровой |
4 |
В Неявный десятичный |
5 |
S Знак |
6 |
п Предполагаемый десятичный |
9
числовой
буквенный
Икс
алфавитно-цифровой
В
Неявный десятичный
S
Знак
п
Предполагаемый десятичный
пример
В следующем примере показано использование предложения PIC —
IDENTIFICATION DIVISION. PROGRAM-ID. HELLO. DATA DIVISION. WORKING-STORAGE SECTION. 01 WS-NUM1 PIC S9(3)V9(2). 01 WS-NUM2 PIC PPP999. 01 WS-NUM3 PIC S9(3)V9(2) VALUE -123.45. 01 WS-NAME PIC A(6) VALUE 'ABCDEF'. 01 WS-ID PIC X(5) VALUE 'A121$'. PROCEDURE DIVISION. DISPLAY "WS-NUM1 : "WS-NUM1. DISPLAY "WS-NUM2 : "WS-NUM2. DISPLAY "WS-NUM3 : "WS-NUM3. DISPLAY "WS-NAME : "WS-NAME. DISPLAY "WS-ID : "WS-ID. STOP RUN.
JCL для выполнения вышеуказанной программы COBOL —
//SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C //STEP1 EXEC PGM = HELLO
Когда вы компилируете и запускаете вышеуказанную программу, она дает следующий результат —
WS-NUM1 : +000.00 WS-NUM2 : .000000 WS-NUM3 : -123.45 WS-NAME : ABCDEF WS-ID : A121$
Пункт о стоимости
Значение Value является необязательным предложением, которое используется для инициализации элементов данных. Значения могут быть числовым литералом, буквенно-цифровым литералом или образной константой. Может использоваться как с групповыми, так и с элементарными предметами.
пример
В следующем примере показано использование предложения VALUE —
IDENTIFICATION DIVISION. PROGRAM-ID. HELLO. DATA DIVISION. WORKING-STORAGE SECTION. 01 WS-NUM1 PIC 99V9 VALUE IS 3.5. 01 WS-NAME PIC A(6) VALUE 'ABCD'. 01 WS-ID PIC 99 VALUE ZERO. PROCEDURE DIVISION. DISPLAY "WS-NUM1 : "WS-NUM1. DISPLAY "WS-NAME : "WS-NAME. DISPLAY "WS-ID : "WS-ID. STOP RUN.
JCL для выполнения вышеуказанной программы COBOL —
//SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C //STEP1 EXEC PGM = HELLO
Когда вы компилируете и запускаете вышеуказанную программу, она дает следующий результат —