Перейти к содержанию

ETraceSet.GetTracesByTag

ETraceSet.GetTracesByTag1

ETraceSet.GetTracesByTag - возвращает массив объектов типа ETrace из коллекции трейсов и лимитов ETraceSet по заданному идентификатору.

Свойства

Входной аргумент Тип аргумента Тип переменной Описание
ETraceSet Variable ETraceSet Объект типа ETraceSet
Tag Variable String Идентификатор запрашиваемых объектов типа ETrace во входной переменной ETraceSet
SearchTagPart Variable Boolean Включает/выключает поиск объектов типа ETrace во входной переменной ETraceSet по условию частичного совпадения указанного идентификатора Tag и идентификаторов объектов типа ETrace
Выходной аргумент Тип аргумента Тип переменной Описание
Traces Variable ETrace[] Массив объектов типа ETrace, которые хранятся в ETraceSet и имеют запрашиваемый идентификатор

Пример

Рассмотрим работу блока на примере простой программы, которая обеспечивает считывание объектов типа ETrace с указанным идентификатором из коллекции трейсов и лимитов ETraceSet.

ETraceSet.GetTracesByTag2

Создадим глобальные переменные, необходимые для работы программы. Данные переменные мы будем использовать с привязкой к элементам управления интерфейса пользователя.

ETracesArray – переменная типа ETrace[], в которую мы будем записывать полученные трейсы.

ETraceSet – переменная типа ETraceSet, из которой мы будем считывать объекты типа ETrace.

ETraceTag – идентификатор трейса, по которому будет выполняться поиск в коллекции трейсов и лимитов ETraceSet.

ETraceSet.GetTracesByTag3

Создадим интерфейс пользователя. Нажмем правой кнопкой по заголовку программы и выберем пункт меню «Добавить новый элемент».

ETrace20

Выберем элемент «Панель управления» и введем имя элемента. Нажмем кнопку «Создать»

ETrace21

Добавим на панель управления следующие элементы:

Интерактивные элементы -> Кнопка;

Ввод данных -> Поле ввода;

Пользовательские -> Пользовательский тип (2 элемента);

ETraceSet.GetTracesByTag4

Последовательно выберем каждый из добавленных элементов, в свойствах элементов введем соответствующие имена и выполним привязку значения к переменным следующим образом:

TraceSet: значение -> переменная ETraceSet;

Трейсы: значение -> переменная ETracesArray;

Идентификатор: значение -> переменная ETraceTag;

Пример привязки элемента панели управления «Идентификатор» к переменной ETraceTag показан на следующем рисунке.

ETraceSet.GetTracesByTag5

Включим событие «Click» и введем имя в свойствах кнопки.

ETraceSet.GetTracesByTag6

Перейдем на холст выполняемой программы. Действия программы будут происходить по нажатию пользователем на кнопку «Получить трейсы по идентификатору». Для этого запуск программы должен начинаться с отображения дашборда, Добавим блок «ShowDashboard» и выберем созданную панель управления в меню настройки.

ETrace26

Блок обработки события свяжем с программным алгоритмом, обеспечивающим соответствующие манипуляции с переменной ETraceSet. Последовательно разберем назначение всех добавленных блоков.

ETraceSet.GetTracesByTag7

Блок Handler будет срабатывать по событию нажатия кнопки.

ETraceSet.GetTracesByTag8

Следующий блок - CreateInstance. Данный блок создает новый объект типа ETraceSet, который не содержит никаких данных.

ETraceSet.GetTraceByIndex9

Далее используем блок "If - else" для построения цикла на 11 итераций. Значение переменной i вначале цикла равняется нулю и наращивается на 1 после выполнения каждой итерации. При выполнении условия i<=10 блок принимает значение "True", иначе работа блока завершается через выход "False".

ETraceSet.GetTraceByIndex10

При выполнении каждой итерации цикла будут выполняться следующий действия. Используем блок CreateInstance для создания нового объекта типа ETrace, который передадим в переменную ETrace, как показано на рисунке.

ETraceSet.GetTraceByIndex11

Зададим идентификатор созданного трейса с помощью блока ETrace.SetTag. В качестве идентификатора будем использовать текущее значение номера итерации i, преобразованное в строковый тип данных с помощью функции i.ToString().

ETraceSet.GetTraceByIndex12

Зададим имя созданного трейса с помощью блока ETrace.SetName. В качестве имени будем использовать текущее значение номера итерации i, преобразованное в строковый тип данных с помощью функции i.ToString().

ETraceSet.GetTraceByIndex13

Добавим созданный трейс, который хранится в переменной ETrace в коллекцию данных типа ETraceSet с помощью блока ETraceSet.AddTrace.

ETraceSet.GetTraceByIndex14

Нарастим значение i на 1 с помощью блока SetVariable и функции i=i+1.

ETraceSet.GetTraceByIndex15

Цикл будет повторятся пока значение переменной "i" не превысит значение "10". Далее используем блок ETraceSet.GetTracesByTag, который вернет объекты типа ETrace с заданным идентификатором из коллекции трейсов и лимитов ETraceSet в переменную "ETracesArray". В нашем случае функция SearchTagPart отключена, соответственно будут возвращены трейсы, идентификаторы которых полностью совпадают с заданным ключевым словом.

ETraceSet.GetTracesByTag16

Посмотрим, как работает пример. Мы можем видеть, что по результатам выполнения программы в переменную "ETracesArray" передаются объекты типа ETrace из коллекции трейсов и лимитов ETraceSet, которые имеют указанный идентификатор.

ETraceSet.GetTracesByTag17