Gate.Open - открыть шлюз
Добавлено: 30 янв 2018, 12:30
Для подачи команды нужно добавить запись в таблицу sarmat.cmd_gate. Входные параметры - заполняемые поля:
При добавлении команды-записи происходит проверка на корректность входных параметров команды. Если параметры команды заданы некорректно, то сразу формируется ошибка добавления raise, запись не добавляется. В raise выводится код и причина невозможности добавления записи. Причины возможные:
- указанного ID шлюза не существует
- шлюз уже открыт
В случае успешного добавления команды возвращаются параметры:
Также будет доступна для чтения таблица sarmat.gate с полями:
- command_type_id - number - код команды - константа = 50
- gate_ids - varchar2(4000) - ID шлюзов, перечисленные через запятую
- user_name - varchar2 - логин пользователя, для которого открывается шлюз (необязательный параметр)
При добавлении команды-записи происходит проверка на корректность входных параметров команды. Если параметры команды заданы некорректно, то сразу формируется ошибка добавления raise, запись не добавляется. В raise выводится код и причина невозможности добавления записи. Причины возможные:
- указанного ID шлюза не существует
- шлюз уже открыт
В случае успешного добавления команды возвращаются параметры:
- ID - number - ID новой команды,
- State - состояние команды:
- =0-команда подана,
- =1-команда принята к рассмотрению,
- =2-ошибка выполнения команды,
- =3-команда запущена к выполнению,
- =4-команда выполнена частично, при этом в полях:
- gate_ids_succes - varchar2 - передаются те шлюзы, которые удалось открыть
- gate_ids_fault - varchar2 - передаются те шлюзы, которые не удалось открыть
- =5 - команда успешно выполнена
Также будет доступна для чтения таблица sarmat.gate с полями:
- ID - уникальный ID шлюза
- Name - название шлюза
- user_name - varchar2 - логин пользователя, занявшего шлюз (если есть)
- State - состояние шлюза с вариантами:
- =0 - закрыт и свободен для работы
- =1 - открыт и свободен для работы
- =3 - закрыт и занят для работы роботом
- =2 - ошибка состояния шлюза