Не верное срабатывание нештатной ситуации "Данные по устройству не получены.."

У нас опрос настроен раз в сутки и только суточные архивы (по ночам).
Выставил диагностику отсутствия данных в 52 часа (для того, чтобы определять эту ситуацию, когда нет связи с прибором хотя бы двое суток), но нештатная ситуация срабатывает уже на первые сутки.
Видимо наличие данных определяется на начало суток, а не на конец, т.е. если есть суточные данные за 10.10.2016, то они есть на какой час?
dann.jpg
diag.jpg

Приложите скриншот нештатных ситуаций по данной точке учета.

Видимо так и есть, как я предположил. Наличие суточных данных система определяет на 00:00 последних суток, но правильней полагать, что они есть на 00:00 следующих суток.
ns.jpg

Приложите скриншот списка точек учета с включенной колонкой “Последние данные”, в котором видна вышеописанная точка.

Не знаю, чем это может помочь, сегодня ведь уже другой день, другая картина…
tochki.jpg

Тогда сообщите за 10.10.2016 когда у вас последний раз поступали данные?

Исходя из скриншота нештатной ситуации, все верно отработало. НС была выявлена 12.10.2016 04:00:00 спустя ровно 52 с момента возникновения.

За 10.10.2016 поступали последний раз данные 11.10.2016 01:09:15. Спустя сутки с небольшим получаем нештатную. Как я уже писал выше Вы неверно истолковываете час наличия данных, если имеются только суточные архивы - Вы его берете, как начало суток, за которые поступили последние данные, а надо брать конец суток - либо начало следующих. Таким образом Ваш алгоритм работает корректно, если присутствуют только часовые данные, но если имеются суточные - он не совсем верен. Удобней для понимания идти от обратного:
разница в 52 часа (в нашем случае) у Вас считается по формуле:

d = Tтек - Tсут(00:00),

где d - искомая разница; Ттек - текущая метка времени; Тсут(00:00) - метка времени на 00:00 последних суток, за которые есть данные.

Так вот, если имеются только суточные данные, то корректная формула выглядит так:

d = Tтек - Tсут(00:00) + 24.

Соответственно нештатная сработает как и положено (в нашем случае) через двое суток с небольшим.

Скобки забыл:
d = Tтек - (Tсут(00:00) + 24).

Да, действительно, у нас есть такая проблема. Мы постараемся включить исправление в обновление R19.04.

Пока что вы можете добавить чтение текущих в опросе, чтобы нештатная ситуация создавалась корректно.

Спасибо