Вопрос: как осуществить квитирование тревог в таблице тревог из кода программы?
Ответ: для этого можно использовать методы глобального обработчика тревог:
Код:
// Квитирование конкретной тревоги
AlarmManager.AlarmGlobals.g_AlarmHandler.AcknowledgeOneOfGroup
(
usiAlarmGroupID := <ID группы тревог>,
uiAlarmID := <ID тревоги>
);
Код:
// Квитирование всех тревог группы
AlarmManager.AlarmGlobals.g_AlarmHandler.AcknowledgeAllOfGroup
(
usiAlarmGroupID := <ID группы тревог>
);
Код:
// Квитирование всех тревог всех групп
AlarmManager.AlarmGlobals.g_AlarmHandler.AcknowledgeAll();
ID группы тревог и конкретных тревог размещаются в списках констант Alm_AlarmConfiguration_Alarmgroup_IDs и Alm_AlarmGroup_Alarm_IDs соответственно.
Увидеть их можно в ассистенте ввода (нажмите F2 для его открытия).
- Пример ID группы: Alm_AlarmConfiguration_Alarmgroup_IDs.ID_AlarmGroup (где AlarmGroup - имя группы тревог в дереве проекта)
- Пример ID тревоги: Alm_AlarmGroup_Alarm_IDs.ID_FirstAlarm (где FirstAlarm - ID тревоги в таблице группы тревог; по умолчанию ID формируются в виде чисел, но фактически представляют собой строки и могут быть изменены пользователем)
2026-06-10_13-11-17.png 2026-06-10_13-12-39.png
Методы должны вызываться событийно при нужных обстоятельствах, а не циклически.
Методы AcknowledgeAllOfGroup и AcknowledgeAll применимы только для групп, в классах тревог которых снята галочка Подтверждать по отдельности.
2026-06-10_13-15-54.png
Вызов методов соответствуют переходу Confirm или ACK в машине состояний, соответствующей "способу подтверждения" класса тревог, и влияет только на тревоги, находящиеся в соответствующих состояниях.
2026-06-10_13-17-57.png 2026-06-10_13-18-13.png