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

ETraceSet.GetLimitByTag (Получить лимит по идентификатору из набора трасс)

01.png

Описание

Возвращает лимит из набора трасс по идентификатору.

Свойства

Входной аргумент Тип аргумента Тип переменной Описание
traceSet Константа, Переменная, Выражение ETraceSet Набор трасс
tag Константа, Переменная, Выражение String Идентификатор лимита
searchTagPart Константа, Переменная, Выражение Boolean Поиск лимита по частичному совпадению идентификатора
Выходной аргумент Тип аргумента Тип переменной Описание
limit Переменная ELimits Лимит

Пример

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

02.jpg

Создадим глобальные переменные, необходимые для работы программы. Данные переменные мы будем использовать с привязкой к элементам управления интерфейса пользователя. ELimit – переменная, которая хранит созданный объект типа ELimits, который мы будем добавлять в массив ELimitsArray, также в эту переменную мы передадим объект ELimits с запрашиваемым идентификатором. ELimitsArray – массив объектов типа ELimits. ETraceSet – переменная типа ETraceSet, в которую будет добавляться массив объектов типа ELimits. Xpoints – переменная типа Double[] для хранения массива точек X. minYpoints – переменная типа Double[] для хранения массива минимальных значений лимита. maxYpoints – переменная типа Double[] для хранения массива максимальных значений лимита. ELimitTag – идентификатор лимита, по которому будет выполняться поиск в коллекции трейсов и лимитов ETraceSet.

03.jpg

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

01.jpg

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

02.jpg

Добавим на панель управления следующие элементы: Интерактивные элементы -> Кнопка; Ввод данных -> Поле ввода; Пользовательские -> Пользовательский тип (2 элемента);

04.jpg

Последовательно выберем каждый из добавленных элементов, в свойствах элементов введем соответствующие имена и выполним привязку значения к переменным следующим образом: TraceSet: значение -> переменная ETraceSet; Лимит: значение -> переменная ELimit; Идентификатор: значение -> переменная ELimitTag; Пример привязки элемента панели управления «Идентификатор» к переменной ELimitTag показан на следующем рисунке.

23.jpg

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

05.jpg

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

05.jpg

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

06.jpg

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

07.jpg

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

02.jpg

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

03.jpg

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

04.jpg

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

05.jpg

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

06.jpg

Сформируем массив минимальных значений лимита minYpoints с помощью блока RandomArray.

07.jpg

Значения массива maxYpoints установим равными "30". Для этого воспользуемся механизмом настройки начального значения переменной, как показано на следующем рисунке.

08.jpg

Добавим созданные массивы точек в объект типа ELimits с помощью блока ELimits.AddPoints.

09.jpg

Добавим созданный лимит, который хранится в переменной ELimits в массив ELimitsArray с помощью блока AddArrayValue.

13.jpg

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

11.jpg

По окончании созданного цикла (условие i>10) добавим все объекты типа ELimits из массива ELimitsArray в коллекцию трейсов и лимитов ETraceSet с помощью блока ETraceSet.AddLimits.

14.jpg

Далее используем блок ETraceSet.GetLimitByTag, который вернет объект типа ELimits из коллекции трейсов и лимитов ETraceSet с заданным идентификатором в переменную "ELimit". В нашем случае функция SearchTagPart отключена, соответственно будет возвращен лимит, идентификатор которого полностью совпадает с заданным ключевым словом.

08.jpg

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

01.gif