Browse
Выполнить запрос узлов источника по указанным параметрам.
uint4 Browse(string parameters)
|
Параметры
|
Параметр
|
Тип
|
Описание
|
|
parameters
|
string
|
JSON-строка, содержащая параметры запроса, такие как уровень, корневой узел, фильтры и необходимые столбцы для отображения
|
Формат параметров следующий:
{
"level": "children",
"rootTag": "RootNode",
"filter": {
"name": "Signal*"
},
"columns": [
{
"id": "nodeName",
"type": "attribute",
"parameters": {
"id": "name"
}
},
{
"id": "nodeId",
"type": "attribute",
"parameters": {
"id": "id"
}
}
]
}
|
level - уровень выполнения запроса. Возможные значения:
• children — только дочерние узлы (по умолчанию).
• descendants — все потомки узла.
rootTag - полный путь к корневому узлу для выполнения запроса. По умолчанию — пустая строка, что указывает на выполнение запроса относительно корня.
filter - условие фильтрации результатов в формате wildcard filter. Пример: "name": "Signal*" (фильтр для поиска узлов, начинающихся с sensor).
columns - список колонок, которые будут возвращены в результате запроса. Для каждой колонки нужно указать:
• id — идентификатор столбца.
• type — тип данных, которые будут включены в колонку. Возможные значения:
attribute - возвращает значение атрибута узла источника. Например, имя узла или его идентификатор.
property - возвращает значение пользовательского свойства узла источника.
custom - используется для задания пользователем дополнительных столбцов.
• parameters — параметры, необходимые для получения данных в зависимости от типа колонки. Содержит различную информацию в зависимости от значения параметра type:
Для типа attribute:
• id - идентификатор атрибута узла, данные которого необходимо получить.
Для типа property:
• number- номер пользовательского свойства, значение которого необходимо получить.
Для типа custom:
• type - тип данных для пользовательского столбца.
Возможные значения:
bool - Логическое значение
int1 - Целое число (1 байт)
int2 - Целое число (2 байта)
int4 - Целое число (4 байта)
int8 - Целое число (8 байт)
uint1 - Беззнаковое целое число (1 байт)
uint2 - Беззнаковое целое число (2 байта)
uint4 - Беззнаковое целое число (4 байта)
uint8 - Беззнаковое целое число (8 байт)
float - Число с плавающей точкой
double - Число с двойной точкой
string - Строка
timestamp - Метка времени
variant - Универсальный тип данных
void - Пустой тип
Возвращаемое значение
Возвращает уникальный идентификатор запроса (uint4), который можно использовать для отслеживания выполнения запроса.
Пример
Запросить дочерние узлы с колонками name и id с использованием языка JavaScript:
// Создаем объект запроса
var requestParams = {
"level": "children",
"rootTag": "RootNode",
"columns": [
{
"id": "nodeName",
"type": "attribute",
"parameters": {
"id": "name"
}
},
{
"id": "nodeId",
"type": "attribute",
"parameters": {
"id": "id"
}
}
]
};
// Преобразуем объект в строку JSON
var requestString = JSON.stringify(requestParams);
// Вызываем метод Browse с параметром
Tree_1.TreeDataSource_1.ApSourceBrowser_1.Browse(requestString);
|
Запросить все узлы начинающиеся с sensor с использованием языка JavaScript:
// Создаем объект запроса
var requestParams = {
"level": "descendants",
"filter": {
"name": "Sensor*"
},
"columns": [
{
"id": "nodeName",
"type": "attribute",
"parameters": {
"id": "name"
}
}
]
};
// Преобразуем объект в строку JSON
var requestString = JSON.stringify(requestParams);
// Вызываем метод Browse с параметром
Tree_1.TreeDataSource_1.ApSourceBrowser_1.Browse(requestString);
|
