Simple-Scada forum

Simple-Scada 2 => Ваши вопросы => Тема начата: Серега от 24 Мая 2021, 11:52:29

Название: Шаблоны и все такое...
Отправлено: Серега от 24 Мая 2021, 11:52:29
Добрый день!
При решении определенной задачи возникли вопросы.
Например у нас есть 3 насоса как в Вашем примере. Все одинаково.
Кроме того, что например у 3 насоса нет переменной отвечающей за частоту.
Создав шаблон и шаблонное окно мы можем наблюдать, что если в проекте нет нужной переменной, то она не отображается в окне по правой кнопке. Внешний вид шаблонного окна и шаблона ни чем не отличаются.
Вопрос №1. Как предупредить оператора об отсутствии данной переменной (то есть оператор должен понимать что у 3 насоса в привычном месте данных о частоте не будет)?
Вопрос №2. Следствие наверное первого вопроса. Можно ли как то скрыть элементы у которых нет переменных?
Жду вопросов и ответов!
Название: Re: Шаблоны и все такое...
Отправлено: pan2000 от 24 Мая 2021, 21:24:55
     Здравствуйте.

Изменить свойства объекта экземпляра шаблона можно только скриптом по событию изменения значения одной из двух переменных объекта. Для генерации события можно использовать пару переменных с начальными значениями 0 и 1. Одна переменная связывается с видимыми объектами, другая - со скрытыми (пара нужна для задания всех свойств экземпляра шаблона, событие - инициализация переменных при запуске проекта).
 
Варианты для управления видимостью объекта "Поле":
1. Дополнительная переменная свободна, скрипт управляет непосредственно видимостью объекта.
2. Дополнительная переменная занята, скрипт управляет видимостью экранирующего объекта по основной или дополнительной переменной.
Код: (delphi)
begin
  with Sender as TM_Object do Visible := VariableEx.AsInt = 0;  // инвертировать для варианта 2
end.

Во вложении пример для варианта 1 и еще несколько способов управления видимостью объекта экземпляра шаблона
Название: Re: Шаблоны и все такое...
Отправлено: Simple-Scada от 25 Мая 2021, 11:08:17
Здравствуйте.

Смысл шаблонов состоит в замене одинаковых объектов, а не в попытках подогнать шаблон под объекты которым он не подходит (хотя это возможно, как описал выше pan2000), усложняя проект. Т.е. в Вашем случае правильнее всего было бы создать два шаблона. Первый шаблон обычный, с полем частоты. Его назначить на все подобные объекты проекта у которых должна отобраться частота. Второй шаблон такой же, но без поля частоты (его как раз можно сделать меньше по размерам) и назначать его всем объектам проекта у которых нет поля частоты.
Название: Re: Шаблоны и все такое...
Отправлено: Серега от 27 Мая 2021, 14:03:54
Добрый день!
За предложенный вариант автору pan2000 спасибо! Протестировали, прикинули, будем использовать.