Ваши комментарии

 Поддерживаю неистово. По каждой переменной в отдельности, для себя лично, не вижу потребности, а в остальном поддержу и дополню.
 1. Да,чч.мм.сс. в начальной и конечной дате необходимы. В первый раз долго искал такие настройки, был удивлён, что нету.
 2. Выдержка интервала. Если задан час, то 8.00, 9.00, 10.00 и т.д., а не 8.00, 9.01, 10.03.
 3. Вытекает из второго. Допустимый диапазон отклонений по времени. Скажем, по умолчанию - плюс\минус 0,5 интервала, с возможностью для пользователя установки своего диапазона, опять же в чч.мм.сс. Например, интервал - час, диапазон - плюс\минус 10 минут, начало - 8.00. Тогда в промежутке времени с 7.50 до 8.10 выбирается значение, наиболее близкое по времени к 8.00, а если в этот промежуток ничего не было, то остаётся пустая ячейка.
 И по эргономике, очень нужно иметь возможность создания сохраняемых групп, как в графиках, отображение переменных в окошке тоже крайне неудобное, лучше с разворачиваемыми группами, да и само окошко маленькое донельзя.

Можно записывать значения тэгов в виртуальные каналы, уставки задать в этих виртуальных каналах и использовать CheckOpenMnemo. В скрипте отслеживать, если открыта определённая мнемосхема, то используемым в ней каналам записывать реальные значения, а неиспользуемым - какие-нибудь фиксированные в пределах уставок.
Уважаемые разработчики! Проблема в том, что, по большей части - мыжНЕпрограммисты! И работа со скадой зачастую далеко не основная обязанность. Привлекать программиста накладно, ещё надо умудриться объяснить, чего тебе надо. Ему надо умудриться правильно понять и опять же разобраться с особенностями редактора. И всё это ради десяти строчек. А в случае вылезающих в процессе косяков становится вообще непонятно, кто виноват и что исправлять. И как?

То, что выложено под спойлерами - тёмный лес, поверьте.
Хочется видеть что-то такое. Это хелп из другой скады.

BitAnd
Описание
Выполнить операцию побитового AND между Value1 и Value2

Синтаксис
int BitAnd(int Value1, int Value2)

Параметры
Value1 = первое обрабатываемое число
Value2 = второе обрабатываемое число

Возвращаемое значение
Результат операции Value1 AND Value2

Связанные функции
BitOr(), BitXor(), BitNot()

Пример

int Result;
int Value1;
int Value2;
Value1=HexStrToInt("0xFFA7");
Value2=HexStrToInt("0x0FF5");

Result=BitAnd(Value1,Value2);

В результате получится 0xFA5


Понятно, что сваять подобный хелп, да ещё с примерами на четыре языка - серьёзная работа. Но даже наличие простого списка со всеми функциями, операторами и что там ещё бывает, очень поможет. Со всеми, в том числе if… then, for… next, < > и т.д. Иначе возникает дурацкая ситуация, когда изрядно порывшись в интернете, пишешь скрипт, а он не работает, поскольку какая-то функция здесь не поддерживается.
Дошло. Это же контроллер получает уставку по модбасу, так же делит на десять и записывает. Сделал в итоге считывание по физическому каналу с отображением на отдельном индикаторе, а запись через виртуальный. Работает. Прошу прощения за зряшное беспокойство.
Сделал проект только с одной кнопкой - то же самое.
Это которые контроль состояния вкл\откл? Можно и так, только к аналоговым всё равно придётся что-то приделывать, у них же нет таких функций. Я, вообще, хотел выделить группу виртуальных каналов чисто под аварийные сообщения и скриптами установить всякие ограничения по времени и количеству, а в журнале пусть всё фиксируется.
В редакторе мнемосхем вытаскиваю на поляну мультиизображение, а его не видно, только контур. Долго ковырялся, оказалось, нужно, чтобы одна из переменных была равна низу шкалы, тогда оно появляется.
Скачал, гифовины все появились, спасибо. А с мультиизображениями осталось по-старому. Или это отдельно потом поправите?


Сервис поддержки клиентов работает на платформе UserEcho