Сначала требование направляется к оператору, имеющему символическую метку KAN1. Если канал обслуживания с символической меткой KANl занят, то требование направится к следующему каналу, перешагнув через 3 оператора. Если и этот канал будет занят, то требование снова перешагнет через 3 оператора, пока не найдет незанятый канал. В свободном канале обслуживания требование будет обслужено.
Блок TRANSFER обеспечивает переход активного транзакта к новому
блоку:
TRANSFER A, В, C, D
Операнды:
А – режим блока TRANSFER. Описывается ниже. Необязательный операнд. Допустимые значения: Name, PosInteger, ParenthesizedExpression, SNA, SNA'Parameter или Null.
В – номер или метка блока. Номер или имя параметра в режиме Р. Необязательный операнд. Допустимые значения: Null, Name, PosInteger, Parenthesi-zedExpression, SNA или SNA'Parameter.
С – номер или местоположения блока. Приращение в режимах FN или Р. Необязательный операнд. Допустимые значения: Null, Name, PosInteger, ParenthesizedExpression, SNA или SNA'Parameter.
D – приращение номера блока для режима ALL. По умолчанию 1. Необязательный операнд. Допустимые значения: Null, Name, PosInteger, Parenthesi-
zed Expression, SNA или SNA'Parameter.
|
|
Действие:
Блок TRANSFER может функционировать в одном из 9 режимов, каждый из которых имеет различные свойства. Когда транзакт входит в блок TRANSFER, операнд А используется для определения режима, в котором функционирует блок. Значение операндов В и С зависит от режима. Когда не задан операнд, соответствующий местоположению блока, используется блок, следующий за блоком TRANSFER.
Режим безусловной передачи. Когда операнд А опущен, блок TRANSFER функционирует в режиме безусловной передачи. В этом режиме активный транзакт всегда переходит к блоку, заданному в операнде В:
TRANSFER, New_Plaсе
Когда транзакт входит в этот блок TRANSFER, он немедленно направляется в блок с меткой New_Place.
Режим BOTH (ОБА). Когда в операнде А указано BOTH, блок TRANSFER функционирует в режиме BOTH, в данном режиме проверяется блок, указанный в операнде В. Если транзакту отказано во входе в данный блок, проверяется блок, указанный в операнде С. Транзакт направляется в первый блок, в который ему будет позволено войти. Если ни один из блоков не принимает транзакт, он остается в блоке TRANSFER до тех пор, пока не сможет войти в один из них: