Статус документа
Статус документа

ГОСТ 22558-89 (СТ СЭВ 6184-88, ИСО 1989-85) Язык программирования Кобол. Части 8-17

     4.4. Оператор OPEN (ОТКРЫТЬ)

4.4.1. Назначение

Оператор OPEN (ОТКРЫТЬ) подготавливает файл к обработке.

4.4.2. Общий формат

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

(1) Фраза EXTEND (ДОПОЛНЯЕМЫЙ) должна использоваться только для файлов с последовательным доступом.


(2) Файлы, перечисленные в операторе OPEN (ОТКРЫТЬ), могут иметь различную организацию и доступ.

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

(1) Успешное выполнение оператора OPEN (ОТКРЫТЬ) делает файл доступным для обработки и переводит файл в режим открытия.

Успешное выполнение оператора OPEN (ОТКРЫТЬ) связывает файл с именем-файла посредством определителя файла.

Файл доступен, если он физически имеется в наличии и распознан системой управления вводом-выводом. Приведенная ниже табл.1 демонстрирует результаты открытия доступных и недоступных файлов.

Таблица 1

Фраза оператора

Файл доступен

Файл недоступен

INPUT (ВХОДНОЙ)

Нормальное открытие

Открытие неуспешное

INPUT (ВХОДНОЙ) (необязательный файл)

Нормальное открытие

Нормальное открытие; при первом чтении возникает условие конца или условие ошибки ключа

I-O (ВХОДНОЙ-ВЫХОДНОЙ)

Нормальное открытие

Открытие неуспешное

I-O (ВХОДНОЙ-ВЫХОДНОЙ) (необязательный файл)

Нормальное открытие

Открытие приводит к созданию файла

OUTPUT (ВЫХОДНОЙ)

Нормальное открытие; файл не содержит записей

Открытие приводит к созданию файла

EXTEND (ДОПОЛНЯЕМЫЙ)

Нормальное открытие

Открытие неуспешное

EXTEND (ДОПОЛНЯЕМЫЙ) (необязательный файл)

Нормальное открытие

Открытие приводит к созданию файла



(2) Успешное выполнение оператора OPEN (ОТКРЫТЬ) делает область записи доступной программе. Если определитель файла, связанный с именем файла, является внешним, то существует единственная область записи, связанная с определителем, для единицы исполнения.

(3) Если файл не открыт, не может быть выполнен ни один оператор, явно или неявно относящийся к файлу, за исключением оператора MERGE (СЛИТЬ) с фразами USING (ИСПОЛЬЗУЯ) и GIVING (ПОЛУЧАЯ), оператора OPEN (ОТКРЫТЬ) или оператора SORT (СОРТИРОВАТЬ) с фразами USING (ИСПОЛЬЗУЯ) и GIVING (ПОЛУЧАЯ).

(4) Оператор OPEN (ОТКРЫТЬ) должен быть успешно выполнен перед выполнением любого другого допустимого оператора ввода-вывода.

В табл.2 x означает, что указанный оператор, используемый при указанном в строке методе доступа, может использоваться в режиме открытия, заданном в заголовке столбца.

Таблица 2

Метод доступа

Оператор

Режим открытия



для ввода

для вывода

для ввода-вывода

для допол-
нения

Последовательный

READ (ЧИТАТЬ)

x

x

WRITE (ПИСАТЬ)

x

x

REWRITE (ОБНОВИТЬ)

x

START (ПОДВЕСТИ)

x

x

DELETE (УДАЛИТЬ)

x

Произвольный

READ (ЧИТАТЬ)

x

x

WRITE (ПИСАТЬ)

x

x

REWRITE (ОБНОВИТЬ)

x

START (ПОДВЕСТИ)

DELETE (УДАЛИТЬ)

x

Динамический

READ (ЧИТАТЬ)

x

x

WRITE (ПИСАТЬ)

x

x

REWRITE (ОБНОВИТЬ)

x

START (ПОДВЕСТИ)

x

x

DELETE (УДАЛИТЬ)

х