Simple-Scada forum
Simple-Scada 2 => Ваши вопросы => Тема начата: Виктория от 12 Октября 2021, 11:59:55
-
Здравствуйте. Попробую обрисовать ситуацию так:
имеется 15 объектов, которые аналогичны друг другу, для них отрисована мнемосхема, где отображается основная информация по этим объектам, если оператор щелкнет на объект, то попадет на страницу, где очень много данных по объекту и логика этих данных не тривиальна, т.е. чтобы определить связь, то нужно ориентироваться сразу же на несколько параметров и в зависимости от них программа делает какой-то вывод, т.е. в скриптах не банальное присвоение, а логика работы устройств (это к тому, что шаблоны здесь не применимы). К чему я веду: у меня заведена переменная, по значению которой программа понимает какой объект отобразить и, следовательно, какие данные отображать. Так вот, если подключен один клиент-то все работает как нужно, но если подключается другой клиент, то значение этой переменной меняется в зависимости от того на какой объект пользователь кликнул, и получается, что у другого клиента автоматически подменяется выбранный объект. Как можно обойти данную ситуацию? Отрисовывать мнемосхему для каждого объекта-не вариант, с именем клиента в секундных скриптах не поработать, хотя логика работы находится в секундных скриптах и разграничить клиентов не получится, шаблоны тривиальны и не подходят для данной ситуации.
-
Если отрисовывать не вариант, то нужно все же в сторону шаблонов смотреть. С появлением функции OnInit уже есть возможность определенную логику в них вложить, не просто привязку переменных к шаблону.
-
Здравствуйте.
Изменить свойство объекта(или подменить переменную связанную с объектом) только для определенного пользователя невозможно. Все объекты проекта и их свойтва существуют в единственном экземпляре и при изменении любого свойства объекта, данные изменения увидят все клиенты вне зависимости от авторизованного пользователя. Для ограничения доступа к отдельным объектам существует система прав пользователей (https://simple-scada.com/help/manual/editor-users.html), при помощи которой можно задать права доступа пользователей (https://simple-scada.com/help/manual/objects-rights.html) для требуемых объектов. Поэтому, для данной задачи можно использовать систему шаблонов совместно с настройкой прав пользователей. Какого-либо другого способа нет. В проекте с более чем одним клиентом изменить свойство объекта только для определенного пользователя невозможно по причинам описанным выше.