Перейти до вмісту
ГОСТ 22558-89
/ 116

(кроме варианта USAGE IS DISPLAY (ДЛЯ ВЫДАЧИ)).

((3) Несколько статей с номером уровня 01, подчиненных одно­му и тому же заданному индикатору уровня, отличному от инди­катора уровня RD (ОО) для статьи описания отчета, переопреде­ляют одно и то же поле памяти.

.5.4. Фраза BLANK WHEN ZERO (ПРОБЕЛ КОГДА НУЛЬ)

Назначение

Фраза BLANK WHEN ZERO (ПРОБЕЛ КОГДА НУЛЬ) позво­ляет заменить данное пробелом, когда его значение является ну­левым.

О б щ и й формат

BLANK WHEN ZERO

.ПРОБЕЛ КОГДА НУЛЬ

Синтаксические правила

Фраза BLANK WHEN ZERO (ПРОБЕЛ КОГДА НУЛЬ) может быть использована только для элементарного данного, шаб­лон которого определен как числовой или числовой редактируемый (п. 5.9 настоящей части).

Числовые и числовые редактируемые данные, описанные с фразой BLANK WHEN ZERO (ПРОБЕЛ КОГДА НУЛЬ), должны быть явно или неявно описаны как USAGE IS DISPLAY (ДЛЯ ВЫ­ДАЧИ).

О б щ и е правила

Если в описании данного указана фраза BLANK WHEN ZERO (ПРОБЕЛ КОГДА НУЛЬ), и значение этого данного равно нулю, это данное заменяется пробелами.

Если в данном, имеющем числовой шаблон, использована фраза BLANK WHEN ZERO (ПРОБЕЛ КОГДА НУЛЬ), катего­рия данного считается числовой редактируемой.

Фраза имя-данного или FILLER (ЗАПОЛНИТЕЛЬ)

Назначение

Имя данного задает имя описываемого данного. Слово FILLER (ЗАПОЛНИТЕЛЬ) задает элементарное данное в логической записи, к которому явно нельзя обращаться.

Общий формат

имя-данного-1

FILLER

имя-данного-1

ЗАПОЛНИТЕЛЬ

ЗАП

Синтаксические правила

В секциях рабочей памяти, коммуникации, связи или в сек­ции файлов имя-данного или слово FILLER (ЗАПОЛНИТЕЛЬ), если одно из них указано, должны непосредственно следовать в статье описания данного за номером уровня.

ЗАП является сокращением слова ЗАПОЛНИТЕЛЬ.

О б щ и е правила

Если эта фраз опущена, то считается, что в описании дан» ного указана фраза FILLER (ЗАПОЛНИТЕЛЬ).

Слово FILLER (ЗАПОЛНИТЕЛЬ) может быть использова­но в качестве имени элементарного данного в записи. К данному FILLER (ЗАПОЛНИТЕЛЬ) запрещено явное обращение.

Тем не менее, слово FILLER (ЗАПОЛНИТЕЛЬ) может исполь­зоваться в качестве условной переменной, что не требует явного обращения к данному, названному FILLER (ЗАПОЛНИТЕЛЬ) (а только к его значению).

Фраза JUSTIFIED (СДВИНУТО)

Назначение

Фраза JUSTIFIED (СДВИНУТО) задает нестандартное рас­положение данных в поле, отведенном для данного.

Общий формат

I RIGHT

JUSTIFIED

I JUST

СДВИНУТО ВПРАВО

Синтаксические правила

Фраза JUSTIFIED (СДВИНУТО) может быть задана толь­ко на уровне элементарного данного.

Фраза JUST является сокращением JUSTIFIED.

Фраза JUSTIFIED (СДВИНУТО) не может быть задана для данного, описанного как числовое, числовое редактируемое или буквенно-цифровое редактируемое.

Фраза JUSTIFIED (СДВИНУТО) не может быть задана для индексного данного.

Общие правила

Если принимающее данное описывается с фразой JUSTI­FIED (СДВИНУТО) и пересылаемое данное по размеру больше принимающего, то отбрасываются самые левые литеры. Если опи­сание принимающего данного имеет JUSTIFIED (СДВИНУТО) и его размер превышает размер пересылаемого данного, то пересы­лаемое значение располагается с выравниванием к самой правой позиции литеры и дополняется слева пробелами.

Если фраза JUSTIFIED (СДВИНУТО) опущена, применя­ются стандартные правила выравнивания элементарных данных (см. ч. 4, п. 4.3.6).

Номер уровня

Назначение

Номер уровня указывает на иерархию данных внутри логиче­ской записи. Кроме того, он используется, чтобы определить ста­тьи для |имен-условий,/ данных рабочей памяти, данных связи,

] а также для указания переименований I .

О б щ и й формат

номер-уровня

Синтаксические правила

Номер-уровня обязательно должен быть первым элементом в каждой статье описания данного.

Статьи описания данных, подчиненных статьям FD (ОФ), СР (ОК) или SD (ОС), должны иметь номера уровней от 01 до 49, 1 66 или 88 I .

Статьи описания данных в секции рабочей памяти и секции связи должны иметь номера уровней от 1 до 49, I 66, | 77 | или | |~~88~[.

О б щ и е правила

Номер уровня 01 определяет первую статью в каждом опи­сании записи.

Отдельным статьям, для которых понятие уровня не имеет смысла, присваиваются специальные номера-уровня:

номер-уровня 77 присваивается для определения несвязан­ных данных рабочей памяти, несвязанных данных, используемых для связи, и может быть использован только в формате 1 статьи описания данных (см. п. 5.3 настоящей части);

номер-уровня 66 определяет статью переименования и может использоваться только в формате 2 статьи описания дан­ных (см. п. 5.3 настоящей части);

номер-уровня 88 присваивается статьям, которые опреде­ляют имена условий, связанных с условными переменными, и может быть использован только в формате 3 статьи описания ■ данных (см. п, 5.3 настоящей части).

Несколько статей уровня 01, подчиненных одному и тому же индикатору уровня, отличному от RD (ОО), неявно переопреде­ляют одно и то же поле памяти.

Фраза OCCURS (ПОВТОРЯЕТСЯ)

Назначение

Фраза OCCURS (ПОВТОРЯЕТСЯ) исключает необходимость отдельных статей описания для повторяющихся данных и дает не­обходимую информацию для индексирования.

Общий формат

Формат 1

OCCURS целое-2 TIMES

[[ ASCENDING 1 I DESCENDING

KEY IS {имя-данного-2} . . .

[INDEXED BY {имя-индекса-1} ... ]

ПОВТОРЯЕТСЯ целое-2 РАЗ

Г__ [ ВОЗРАСТАНИЮ) .ПІГПІД , 1

[П° ( УБЫВАНИЮ l1'-71104* !«<я-ла»ного-2). . .

[ИНДЕКСИРУЕТСЯ {имя-индекса-1}.. . ]

Формат 2

OCCURS целое-1 ТО целое-2 TIMES DEPENDING ON имя-данного-1

[[ ASCENDING )

I DESCENDING | KEY IS

[INDEXED BY {имя-индекса-1} . . . ]

ПОВТОРЯЕТСЯ ОТ целое-1 ДО целое-2 РАЗ 4

(ВОЗРАСТАНИЮ 1 lznv>17ft , ПО УБЫВАНИЮ КЛЮЧА {имя-данного-2} . ..

[ИНДЕКСИРУЕТСЯ {имя-индекса-1} . .. ]

Синтаксические правила

Фраза OCCURS (ПОВТОРЯЕТСЯ) не может быть задана в статьях описания данных с номерами уровней 01, | 66, | 77,

88 и в статьях описания данных, имеющих подчиненными пере­менно повторяющиеся данные.

Имя-данного-1 имя-данного-2 могут быть уточнены.

Имя-данного-2 должно быть либо именем статьи, содер­жащей фразу OCCURS (ПОВТОРЯЕТСЯ), либо именем статьи, подчиненной статье, содержащей фразу OCCURS (ПОВТОРЯ­ЕТСЯ).

Имя-данного-2 должно быть указано без требуемого для него индексирования.

Если указаны целое-1 и целое-2, то целое-1 должно быть больше или равно 0, а целое-2 должно быть больше целого-1.

Имя-данного-1 должно быть описано как целое.

В формате 2 данное, определенное именем-данного-1, не должно располагаться в области памяти, занимаемой данным, статья описания которого содержит фразу OCCURS (ПОВТО­РЯЕТСЯ).

Если фраза OCCURS (ПОВТОРЯЕТСЯ) указана в статье описания данного, включенного в статью описания записи, содер­жащую фразу EXTERNAL (ВНЕШНЕЕ), то имя-данного-1, если оно указано, должно ссылаться на данное, описанное в том же раз­деле данных, со свойством EXTERNAL (ВНЕШНЕЕ).

Если фраза OCCURS (ПОВТОРЯЕТСЯ) указана в статье описания данного, подчиненного статье, содержащей фразу GLO­BAL (ГЛОБАЛЬНОЕ), то имя-данного-1, если оно указано, долж­но быть глобальным именем и должно ссылаться на данное, опи­санное в том же разделе данных.

За статьей описания данного, содержащей фразу OCCURS (ПОВТОРЯЕТСЯ) формата 2, могут следовать толь­ко подчиненные ей статьи описания данных.

Данное, определяемое именем-данного-2, не должно со­держать фразу OCCURS (ПОВТОРЯЕТСЯ) за исключением случая, когда имя-данного-2 является субъектом статьи.

Между статьями описания данных, указанными имена­ми данных в варианте KEY IS (ПО ВОЗРАСТАНИЮ/УБЫВА-

ПО VKRTRAI4HTC> ? КЛЮЧА {имя-данного-2}. ..

[ИНДЕКСИРУЕТСЯ {имя-индекса-1}... ]

5.8.3. Синтаксические правила

Фраза OCCURS (ПОВТОРЯЕТСЯ) не может быть задана в статьях описания данных с номерами уровней 01, | 66, | 77,

88 и в статьях описания данных, имеющих подчиненными пере­менно повторяющиеся данные.

Имя-данного-1 имя-данного-2 могут быть уточнены.

Имя-данного-2 должно быть либо именем статьи, содер­жащей фразу OCCURS (ПОВТОРЯЕТСЯ), либо именем статьи, подчиненной статье, содержащей фразу OCCURS (ПОВТОРЯ­ЕТСЯ).

Имя-данного-2 должно быть указано без требуемого для него индексирования.

Если указаны целое-1 и целое-2, то целое-1 должно быть больше или равно 0, а целое-2 должно быть больше целого-1.

Имя-данного-1 должно быть описано как целое.

В формате 2 данное, определенное именем-данного-1, не должно располагаться в области памяти, занимаемой данным, статья описания которого содержит фразу OCCURS (ПОВТО­РЯЕТСЯ).

Если фраза OCCURS (ПОВТОРЯЕТСЯ) указана в статье описания данного, включенного в статью описания записи, содер­жащую фразу EXTERNAL (ВНЕШНЕЕ), то имя-данного-1, если оно указано, должно ссылаться на данное, описанное в том же раз­деле данных, со свойством EXTERNAL (ВНЕШНЕЕ).

Если фраза OCCURS (ПОВТОРЯЕТСЯ) указана в статье описания данного, подчиненного статье, содержащей фразу GLO­BAL (ГЛОБАЛЬНОЕ), то имя-данного-1, если оно указано, долж­но быть глобальным именем и должно ссылаться на данное, опи­санное в том же разделе данных.

За статьей описания данного, содержащей фразу OCCURS (ПОВТОРЯЕТСЯ) формата 2, могут следовать толь­ко подчиненные ей статьи описания данных.

Данное, определяемое именем-данного-2, не должно со­держать фразу OCCURS (ПОВТОРЯЕТСЯ) за исключением случая, когда имя-данного-2 является субъектом статьи.

Между статьями описания данных, указанными имена­ми данных в варианте KEY IS (ПО ВОЗРАСТАНИЮ/УБЫВА-

; НИЮ КЛЮЧА), и предметом этой статьи не должно быть ста- ; тьи, содержащей фразу OCCURS (ПОВТОРЯЕТСЯ).

Фраза INDEXED BY (ИНДЕКСИРУЕТСЯ) обязательна, (если обращение к предмету этой статьи или статьи, ей подчиненной, 'осуществляется с помощью имени-индекса. Имя-индекса, иденти­фицируемое этой фразой, не определяется в исходной программе, так как его размещение и формат зависят от машины, и, не буду­чи данными, имена индексов не могут быть связаны с какой-либо структурой данных.

Имя-индекса-1 должно быть однозначным.

•5.8.4. Общие правила

Исключая фразу OCCURS (ПОВТОРЯЕТСЯ), все фразы описания данных, относящиеся к данному, описание которого включает фразу OCCURS (ПОВТОРЯЕТСЯ), применяются к каж­дому вхождению описанного данного,

Число вхождений предмета статьи определяется следую­щим образом:

а) в формате 1 значение целого-2 представляет точное число повторений;

: б) в формате 2 текущее значение данного, именуемого име-

нем-данного-1, представляет число повторений.

Формат 2 указывает, что предмет статьи имеет переменное і число повторений. Значение целого-2 представляет максималь- і ное число повторений, а значение целого-1 — минимальное. Это не означает, что размер предмета статьи переменный, а говорит лишь только о том, что переменно число его повторений.

Всякий раз, когда ссылаются на предмет статьи или на под- : чиненное ему данное или на данное, которому подчиняется пред- ! мет статьи, значение данного, определенное именем-данного-1, ' должно принадлежать диапазону от целого-1 до целого-2. Зна- : чения данных, номера вхождений которых превышают значение . имени-данного-1, не определены.

При обращении к групповому данному, содержащему данное, в статье описания которого содержится фраза OCCURS (ПОВТОРЯЕТСЯ) формата 2, используется только часть об­ласти таблицы, определяемая следующим образом:

если данное, определяемое именем-данного-1, не входит в группу, то используется только часть области таблицы, опреде­ляемая значением имени-данного-1 в момент начала обработки;

если данное, определенное именем-данного-1, входит в группу и групповое данное пересылается, то в пересылке будет использоваться только часть области таблицы, определенная значением имени-данного-1 в момент начала работы. Если груп­па есть принимающее данное, то будет использоваться макси­мальная длина группы.

Вариант DESCENDING (ASCENDING) KEY (ПО УБЫ- ВАНИЮ/ВОЗРАСТАНИЮ КЛЮЧА) указывает, что повторя­ющиеся данные упорядочены в возрастающем или убывающем порядке в соответствии со значениями имени-данного-2, имени- данного-3 и т. д. Возрастающий или убывающий порядок опре­деляется в соответствии с правилами сравнения операндов (пп. 6.3.1.1.1 и 6.3.1.1.2 настоящей части). И мена-да иных пере­числяются в порядке уменьшения значимости.

Если формат 2 используется в статье описания записи и соответствующее описание файла или описание сортируемого- сливаемого файла содержит вариант VARYING (ПЕРЕМЕН­НОЕ ЧИСЛО) во фразе RECORD (В ЗАПИСИ), то запись име­ет переменную длину. Если вариант DEPENDING ON (В ЗА­ВИСИМОСТИ ОТ) во фразе RECORD (В ЗАПИСИ) не указан, то значение данного, определяемого именем-данного-1 во фразе OCCURS (ПОВТОРЯЕТСЯ), должно быть установлено на чис­ло записываемых повторений до выполнения любого из опера­торов RELEASE (ПЕРЕДАТЬ), REWRITE (ОБНОВИТЬ) или WRITE (ПИСАТЬ).

Побачили розбіжність з офіційним текстом?

Повідомити про неточність

Напишіть, що саме розходиться з офіційною публікацією. Код документа вкажіть у повідомленні — так ми швидше знайдемо потрібне місце.

Перейти до форми зворотного зв'язку

Дивіться також

Весь розділ →