Т.е. я беру внешнюю переменную с ОРС-сервера, проверяю её качество функцией IsGoodQuality. Если значение False то должен запуститься таймер функцией TimerStart. Для запуска таймера я должен создать ВНУТРЕННЮЮ переменную vrLinkTimer с типом DateTime и шкалой времени начинающейся с 0? Если значение ВНЕШНЕЙ переменной True, то таймер обнуляется функцией Timer Reset, верно? И так каждый раз, когда качество ВНЕШНЕЙ переменной становится False. Скрипт я должен поставить на событие календаря OnDataChange?
В моём случае таймер почему-то сразу обнуляется, хотя ВНЕШНЯЯ переменная приходит с качеством BAD с контроллера, хотя таймер должен считать. На другом объекте, где качество ВНЕШНЕЙ переменной GOOD, при изменении её на BAD таймер так же не начинает отсчёт. В чём может быть ошибка?
begin
If Lermont_103.IsGoodQuality = False then
TimerStart (TimeLerm103, 0)
else
TimerReset (TimeLerm103);
end.
Переменная Lermont_103 ВНЕШНЯЯ с постоянным качеством BAD, переменная TimeLerm103 - ВНУТРЕННЯЯ для таймера.
begin
If Serova_451.IsGoodQuality = False then
TimerStart (TimeSerova451, 0)
else
TimerReset (TimeSerova451);
end.
Здесь переменная Serova_451 ВНЕШНЯЯ, её качество периодически меняется. TimeSerova451 - ВНУТРЕННЯЯ для таймера.
Оба скрипта были созданы с типом события "Изменились переменные"