Simple-Scada forum
Simple-Scada 2 => Ваши вопросы => Тема начата: Дмитрий К от 03 Февраля 2025, 13:45:30
-
Здравствуйте!
Хочу сделать вроде бы простую штуку. Иметь возможность привязать переменную, чтобы при наличии хотя бы одного сообщения в группе сообщений (или в определенном типе сообщений, напр. для "аварий") , переводить эту переменную в TRUE. Чтобы от этой переменной подсвечивать символ аварии, чтобы оператор понимал, что в списках есть хотя бы одна.
Можно ли это сделать силами скады? Понимаю, что можно в ПЛК, но конкретно в моё случае есть нюансы...
Есть вариант с созданием скрипта, который бы отслеживал изменение переменных. Но есть минус, что при добавлении новой переменной аварии придётся также обновлять и список переменных для отслеживания.
-
Можно каждую секунду по таймеру делать запрос к базе данных, который возвращал бы количество записей в таблице messages с нужными вам значениями столбца gid и т.п.
Соответственно, получив ответ, подсвечивать символ аварии...
-
Здравствуйте.
возможность привязать переменную, чтобы при наличии хотя бы одного сообщения в группе сообщений (или в определенном типе сообщений, напр. для "аварий") , переводить эту переменную в TRUE.
К сожалению, такой возможности нет. Через функцию SysGet (https://simple-scada.com/help/script/sysget.html) можно получить общее количество активных или неподтвержденных сообщений проекта. Но следует учитывать, что данная функция возвращает количество всех активных сообщений проекта любого типа (https://clck.ru/3GAbtm): Сообщение, Предупреждение, Авария.
Можно создать на ПЛК отдельную переменную с общей аварией для каждой группы сообщений и далее использовать эти переменные в скада-системе. Если такой возможности нет, то в Simple-Scada можно создать скрипт с типом события "Изменились переменные (https://simple-scada.com/help/script/changed-the-variables.html)", отслеживать в нем все необходимые переменные и записывать результат в отдельную внутреннюю переменную.
-
Можно каждую секунду по таймеру делать запрос к базе данных, который возвращал бы количество записей в таблице messages с нужными вам значениями столбца gid и т.п.
Соответственно, получив ответ, подсвечивать символ аварии...
Как вариант. Спасибо за подсказку!
Через функцию SysGet (https://simple-scada.com/help/script/sysget.html) можно получить общее количество активных или неподтвержденных сообщений проекта. Но следует учитывать, что данная функция возвращает количество всех активных сообщений проекта любого типа (https://clck.ru/3GAbtm): Сообщение, Предупреждение, Авария.
Отлично! В моём случае это то, что нужно. Я всё равно использую только Предупреждения и Аварии в этом проекте. Нужно просто оповещать визуально, что в списке есть активные или неподтвержденные записи.