Simple-Scada 2 > Ваши вопросы

Как вывести в отчет интервалы времени?

(1/7) > >>

alan54:
Не могу сообразить сам, подскажите, пожалуйста - как вывести в отчет интервалы времени между определенными событиями, например, выходами готовых щитов (см. вложение)?

Simple-Scada:
Здравствуйте.
Извините за задержку с ответом. Т.е. нужно вывести время прошедшее между временем предыдущей строки и временем текущей строки? Для этого можно в бэнде данных разместить компонент Текст, дважды кликнуть его для редактирования и использовать следующее выражение:

--- Код: (c#) ---{DateDiff(Данные.Время, (System.DateTime)Previous(Данные, "Время"))}Данный код получает разницу во времени между текущей и предыдущей строкой. Также не забудьте выставить у компонента Текст формат "Время". Для этого кликните его ПКМ и выберите пункт "Формат".

alan54:
Все понятно, я не знал функцию system.datetime. Большое спасибо!

Simple-Scada:
Это явное приведение к типу данных DateTime. Дело в том, что функция Previous возвращает указатель на объект предыдущей строки, без определённого типа данных. А функция DateDiff работает только с типами DateTime. Поэтому мы должны явно указывать тип данных и вместо "Previous(Данные, "Время")" писать "(System.DateTime)Previous(Данные, "Время")"

alan54:
Наберусь наглости и задам еще вопрос: как написать условие для выделения ячейки отчета цветом, если значение разности времен больше 5 минут?  Пытаюсь написать Minute(полученное_выражение_ в_ячейке) > 5 - ругается...

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Перейти к полной версии
Mobile View