Продолжение табл. 1
ГОСТ 22558—89
р
о
<£>
СП
Соответствие значения имени-данного-6 состоянию отражено в табл. 1.
Условия ключа состояния коммуникации
Табл. 1 указывает на возможные значения имени-данного-10 формата 1, имеии-данного-3 формата 2 и имени-даниого-6 формата 3 при завершении выполнения перечисленных в ней операторов. Символ X означает, что соответствующее значение ключа состоя- ния имеет смысл для данного оператора. [ Символ2 означает эле- I мент уровня 2, недоступный на уровне 1.
Значение ключа ошибки
В табл. 2 показаны возможные значения имени-дапного-4 формата 2 при выполнении перечисленных операторов. Символ X означает, что соответствующее значение ключа ошибки имеет смысл для данного оператора.
I Символ2 означает элемент уровня 2, недоступный на уровне 1.|
Таблица 2
SEND (ПОСЛАТЬ) |
PURGE2 (ОЧИСТИТЬ2) |
ENABLE OUTPUT2 (РАЗРЕШИТЬ ВЫВОД2) |
DISABLE OUTPUT2 (ЗАПРЕТИТЬ ВЫВОД2) |
Значение ключа ошибки |
Комментарий |
X |
X |
у |
х |
0 |
Ошибка не обнаружена |
X |
X |
X |
X |
1 |
Символический адресат не известен |
X |
X |
|
|
2 |
Символический адресат запрещен |
|
X |
|
|
Л |
Ни одна из частей сообщения не имеет символического адресата2 |
|
|
X |
X |
5 |
Символический адресат уже был разрешен/запрещен2 |
X |
|
|
|
6 |
Возможности выходной очереди превышены |
|
|
|
|
7-9 |
Зарезервированы для дальнейшего использования |
|
|
|
|
A—Z |
Условия, определяемые реализацией |
РАЗДЕЛ ПРОЦЕДУР В МОДУЛЕ КОММУНИКАЦИЙ
Оператор ACCEPT MESSAGE COUNT (ПРИНЯТЬ ЧИСЛО СООБЩЕНИЙ)
Назначение
Оператор ACCEPT MESSAGE COUNT (ПРИНЯТЬ ЧИСЛО СООБЩЕНИЙ) делает доступным число полных сообщений в очереди.
Общий формат
ACCEPT имя-коммуникации-1 MESSAGE COUNT
ПРИНЯТЬ ЧИСЛО СООБЩЕНИЙ имя-коммуникации-1
Синтаксические правила
Имя-коммуникации-1 должно относиться к описанию коммуникации для ввода.
Общие правила
Оператор ACCEPT MESSAGE COUNT (ПРИНЯТЬ ЧИСЛО СООБЩЕНИЙ) обновляет счетчик числа сообщений, связанный с имепем-коммуникации-1, для указания числа полных сообщений, существующих в структуре очереди, определяемой содержимым данных, указанных от имени-данного-1 во фразе SYMBOLIC QUEUE (СИМВОЛИЧЕСКАЯ ОЧЕРЕДЬ) | по имя-данно-'' го-4 во фразе SYMBOLIC SUB-QUEUE-3 (СИМВОЛИЧЕСКАЯ ПОДОЧЕРЕДЬ-3) I в области, на которую ссылается имя-коммуникации-1.
Во время выполнения оператора ACCEPT MESSAGE COUNT (ПРИНЯТЬ ЧИСЛО СООБЩЕНИЙ) область, определенная статьей описания коммуникации, должна содержать, по крайней мере, имя символической очереди, которую надо проверить. Проверка условия приводит к обновлению областей, определенных именем-данного-10 во фразе STATUS KEY (КЛЮЧ СОСТОЯНИЯ) и именем-данного-11 во фразе MESSAGE COUNT (ЧИСЛО СООБЩЕНИЙ), связанных с данной статьей описания коммуникаций (см. п. 2.1 настоящей части).
Оператор DISABLE (ЗАПРЕТИТЬ)
Назначение
Оператор DISABLE (ЗАПРЕТИТЬ) извещает систему управления сообщениями о том, что она должна запретить передачу между указанными выходными очередями и адресатами или указанными источниками и входными очередями или между программой и указанным источником или адресатом для ввода- вывода.
Фраза WITH KEY (КЛЮЧ) рассматривается в настоящем стандарте как устаревшая и будет удалена из следующей редакции стандарта.Общий формат
w
имя-коммуникации-1
INPUT [TERMINAL] 1-0 TERMINAL OUTPUT
DISABLE
1 литерал-1
В
ЗАПРЕТИТЬ
ВОД [С ТЕРМИНАЛА] ВВОД-ВЫВОД С ТЕРМИНАЛА гическому рассоединению в кратчайшее время, когда источник или адресат становится неактивным. Выполнение оператора DISABLE (ЗАПРЕТИТЬ) никогда не прерывает передачу сообщения на терминал или с него.Фраза INPUT (ВВОД) без фразы TERMINAL (С ТЕРМИНАЛА) указывает на прекращение логической связи между очередями и подочередями, указанными содержимым от имени- данного-1 во фразе SYMBOLIC QUEUE (СИМВОЛИЧЕСКАЯ ОЧЕРЕДЬ) по имя-данного-4 во фразе SYMBOLIC SUBQUEUE-3 (СИМВОЛИЧЕСКАЯ ПОДОЧЕРЕДЬ-3) области, на которую ссылается имя-коммуникации-1, и всеми источниками, связанными с ними.
Фраза INPUT (ВВОД) с необязательной фразой TERMINAL (С ТЕРМИНАЛА) указывает на прекращение логической связи между источником, определенным значением имени- данного-7 во фразе SYMBOLIC SOURCE (СИМВОЛИЧЕСКИЙ ИСТОЧНИК), и всеми очередями и подочередями.
Фраза 1-0 TERMINAL (ВВОД-ВЫВОД С ТЕРМИНАЛА) указывает на прекращение логической связи между источником (определенным значением имени-данного-3 во фразе SYMBOLIC TERMINAL (СИМВОЛИЧЕСКИЙ ТЕРМИНАЛ), и программой.
Фраза OUTPUT (ВЫВОД) указывает на прекращение логической связи для всех адресатов, определенных значениями каждого из экземпляров имени-данного-5, количество которых определяется значением имени-данного-1 из области, на которую ссылается имя-коммуникации-1.
Литерал-1 или значение идентификатора-1 будет сравниваться с паролем, заданым в системе. Оператор DISABLE (ЗАПРЕТИТЬ) будет выполняться, если только литерал-1 или значение идентификатора-1 совпадает с системным паролем. В противном случае лишь обновляется значение данного STATUS KEY (КЛЮЧ СОСТОЯНИЯ) в области, на которую ссылается имя-коммуникации-1.
Система управления сообщениями должна уметь обрабатывать пароль длиной от 1 до 10 литер включительно.
Оператор ENABLE (РАЗРЕШИТЬ)
Назначение
Оператор ENABLE (РАЗРЕШИТЬ) сообщает системе управления сообщениями о разрешении обмена данными между очередями для вывода и адресатами или заданными источниками и очередями для ввода или между программой и одним заданным источником или адресатом для ввода-вывода. Фраза WITH KEY (КЛЮЧ) рассматривается в настоящем стандарте как устаревший элемент и будет удалена в следующей редакции
.3.3.2. Общий формат
|
INPUT [TERMINAL] ] |
ENABLE |
1-0 TERMINAL [имя-коммуникации-1 OUTPUT |
(WITH KEY J идентиФикат0Р-1 1’
і [литерал-1 J
[ВВОД [С ТЕРМИНАЛА]
РАЗРЕШИТЬ ВВОД-ВЫВОД С ТЕРМИНАЛА
ВЫВОД
имя-коммуникации-1
КЛЮЧ I идентиФикат0Р'1
I литерал-1
Синтаксические правила
Имя-коммуникации-1 должно относиться к описанию коммуникации для ввода, если задана фраза INPUT (ВВОД).
Имя-коммуникации-1 должно относиться к описанию коммуникации для ввода-вывода, если задана фраза 1-0 TERMINAL (ВВОД-ВЫВОД С ТЕРМИНАЛА).
Имя-коммуникации-1 должно относиться к описанию коммуникации для вывода, если задана фраза OUTPUT (ВЫВОД).
Литерал-1 и значение идентификатора-1 должны быть определены как буквенно-цифровые.
Общие правила
Оператор ENABLE (РАЗРЕШИТЬ) обеспечивает логическое соединение системы управления сообщениями с заданными источниками или адресатами. Если это логическое соединение уже имеет место или обеспечивается какими-либо другими средствами, внешними по отношению к этой программе, то оператор ENABLE (РАЗРЕШИТЬ) в ней не требуется.
Никаких действий не производится, если оператор ENABLE (РАЗРЕШИТЬ) выполняется с указанным источником или адресатом, которые уже соединены, за исключением того, что значение ключа состояния указывает на это условие. Оператор ENABLE (РАЗРЕШИТЬ) не влияет на логический путь передачи данных между программой на Коболе и системой управления сообщениями.
Фраза INPUT (ВВОД) без необязательной фразы TERMINAL (С ТЕРМИНАЛА) указывает на активизацию логического пути между очередью и подочередями, определенными значением от имени-даиного-1 во фразе SYMBOLIC QUEUE (СИМВОЛИЧЕСКАЯ ОЧЕРЕДЬ) по имя-данного-4 во фразе SYMBOLIC SUB-QUEUE-3 (СИМВОЛИЧЕСКАЯ ПОДОЧЕРЕДЬ-3), из области, на которую ссылается имя-коммуникации-1, и всеми источниками, связанными с ними.
Фраза INPUT (ВВОД) с необязательной фразой TERMINAL (С ТЕРМИНАЛА) указывает на активизацию логического пути между источником, определенным значением имепн- данного-7, во фразе SYMBOLIC SOURCE (СИМВОЛИЧЕСКИЙ ИСТОЧНИК), и всеми ему соответствующими очередями и подочередями.
Фраза 1-0 TERMINAL (ВВОД-ВЫВОД С ТЕРМИНАЛА) указывает на активизацию логического пути между источником, определенным значением имени-данного-3 во фразе SYMBOLIC TERMINAL (СИМВОЛИЧЕСКИЙ ТЕРМИНАЛ), и программой.
Фраза OUTPUT (ВЫВОД) указывает на активизацию логических путей для всех адресатов, определенных значениями каждого из экземпляров имени-данного-5, количество которых определяется значением имени-данного-1 из области, на которую ссылается имя-коммуникации-1.
Литерал-1 или значение идентификатора-1 сравнивается с паролем, заданным в системе. Если литерал-1 или значение идентификатора-1 совпадает с этим паролем, оператор ENABLE (РАЗРЕШИТЬ) будет выполнен. В противном случае лишь об; новляется значение данного STATUS KEY (КЛЮЧ СОСТОЯНИЯ), связанного с именем-коммуникации-1.
Система управления сообщениями должна уметь обрабатывать пароль длиной от 1 до 10 литер включительно.
Оператор PURGE (ОЧИСТИТЬ)
Назначение
Оператор PURGE (ОЧИСТИТЬ) исключает из системы управления сообщениями незаконченное сообщение, переданное одним или более оператором SEND (ПОСЛАТЬ).
Общий формат
, PURGE имя-коммуникации-1
ОЧИСТИТЬ имя-коммуникации-1
Синтаксические правила
Имя-коммуникации-1 должно относиться к статье CD (ОК) для вывода или к статье CD (ОК) для ввода-вывода.
Общие правила
Выполнение оператора PURGE (ОЧИСТИТЬ) указывает системе управления сообщениями уничтожить все неоконченные сообщения, ожидающие передачи адресатам, определенным в статье CD (ОК) для имени-коммуникации-1
.
Сообщение, связанное с ЕМІ (ИКЩ) или EGI (ИКГ), не затрагивается при выполнении оператора PURGE (ОЧИСТИТЬ).
Значение ключа состояния и ключа ошибки, если они используются, из области, на которую ссылается имя-коммуника- ции-1, обновляются системой управления сообщениями (см. п. 2.2 настоящей части).
Оператор RECEIVE (ПОЛУЧИТЬ)
Назначение
О
или сегмент сообщения
ператор RECEIVE (ПОЛУЧИТЬ) делает доступным сообще-с
ние
оответствующую информациюо них.
Общий формат
(MESSAGE
INTO
SEGMENT
RECEIVE имя-коммуникации-1
идентификатор-1
(N0 РАТА повелительный-оператор-1 ]
[WITH DATA повелительный-оператор-2]
[END-RECEIVE]
имя-коммуникации-1
СЕГМЕНТ
СООБЩЕНИЕ
ПОЛУЧИТЬ
В идентификатор-1
[НЕТ ДАННЫХ повелительный-оператор-1]
[ЕСТЬ ДАННЫЕ повелительный-оператор-2]
[КОНЕЦ-ПОЛУЧИТЬ]
Синтаксические правила
Имя-коммуникации-1 должно относиться к описанию коммуникации для ввода [ или для ввода-вывода .
Общие правила
Если имя-коммуникации-1 относится к описанию коммуникации для ввода, то значения данных, указанных от имени-данно- го-1 во фразе SYMBOLIC QUEUE (СИМВОЛИЧЕСКАЯ ОЧЕРЕДЬ) по имя-данного-4 во фразе SYMBOLIC SUB-QUEUE-3 | I (СИМВОЛИЧЕСКАЯ ПОД ОЧЕРЕДЬ-3), | из области, на которую ссылается имя-коммуникации-1, определяют структуру очереди, содержащей сообщение (см. п. 2.2 настоящей части)
.Если имя-коммуникации-1 относится к описанию коммуникации для ввода-вывода, то значение данного, указанного именем- данного-3 во фразе SYMBOLIC TERMINAL (СИМВОЛИЧЕСКИЙ ТЕРМИНАЛ), связанного с именем-коммуникации-1, определяет источник сообщения.
,
(3) Сообщение
сегмент сообщения либо часть сообщенияI или сегмента передается в область, указанную идентификатором-!, с выравниванием влево; дополнение сообщения до размера области пробелами не производится.
Если при выполнении оператора RECEIVE (ПОЛУЧИТЬ) система управления сообщениями делает данные доступными в области, определенной идентификатором-1, фраза NO DATA (НЕТ ДАННЫХ) игнорируется и управление передается в конец оператора RECEIVE (ПОЛУЧИТЬ) или повелителыюму-оператору-2, если задана фраза WITH DATA (ЕСТЬ ДАННЫЕ). Если управление передается повелителыюму-оператору-2, то выполнение продолжается согласно правилам, определенным для каждого оператора повелительного-оператора-2. Если это оператор ветвления процедур или условный оператор который явно передает управление, то передача управления осуществляется согласно правилам для-используемых операторов; в противном случае после выполнения повелителыюго-оператора-2 управление передается в конец оператора RECEIVE (ПОЛУЧИТЬ).
Если при выполнении оператора RECEIVE (ПОЛУЧИТЬ) система управления сообщениями не делает данные доступными .в области, определенной идентификатором-1, выполняется одно из трех перечисленных ниже действий. Условия, при которых данные недоступны, определяются реализацией.