4.9. Оператор WRITE (ПИСАТЬ)
4.9.1. Назначение
Оператор WRITE (ПИСАТЬ) включает логическую запись в выходной или входной-выходной файл.
4.9.2. Общий формат
WRITE имя-записи-1 [FROM идентификатор-1] | ||
[INVALID KEY повелительный-оператор-1] | ||
[NOT INVALID KEY повелительный-оператор-2] | ||
[END-WRlTE] | ||
ПИСАТЬ имя-записи-1 [ИЗ ПОЛЯ идентификатор-1] | ||
[ПРИ ОШИБКЕ КЛЮЧА повелительный-оператор-1] | ||
[БЕЗ ОШИБКИ КЛЮЧА повелительный-оператор-2] | ||
[КОНЕЦ-ПИСАТЬ] |
4.9.3. Синтаксические правила
(1) Имя-записи-1 и идентификатор-1 не должны относиться к одной и той же области памяти.
(2) Имя-записи-1 является именем логической записи в секции файлов раздела данных и может быть уточнено.
(3) Фраза INVALID KEY (ПРИ ОШИБКЕ КЛЮЧА) должна указываться в операторе WRITE (ПИСАТЬ) для файлов, для которых не определена соответствующая процедура USE AFTER STANDARD EXCEPTION (ИСПОЛЬЗОВАТЬ ПОСЛЕ СТАНДАРТНОЙ ПРОЦЕДУРЫ ОШИБКИ).
4.9.4. Общие правила
(1) Файл, указанный именем-файла, связанным с именем-записи-1, должен быть открыт как выходной, входной-выходной ко времени выполнения этого оператора (см. п.4.4 настоящей части).
(3) Результат выполнения оператора WRITE (ПИСАТЬ) с фразой FROM (ИЗ ПОЛЯ) эквивалентен выполнению следующих операторов в указанном порядке:
а) оператор
MOVE идентификатор-1 ТО имя-записи-1
ПОМЕСТИТЬ идентификатор-1 В имя-записи-1 соответственно правилам, специфицированным в операторе MOVE (ПОМЕСТИТЬ);
б) тот же оператор WRITE (ПИСАТЬ) без фразы FROM (ИЗ ПОЛЯ).
(5) Выполнение оператора WRITE (ПИСАТЬ) не влияет на указатель позиции файла.
(6) Выполнение оператора WRITE (ПИСАТЬ) вызывает обновление состояния ввода-вывода имени-файла, связанного с именем-записи-1 (см. п.1.3.4 настоящей части).
(7) При выполнении оператора WRITE (ПИСАТЬ) логическая запись передается операционной системе.
(8) Количество позиций литер в записи, указанной именем-записи-1, не должно быть больше наибольшего или меньше наименьшего числа литер, допустимого фразой RECORD IS VARYING (В ЗАПИСИ ПЕРЕМЕННОЕ ЧИСЛО ЛИТЕР), связанной с именем-файла, связанного с именем-записи-1. В любом случае выполнение оператора WRITE (ПИСАТЬ) неуспешно, операция записи не происходит, содержимое области записи не меняется, и состояние ввода-вывода файла, связанного с именем-записи-1, принимает значение, указывающее на причину возникновения условия (см. п.1.3.4 настоящей части). |