|
<< Click to Display Table of Contents >> Navigation: API MasterSCADA 4D > Подключение к исполнительной системе по JSON > HTTP API MasterPLC > Работа с расписанием BACnet > /Methods/GetBacnetSchedules |
Выполняет поиск экземпляров функциональных блоков с типом ScheduleBACnet в указанном объекте или во всём проекте. В ответ возвращаются ссылки (ID и пути) на переменные внутри найденных расписаний (например, настройки недельного расписания и исключений).
HTTP: POST /Methods/GetBacnetSchedules
{
"sessionId": 1234,
"itemId": 111,
"path": ""
}
Поле |
Тип |
Обязат. |
По умолчанию |
Описание |
|---|---|---|---|---|
sessionId |
int |
Нет |
|
Нужен, если сессия не передана заголовком. |
itemId |
int64 |
Нет |
0 |
Идентификатор узла (объекта), внутри которого нужно искать расписания. Если 0, поиск начнется от корня проекта (или по пути path). |
path |
string |
Нет |
"" |
Строковый путь внутри объекта (или от корня, если itemId равен 0). |
{
"schedules": [
{
"name": "Расписание 1",
"id": "333",
"EnumTypeRef": "MyCustomEnum",
"WeeklyScheduleInput": {
"itemId": 222,
"path": "WeeklyScheduleInput",
"taskId": 0
},
"WeeklyScheduleOutput": {
"itemId": 333,
"path": "WeeklyScheduleOutput",
"taskId": 0
},
"ExceptionInput": {
"itemId": 2221,
"path": "ExceptionInput",
"taskId": 0
},
"ExceptionOutput": {
"itemId": 3331,
"path": "ExceptionOutput",
"taskId": 0
}
}
],
"serverTime": 1710000000123,
"code": 0
}
Поле |
Тип |
Условие |
Описание |
|---|---|---|---|
schedules |
array |
Всегда |
Массив найденных функциональных блоков расписаний. |
schedules[].name |
string |
Всегда |
Имя функционального блока ScheduleBACnet (например, для отображения в HMI). |
schedules[].id |
string |
Всегда |
Строковый идентификатор расписания (может быть в формате ID или ID.Path). |
schedules[].EnumTypeRef |
string |
При наличии |
Имя ST-типа (перечисления), если внутри расписания задан параметр EnumTypeRef. |
schedules[].<ИмяПараметра> |
object |
Для каждой переменной ФБ |
Объект-ссылка на переменную внутри расписания (например: WeeklyScheduleInput, ExceptionOutput и др.). Исключает параметр EnumTypeRef. (В старой справке ошибочно упоминались имена `readItemSchedule`, `writeItemSchedule` — фактически используются реальные имена параметров блока). |
...itemId |
int64 |
Всегда |
Базовый itemId переменной. |
...path |
string |
Если ФБ имеет путь |
Полный строковый путь к параметру. Если функциональный блок имеет свой путь, то он объединяется с именем параметра через точку. Если базовый path пуст, то поле path не возвращается. |
...taskId |
int64 |
Всегда |
Индекс задачи, в которой исполняется данное расписание. |
•Поиск выполняется рекурсивно по всем дочерним узлам (объектам, папкам). В список попадают только функциональные блоки с системным именем типа ScheduleBACnet.
•Если объект с указанным itemId или path не найден в дереве проекта, возвращается код ошибки 2151546880 (OpcUa_BadNotFound), массив schedules не формируется.