Система сообщений позволяет выводить типовой текст или описание переменной в соответствии со значением переменной.
Это просто и удобно, но возникла потребность в формировании "общего сообщения".
Пояснить проще на примере.
Есть АЦП для датчика давления, который отдаёт своё состояние и ошибки в одном общем теге.
Сделан скрипт по изменению переменной
case Variable.AsInt of
0:begin end; // нет ошибок
4:AddMessage(Now, mkAlarm, 'Превышение верхнего диапазона измерений!', True, False);
20:AddMessage(Now, mkWarning, 'Давление меньше нижнего диапазона измерений.', True, False);
52:AddMessage(Now, mkMessage, 'Значения вернулись в диапазон измерений.', True, False);
164:AddMessage(Now, mkAlarm, 'Нет ответа от преобразователя!', True, False);
else
AddMessage(Now, mkAlarm, 'Ошибка модуля датчика давления! Старший байт: '+
IntToHex(HiByte(Variable.AsInt),2) +' младший байт: ' +
IntToHex(LoByte(Variable.AsInt),2), True, false);
end;
По-хорошему для значений 4,20,52 и 164 можно было бы создать стандартное сообщение.
Но иногда возникают ошибки преобразователя АЦП и в переменную попадает значение, которое надо показать оператору.
Возможно ли не прибегая к скрипту создать сообщение аналогичное сообщению в "else"?