Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Автор Тема: Изменение части имени нескольких переменных  (Прочитано 4159 раз)

Васисуалис

  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Можно ли сделать по открытию окна изменить один символ в имени переменных на этом окне, т.е у меня несколько агрегатов, привязки отличаются только номером агрегата?

Simple_Scada

  • Администратор
  • *****
  • Сообщений: 1400
    • Просмотр профиля
Здравствуйте.

Есть возможность подмены переменных у объектов через скрипты. Это позволяет, к примеру сделать некое шаблонное окно и при вызове этого окна из разных объектов подставлять в него нужные переменные. Таким образом, можно множество однотипных окон заменить одним(пример можно найти здесь). Следует учитывать, что подмена переменных происходит одновременно на всех клиентах. Поэтому, если клиентов несколько, то использовать подмену переменных следует с осторожностью или не использовать вообще, т.к. при одновременной работе с таким окном нескольких пользователей может получиться ситуация, при которой пользователь будет видеть в окне значения переменных не того объекта, с которого перешел в окно - подобная ситуация обсуждалась здесь. В дальнейшем мы планируем добавить поддержку шаблонных объектов, окон, функции импорта и экспорта объектов между проектами. Какой-то определенный срок появления таких возможностей сейчас назвать сложно. Возможно, данные функции будут добавлять поэтапно.

Васисуалис

  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Спасибо, про замену переменных я знал, но мне это не подходит т.к. у меня многооконный режим. Буду привязывать руками.

MaxHari

  • Новичок
  • *
  • Сообщений: 36
    • Просмотр профиля
Здравствуйте.
У меня схожий вопрос на эту тему.

Имеется некий объект с привязанной к нему переменной X со своими параметрами. Также имеется переменная Y, имя которой формируется по заданному условию.
Что произойдёт, если я выполню следующую операцию:

Код
X := Y;
В частности интересуют следующие "места":
1. Если у переменных разные шкалы, поменяются ли у переменной X минимальное и максимальное значения?
2. Какая переменная будет привязана к объекту, т.е. как это повлияет на отображение на других клиентских машинах?
[И не по теме - может ли имя шкалы переменной фигурировать где-то в скриптах?]

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3214
    • Просмотр профиля
    • Simple-Scada
Здравствуйте.

Если переменные X и Y - это глобальные переменные созданные в редакторе переменных, то такое присвоение недопустимо, т.к. меняет ссылку одной переменной на другую.
Если Вы хотите менять переменные во время работы проекта, то это нужно делать у конечных объектов, например у Поля / Уровня / Кнопки и т.д. Пример такой подмены описан здесь.

Цитировать
И не по теме - может ли имя шкалы переменной фигурировать где-то в скриптах?
Получить имя шкалы через скрипты нельзя.
« Изменён: 05 Ноября 2019, 10:22:40 от Simple-Scada »