Пока решил сделать так:
200 тегов состояний объектов:
Tag1 - I/O Integer (в Comment пишу строку "Tag1")
Tag2 - I/O Integer (в Comment пишу строку "Tag2")
...
Tag200 - I/O Integer (в Comment пишу строку "Tag200")
200 тегов тревог (на них настраиваю Алармы):
Tag1alm - Memory Discrete
Tag2alm - Memory Discrete
...
Tag200alm - Memory Discrete
Еще два вспомогательных indirect тега:
indirTag - Indirect Integer
indirTagALM - Indirect Discrete
200 скриптов типа DataChange(Tag1.02)
с содержимым типа
- Код: Выделить всё
CALL almManager(Tag1.Comment);
И наконец одна Quick-функция:
almManager(tagComment(тип: Message))
с содержимым:
- Код: Выделить всё
indirTag.Name = tagComment;
indirTagALM.Name = tagComment + "alm";
indirTagALM = indirTag.02;
----
Вариант позволит при необходимости быстро дописать в одном месте дополнительную обработку меняющихся состояний объектов.
Еще бы как-то ускорить производство 200 очень похожих скриптов типа DataChange )))