SYMBOLIC QUEUE
омментарийMESSAGE DATE MESSAGE TIME SYMBOLIC SOURCE TEXT LENGTH END KEY STATUS KEY MESSAGE COUNT
Комментарий
СИМВОЛИЧЕСКАЯ ОЧЕРЕДЬ
СИМВОЛИЧЕСКАЯ ПОДОЧЕРЕДЬ-1
СИМВОЛИЧЕСКАЯ ПОДОЧЕРЕДЬ-2
СИМВОЛИЧЕСКАЯ ПОДОЧЕРЕДЬ-3
ДАТА СООБЩЕНИЯК
Неявное описание 02 имя-данного-6
ШАБЛОН 9(8).
02 имя-данного-7
ШАБЛОН Х(12) 02 имя-данного-8
ШАБЛОН 9(4).
02 имя-данного-9 ШАБЛОН X.
02 имя-данного-10 ШАБЛОН XX.
02 имя-данного-11
ШАБЛОН 9(6).
омментарийВРЕМЯ СООБЩЕНИЯ
СИМВОЛИЧЕСКИЙ ИСТОЧНИК
ДЛИНА ТЕКСТА
КЛЮЧ КОНЦА
ключ СОСТОЯНИЯ
Ч
(3) Когда имени-данного-4
ИСЛО СООБЩЕНИЙзначения имени-данного-2, имени-данного-3, не будут использоваться, они должны пред
ставлять собой пробелы.
Имя-данного-1 , имя-данного-2, имя-данного-3 и имя- | I данного-4 содержат символические имена, обозначающие со
о
ны быть предварительно определены для системы управления сообщениями.
Оператор RECEIVE (ПОЛУЧИТЬ) вызывает последова- тельное получение следующего сообщения I или его части из очереди, как указано фразами CD (ОК).
Во время выполнения оператора RECEIVE (ПОЛУЧИТЬ),, область CD (ОК) для ввода должна содержать в качестве значения имени-данного-1 имя символической очереди. Элементы данных имя-данного-2, имя-данного-3 и имя-данного-4 могут содержать имена символических подочередей или пробелы.
Когда задан некоторый уровень структуры очереди, должны быть заданы и все более высокие уровни. Если заданы не все уровни иерархии очереди, то система управления сообщениями определяет следующее сообщение или его часть, которое доступно в очереди и (или) подочереди, указанной CD (ОК) для ввода.
После выполнения оператора RECEIVE (ПОЛУЧИТЬ) значения имени-данного-I по имя-данного-4 будут представлять символические имена всех уровней структуры очереди.
Если программа обработки сообщения вызывается системой управления сообщениями, символические имена уровней структуры очереди, связанной с этой обработкой, помещаются в имя-данного-1 по имя-данного-4, определенные в статье CD (ОК) с фразой INITIAL (НАЧАЛЬНОГО). Во всех остальных случаях запуска программ значения имени-данного-1 по имя- данного-4, связанные с такой статьей, представляются пробелами.
Засылка пробелов или символических имен заканчивается до выполнения первого оператора раздела процедур.
Выполнение последующего оператора RECEIVE (ПОЛУЧИТЬ) для тех же значений имени-данного-1 по имя-данного-4 приводит к получению того же сообщения, которое вызвало запуск программы. Только в этот момент будет обновлена оставшаяся часть области связи.
Если система управления сообщениями пытается вызвать программу, не содержащую фразу INITIAL (НАЧАЛЬНОГО) в статье CD (ОК), результат не определен.
При выполнении оператора RECEIVE (ПОЛУЧИТЬ) система управления сообщениями помещает дату, когда было распознано, что сообщение завершено, в форме ТГММДД’ (год, месяц, день) в имя-данного-5. Значение имени-данного-5 обновляется системой управления сообщениями только во время выполнения оператора RECEIVE (ПОЛУЧИТЬ).
При выполнении оператора RECEIVE (ПОЛУЧИТЬ) система управления сообщениями помещает значение момента времени завершения сообщения в форме ’ЧЧММССХХ’ (часы, минуты, секунды, сотые доли секунды) в имя-данного-6. Значение име- ни-данного-6 обновляется системой управления сообщениями только во время выполнения оператора RECEIVE (ПОЛУЧИТЬ).
При выполнении оператора RECEIVE (ПОЛУЧИТЬ) система управления сообщениями помещает в имя-данного-7 символическое имя терминала, который является источником передаваемого сообщения.
Это символическое имя должно удовлетворять правилам образования системных имен.
Однако, если символическое имя терминала неизвестно системе управления сообщениями, имя-данного-7 будет содержать пробелы.
Значением имени-данного-8 система управления сообщениями указывает число позиций литер, заполненных в результате выполнения оператора RECEIVE (ПОЛУЧИТЬ).
Значение имени-данного-9 устанавливается системой управления сообщениями во время выполнения оператора RECEIVE (ПОЛУЧИТЬ) по следующим правилам:
для оператора RECEIVE MESSAGE (ПОЛУЧИТЬ СООБЩЕНИЕ):
если обнаружен конец группы, то значение имени-данного-9 устанавливается равным 3;
если обнаружен конец сообщения, то значение имени-данного-9 устанавливается равным 2;
если передается часть сообщения, то значение имени-данного-9 устанавливается равным нулю;
для оператора RECEIVE SEGMENT (ПОЛУЧИТЬ СЕГМЕНТ):
Если обнаружен конец группы, то значение имени-данного-9 устанавливается равным 3;
если обнаружен конец сообщения, то значение имени-данного-9 устанавливается равным 2;
если обнаружен конец сегмента, то значение имени-данного-9 устанавливается равным 1;
если передается только часть сообщения, то значение имени-данного-9 устанавливается равным 0;
если одновременно выполняются несколько перечисленных условий, то значение имени-данного-9 определяется первым выполненным условием в перечисленном выше порядке.
Значение имени-данного-10 указывает состояние выполненных перед этим операторов RECEIVE (ПОЛУЧИТЬ) ACCEPT MESSAGE COUNT (ПРИНЯТЬ ЧИСЛО СООБЩЕНИЙ), ENABLE INPUT (РАЗРЕШИТЬ ВВОД), DISABLE INPUT I (ЗАПРЕТИТЬ ВВОД) |7
Соответствие значения имени-данного-1 состоянию выполнения отражено в табл. 1.
Значение имени-данного-11 указывает число сообщений, имеющихся в очереди , подочереди-1 и т. д . Система управления сообщениями обновляет это значение при выполнении оператора ACCEPT MESSAGE COUNT (ПРИНЯТЬ ЧИСЛО СООБЩЕНИЙ).
Формат 2
Информация, определенная статьей CD (ОК) для вывода, не посылается на терминал. Она служит для связи между системой управления сообщениями и программой и задает информацию о сообщении, которое обрабатывается.
На уровне 1 для каждого CD (ОК) для вывода выделяется непрерывная область записи из 23 литер. ) На уровне 2 для каждого CD (ОК) для вывода выделяется непрерывная область записи длиной (10 плюс (13 умножить на целое-1)) литер. | неявное описание этой области записи следующее:
фраза DESTINATION COUNT (ЧИСЛО АДРЕСАТОВ) определяет имя-данного-1 как имя данного, неявно описанного как целое без знака и занимающего в записи позиции 1—4;
фраза TEXT LENGTH (ДЛИНА ТЕКСТА) определяет имя- данного-2 как имя данного, неявно описанного как целое из 4 цифр без знака и занимающего в записи позиции 5—8;
фраза STATUS KEY (КЛЮЧ СОСТОЯНИЯ) определяет имя-данного-3 как элементарное буквенно-цифровое данное из 2 литер, занимающее в записи позиции 9, 10;
позиции литер 11—23 и каждый набор по 13 литер за ними образуют таблицу элементов со следующим описанием:
фраза ERROR KEY (КЛЮЧ ОШИБКИ) определяет имя- данного-4 как имя элементарного буквенно-цифрового данного из одной литеры;
фраза SYMBOLIC DESTINATION (СИМВОЛИЧЕСКИЙ АДРЕСАТ) определяет имя-данного-5 как имя элементарного буквенно-цифрового данного из 12 литер.
Использование всех этих фраз определяет запись, неявное описание которой приведено ниже.Неявное описание 01 имя-данного-0.
02 имя-данного-1 PICTURE 9(4).
02 имя-данного-2 PICTURE 9(4).
02 имя-данного-3 PICTURE XX.
02 имя-данного OCCURS целое-1 TIMES
03 имя-данного-4 PICTURE X.
03 имя-данного-5 PICTURE Х(12).
Неявное описание
01 имя-данного-8.
02 имя-данного-1 ШАБЛОН 9(4).
02 имя-данного-2 ШАБЛОН 9(4).
02 имя-данного-3 ШАБЛОН XX.
02 имя-данного ) ПОВТОРЯЕТСЯ |
[ целое-1 РАЗ I
03 имя-данного-4 ШАБЛОН X.
03 имя-данного-5 ШАБЛОН Х(12).
Комментарий
DESTINATION COUNT TEXT LENGTH STATUS KEY DESTINATION TABLE ERROR KEY
SYMBOLIC DESTINATION
Комментарий
ЧИСЛО АДРЕСАТОВ
ДЛИНА ТЕКСТА
КЛЮЧ СОСТОЯНИЯ
ТАБЛИЦА АДРЕСАТОВ
КЛЮЧ ОШИБКИ
С
ГОСТ 22558—89
ИМВОЛИЧЕСКИЙ АДРЕСАТПри выполнении операторов SEND (ПОСЛАТЬ), PURGE (ОЧИСТИТЬ), ENABLE OUTPUT (РАЗРЕШИТЬ ВЫ- I ВОД), DISABLE OUTPUT (ЗАПРЕТИТЬ ВЫВОД) Г значение имени-данного-1 указывает системе управления сообщениями число символических адресатов, которые надо использовать из области, определяемой именем-данного-5.Система управления сообщениями находит первый символический адресат в первом элементе таблицы адресатов, определенной именем-данного-5 |; следующий символический адресат — в следующем элементе этой таблицы и т. д. до элемента номер которого совпадает со значением имени-данного-1.
Если при выполнении оператора SEND (ПОСЛАТЬ), | PURGE (ОЧИСТИТЬ), ENABLE OUTPUT (РАЗРЕШИТЬ ВЫВОД), DISABLE OUTPUT (ЗАПРЕТИТЬ ВЫВОД) |"Дїїа~- чение имени-данного-1 находится вне диапазона чисел от 1 I до целого-1 , устанавливается ключ ошибки и выполнение оператора прекращается.
Пользователь должен обеспечить, чтобы значение имени- данного-1 было допустимым в момент выполнения операторов SEND (ПОСЛАТЬ) | , PURGE (ОЧИСТИТЬ), DISABLE OUTPUT (ЗАПРЕТИТЬ ВЫВОД), ENABLE OUTPUT (РАЗ- РЕШИТЬ ВЫВОД) |7
Во время выполнения оператора SEND (ПОСЛАТЬ) система управления сообщениями рассматривает значение имени-дан- ного-2 как число крайних левых позиций литер в поле, определяемом идентификатором в операторе SEND (ПОСЛАТЬ), из которого надо передавать данные (п. 3.6 настоящей части).
Каждое вхождение имени-данного-5 содержит сим волический адресат, предварительно сообщенный системе управления сообщениями. Имена символических адресатов должны соответствовать правилам образования системных имен.
Значение имени-данного-3 указывает состояние выполнения оператора SEND (ПОСЛАТЬ) PURGE (ОЧИСТИТЬ), ENABLE OUTPUT (РАЗРЕШИТЬ ВЫВОД), DISABLE OUTPUT (ЗАПРЕТИТЬ ВЫВОД) | Соответствие значения имени- данного-3 состоянию выполнения операторов приведено в табл. 1.
Если при выполнении операторов | DISABLE OUTPUT f (ЗАПРЕТИТЬ ВЫВОД), ENABLE OUTPUT (РАЗРЕШИТЬ] ВЫВОД), PURGE (ОЧИСТИТЬ), | SEND (ПОСЛАТЬ) система управления сообщениями определяет, что имеет место ошибка, значения имени-данного-3 и | всех вхождений I имени-данного-4 .обновляются I вплоть до и включая вхождение, указанное зна- | ' чением имени-данного-1 |
Соответствие между значением данного имя-данного-4 и ключом ошибки определено в табл. 2.
Формат 3
Информация, определенная статьей CD (ОК) для ввода- вывода служит для связи между системой управления сообщениями и программой и задает информацию о сообщении, которое обрабатывается. Эта информация не передается с терминала как часть сообщения.
Для каждого CD (ОК) для ввода-вывода выделяется непрерывная область записи из 33 литер. Эта область записи определяется для системы управления сообщениями следующим образом:
фраза MESSAGE DATE (ДАТА СООБЩЕНИЯ) определяет имя-данного-1 как имя данного, неявно описанного как целое из 6 цифр без знака, занимающего в записи позиции 1—6;
фраза MESSAGE TIME (ВРЕМЯ СООБЩЕНИЯ) определяет имя-данного-2 как имя данного, неявно описанного как целое из 8 цифр без знака, занимающего в записи позиции литер 7—14;
фраза SYMBOLIC TERMINAL (СИМВОЛИЧЕСКИЙ ТЕРМИНАЛ) определяет имя-данного-3 как имя элементарного буквенно-цифрового данного, состоящего из 12 литер и занимающего в записи позиции литер 15—26;
фраза TEXT LENGTH (ДЛИНА ТЕКСТА) определяет имя- данного-4 как имя элементарного данного, неявно описанного как целое из 4 цифр без знака, занимающего в записи позиции литер 27—30;
фраза END KEY (КЛЮЧ КОНЦА) определяет имя-данно- го-5 как имя элементарного буквенно-цифрового данного из 1 литеры и занимающего в записи позицию 31;
фраза STATUS KEY (КЛЮЧ СОСТОЯНИЯ) определяет имя-данного-6 как имя элементарного буквенно-цифрового данного из 2 литер и занимающего в записи позиции литер 32, 33.
Вместо указанных выше фраз могут быть использованы име- на-данных, которые, взятые по порядку, соответствуют именам- данных, определенным этими фразами.
В любом случае предполагается неявное описание записи, которое представлено ниже.8 Неявное описание е
01 нмя-данного-0.
02 имя-дайного-1 PICTURE 9(6).
02 имя-данного-2 PICTURE 9(8).
02 имя-данного-3 PICTURE Х(12).
02 имя-данного-4 PICTURE 9(4).
02 имя-данного-5 PICTURE X.
02 имя-данного-6 PICTURE XX.
01 имя-данного-0.
02 имя-данного-1 ШАБЛОН 9(6).
02 имя-данного-2 ШАБЛОН 9(8).
02 имя-данного-3 ШАБЛОН Х(12).
02 имя-данного-4 ШАБЛОН 9(4).
02 имя-данного-5 ЩАБЛОН X.
02 имя-данного-6 ШАБЛОН XX.. Комментарий |
г> і |
M
ГОСТ 22558—89
ESSAGE DATEMESSAGE TIME
SYMBOLIC TERMINAL
TEXT LENGTH
END KEY
STATUS KEY
ДАТА СООБЩЕНИЯ
ВРЕМЯ СООБЩЕНИЯ
СИМВОЛИЧЕСКИЙ ТЕРМИНАЛ
ДЛИНА ТЕКСТА
КЛЮЧ КОНЦА
ключ состоянияЕсли программа обработки сообщений вызывается системой управления сообщениями, то выполнение первого оператора RECEIVE (ПОЛУЧИТЬ) для статьи CD (ОК) для ввода- вывода с фразой INITIAL (НАЧАЛЬНОГО) приводит к получению того же сообщения, которое вызвало запуск программы.
Имя-данного-1 имеет формат ТГММДД’ (год, месяц, день). Его значение представляет дату, когда было распознано завершение сообщения системой управления сообщениями.
Значение имени-данного-1 обновляется системой управления сообщениями только во время выполнения оператора RECEIVE (ПОЛУЧИТЬ).
Имя-данного-2 имеет формат ’ЧЧММССДД’ (часы, минуты, секунды, сотые доли секунды) и его значение представляет время, когда системой управления сообщениями было распознано завершение сообщения.