Для корректной работы блоков, работающих в векторном режиме, необходимо учитывать размерность вектора, причем таким образом, чтобы размерность вектора была согласована у всех блоков, объединенных в алгоритм.
Размерность вектора в нашей модели должна быть равна количеству групп сигналов, находящихся в категории «Задвижки» в базе данных сигналов.
Размерность вектора может быть определена разными способами: можно задать глобальную переменную в общем скрипте проекта, которая будет содержать размерность вектора, можно создать такие переменные в таблице сигналов проекта либо в базе данных. Иногда, если известно, что алгоритм будет работать с какой-то категорией (или категориями) в базе данных, удобнее формировать размерность вектора автоматически при помощи запроса к базе данных.
На данном шаге мы создадим новое свойство у блока «Субмодель», а затем в данном свойстве пропишем запрос к базе данных, который позволит нам считывать количество групп сигналов у определенной категории в виде целого числа. Результат считывания будет использоваться для векторизации блоков.
Чтобы добавить новое свойство к блоку «Субмодель» выполните следующие действия:
Имя столбца | Значение ячейки |
Название | Количество задвижек |
Имя | ZCount |
Тип данных | Целое |
Формула |
{query: category = "Задвижки"; group= "*"; name= "xb01"; what = count} |
Способ расчета | Переменная |
После редактирования таблицы нажмите на кнопку «Применить» , сохраняя внесенные изменения. После нажатия
на данную кнопку, если все было сделано правильно, в ячейке «Значение» должно
появиться целое число, соответствующее количеству групп сигналов в категории
«Задвижки».
В строке «Формула» формируется запрос к базе данных, который при помощи дополнительно введенной конструкции what = count, возвращает количество сигналов, в имени которых присутствует текст «xb01» из категории «Задвижки».
Так как во всех группах сигналов данной категории присутствует только по одному сигналу, содержащему текст «xb01», то возвращаемое значение, формируемое с помощью данного запроса, будет соответствовать количеству групп сигналов, находящихся в базе данных.
Перед тем, как приступить к выполнению следующего шага, сохраните проект, используя кнопку
«Сохранить проект»
на панели кнопок главного окна среды.