## : Switch <переменная>
case <Значение 1>:
## : Действие 1
## : Действие 2
...
case <Значение 2>:
## : Действие 4
## : Действие 5
...
...
not <Значение i>:
## : Действие 6
## : Действие 7
...
greater <Значение> :
## : Действие 11
...
less <Значение> :
## : Действие 12
...
default: ; Выполняется в ином случае
## : Действие 9
Условный переход в ходе выполнения скрипта в зависимости от значения заданной переменной.
Switch <<Ok>>
case 1:
01: Send <unit>
Kernel.Host.CreateInstanceAnswer : 1
(...)
02: Receive <unit>
Kernel.InterceptedMessage : 1
(...)
03: Receive <unit>
Kernel.InterceptedMessage : 1
(...)
case 2:
01: Send <unit>
Kernel.Host.CreateInstanceAnswer : 1
(...)
case 3:
01: Send <unit>
Kernel.Host.Fail : 1
Результат:
В примере при Ok=1 выполняется последовательность из трёх команд, а при значении Ok=3 только отправляется сообщение об ошибке.
10: Switch <<Driving>>
case False:
10: Call <ActivateReaders>
(...)
case True:
10: Call <ActivateReadersDriving>
(...)
Результат:
В зависимости от значения переменной Driving будет вызываться одна из двух функций: ActivateReaders или ActivateReadersDriving.