2.11.1. Описание состояний
2.11.1.1. ЯГС может находиться в одном из пяти различных функциональных состояний, приведенных на черт.13:
ГЯЗК (GKCL) - ЯГС закрыто;
ГЯОТ (GKОР) - ЯГС открыто;
CTOT (WSOP) - по крайней мере одна станция открыта;
СТАК (WSAC) - по крайней мере одна станция активна;
СГОТ (SGOP) - сегмент открыт.
Возможные переходы между функциональными состояниями
Черт.13
2.11.1.2. Значение функционального состояния содержится в общей статистической переменной, которой до первого обращения к ЯГС присваивается значение ГЯЗК. Многие обращения к функциям ЯГС допустимы только в определенных функциональных состояниях ЯГС.
2.11.1.3. Общее состояние ЯГС определяется набором переменных состояния, которые обеспечивают полное описание эффекта функций. Набор переменных состояния подразделяется на:
1) функциональное состояние;
2) таблицу состояния ЯГС;
3) таблицу состояния сегмента для каждого существующего сегмента;
4) входную очередь;
5) таблицу состояния станции для каждой открытой станции;
6) таблицу ошибочных состояний ЯГС.
2.11.1.4. При обращении к определенным функциям переменные состояния размещаются в памяти, делаются доступными или исключаются. Когда переменные состояния размещаются в памяти, в них записываются значения по умолчанию. При инициализации таблицы состояния станции некоторые значения по умолчанию берутся из таблицы описания станций, которая содержит данные для каждого типа станций, поддерживаемого данной реализацией ЯГС. Переменные состояния, принадлежащие этим подмножествам, изменяются и опрашиваются путем обращения к функциям ЯГС.
2.11.1.5. Если во время выполнения какой-нибудь функции ЯГС возникает ошибочная ситуация, ЯГС вызывает функцию ОБРАБОТАТЬ ОШИБКУ. Во время выполнения этой функции ЯГС находится в состоянии обработки ошибки. В этом состоянии ЯГС допускает выполнение только справочных функций, функции ЗАРЕГИСТРИРОВАТЬ ОШИБКУ и функции АВАРИЙНО ЗАКРЫТЬ ЯГС и не допускает никаких изменений в таблицах состояния, за исключением таблицы ошибочных состояний.
2.11.2. Справочные функции
2.11.2.1. Справочные функции выдают значение непосредственно либо получают их из различных таблиц. Типы данных этих значений и значения по умолчанию для полей таблиц приведены в разд.4.
2.11.2.2. Справочные функции ЯГС построены таким образом, что при их выполнении ошибки появиться не могут. Справочные функции для значений, которые могут быть логически недоступны, имеют выходной параметр "индикатор ошибки", определяющий, являются ли другие выходные параметры правильными.
Параметр доступности "индикатор ошибки" является целым и в случае, если другие значения не доступны, содержит номер ошибки, который идентифицирует соответствующую ошибку ЯГС. Те же номера ошибок используются и при выполнении других функций ЯГС, поэтому может быть составлен единый список сообщений об ошибках. Если ЯГС не находится в нужном состоянии, то выдается сообщение об ошибке с соответствующим номером, даже если имеются другие причины, из-за которых запрашиваемые значения оказываются недоступными. Если эти значения доступны, выдаваемое значение параметра "индикатор ошибки" будет равно нулю.
2.11.2.3. Если значение параметра "индикатор ошибки" не равно нулю, то значения других выдаваемых параметров зависят от конкретной реализации. В описании каждой справочной функции приводится список значений параметра "индикатор ошибок", которые могут быть выданы этой функцией.