Your comments

С точки зрения программирования бывает проще описать функцию создания какого либо элемента UI чем создавать в GUI Editor. Например есть несколько помещений, в каждой есть несколько групп света которыми нужно управлять.

Помещения показываются через popup, который в свою очередь находится в Static List.

Одно дело когда 2 помещения и по 2 группы света в каждом.
Но если помещений 10 и в каждой по 1-10 групп света - становится проблематичным поддерживать такое количество popup элементов.







А анимацию к ним применить не получится?

Создано 2 варианта управление серверными переменными.
1) Через перетаскивание в GUI: значения на сервере не меняются. При этом если задать значение через web интерфейс - то на обе панели приходит значение.

2) Через скрипты. Значение меняется на сервере и только на текущей панели, откуда отправляется комманда. Если выключить сервер, значение на текущей панели все равно будет меняться.

Также не совсем понятно управление пременными через web интерфейс. Почему задать новое значение можно только через Feedbacks. При изменении значения через Commands ни чего не происходит.

Значит что только через серверные теги? Получается что есть функционал работы с БД но как отправлять туда команды - непонятно.

При данной ситуации код работает даже при выключенном сервере. Тоесть значения записываются и выводятся.

Это виртуальный "Channel" и такой же "Tag" на сервере.
На стороне сервера ни как не записываю. Записываю на клиенте : IR.SetVariable("Drivers.iRidium Server.current_source","что-то");

В итоге есть некоторая путаница с именами

К примеру если использовать IR.SetGlobalListener

IR.SubscribeTagChange("Server.Channels.KNX.Address1");

Какое имя должно быть в "Address1":
1) название имени канала в серверном проекте?

2) Название имени канала в клиетском проекте?
3) Назавание канала из ETS?

2)

Шаг1: Создаю серверный проект и добавляю KNX драйвер


Шаг2: Изменяю название переменной в серверном проекте


Шаг3: Добавляю драйвер сервера к клиентскому проекту и вешаю команду на кнопку

Шаг4: Вешаю слушатель на IR.EVENT_TAG_CHANGE


Шаг5: В логе выводится изначальное имя которое было взято из ETS