Стартовая страница › Форумы › Понять, как работает ПО › Границы, пределы, формулы
- В этой теме 17 ответов, 5 участников, последнее обновление 4 года, 8 месяцев назад сделано Mikhail.
-
АвторСообщения
-
30.03.2018 в 13:13 #8836IlyaУчастник
Добрый день!
Существует ли способ программно или формулами получить значение пределов(нижних, верхний, аварийных) выставленные в таблицах Scada-администратора в дорасчетный канал?30.03.2018 в 20:21 #8838MikhailМодераторДобрый день!
Напрямую нет, а программно из серверного модуля Вы можете загрузить таблицы базы конфигурации и получить из них любую информацию:BaseTables baseTables = new BaseTables(); BaseAdapter baseAdapter = new BaseAdapter(); baseAdapter.Directory = Settings.BaseDATDir; foreach (DataTable dataTable in baseTables.AllTables) { baseAdapter.TableName = BaseTables.GetFileName(dataTable); baseAdapter.Fill(dataTable, false); }
02.07.2019 в 16:53 #12608talbutdinovУчастникКак настраиваются и работают верхние (нижние) и аварийные границы. В Администраторе настроил их, но в WEB ничего не происходит, думал как-то подсвечиваться будет зеленым или красным, или это надо делать как-то другим способом? Хочется, чтобы при выходе за предельные значения было небольшое уведомление.
02.07.2019 в 18:54 #12610RomirosУчастникЕсли Вы используете табличное представление, то там раскраска цветом реализована автоматически. На схемах можно поставить в настройках динамической надписи цвет текста — status. Можно подсвечивать фон, можно границы. Также для других элементов.
03.07.2019 в 08:55 #12612talbutdinovУчастникВидимо что-то я не так настраиваю, ничего не подсвечивается. Представление табличное. Настроил границы.
https://yadi.sk/i/zQWHHpFgLOYkkg03.07.2019 в 09:55 #12613manjey73УчастникЯ ковырял справочник — Типы Событий. Ну и надо формулы ставить сравнения и менять статус.
Вы на каждый свой желательный цвет должны задать свой статус в справочнике и соответственно его задавать. Тогда цвет будет меняться.Насколько помню, по умолчанию реализовано только ВКЛ/ВЫКЛ и архивный не архивный.
Остальное в вашем выборе.
я тогда цвет менял в отображении событий.Вот в типах событий как раз и задается Цвет, которым надо отображать значение с нужным статусом.
Вроде Михаил планировал дорабатывать этот механизм, так как были пожелания кроме Вкл/Выкл еще и промежуточные значение выставлять, типа Предупреждение, Авария и что-то еще… давно тема была по этому поводу.03.07.2019 в 10:47 #12616MikhailМодераторЕсли есть нижняя граница, то должна быть и верхняя, и наоборот, иначе не будет работать.
03.07.2019 в 11:47 #12621talbutdinovУчастникУ меня есть тэг, который показывает количество дней до поверки прибора учета. Мне нужно, чтобы если осталось 30 дней и менее оранжевым подсвечивалось, а если меньше 10 дней, то красным.
Получается я в линии указываю, что нижняя граница 3650 дней, а верхняя граница за которую не желательно выходить 30 дней, а аварийная верхняя 10 дней. Но цветом не отмечается.
Есть еще такие свойства линии, как:
Запись событий
Звук событий
Событие по изменению
События по неопределенному состояниюМожет какое-то из них нужно включать? Что каждый из них означает?
03.07.2019 в 14:26 #12622manjey73Участникtalbutdinov вы можете контролировать количество дней в драйвере и выставлять статус прямо в нем в формуле SetCurData, а в Справочнике Типы Событий создать свои типы с нужными цветами.
Если правильно понимаю, типы событий со 101 как раз и реализованы через статус в драйвере Болида… И добавлены в Базу справочника, чтобы это работало.03.07.2019 в 16:24 #12623talbutdinovУчастникЕсли я все правильно понял, то я сам решаю где какому событию быть в виде цвета шрифта и задаю я его номером
TagData[0].Stat = 2;
Если так, то как мне получить настройки линии КП, у которой заданы как раз таки эти границы, чтобы мне уже было с чем сравнивать данное значение.
03.07.2019 в 17:45 #12624RomirosУчастникПолучается я в линии указываю, что нижняя граница 3650 дней, а верхняя граница за которую не желательно выходить 30 дней, а аварийная верхняя 10 дней. Но цветом не отмечается.
Поставьте нижняя предупредительная 30, а нижняя аварийная 10. Я так понимаю у Вас идёт обратный отсчёт дней?
04.07.2019 в 08:38 #12628talbutdinovУчастникПоставьте нижняя предупредительная 30, а нижняя аварийная 10. Я так понимаю у Вас идёт обратный отсчёт дней?
Да идет обратный отсчет дней. Делал так и обратно, все равно либо черным как текущие, либо зеленым как архивные (
04.07.2019 в 09:39 #12629MikhailМодераторПрименительно к вашей задаче я бы не использовал границы, потому что термины завышение и занижение сюда не подходят.
Создайте свои статусы в таблице Типы событий. И сделайте формулу для расчёта статуса.04.07.2019 в 09:41 #12630MikhailМодераторЕсли я все правильно понял, то я сам решаю где какому событию быть в виде цвета шрифта и задаю я его номером
Устанавливать статус из драйвера не нужно. Лучше рассчитывать статус на уровне Сервера.
04.07.2019 в 18:24 #12631RomirosУчастникВообще по идее должно все работать, я реализовывал сигнализацию по превышению количества часов наработки стандартными границами. Правда на базе текущих данных, может с архивами что по другому.
Хотя и с архивами тоже границы работали, по крайней мере цвета, события я не ставил. Может просто правильные формулы нужно прописать? -
АвторСообщения
- Вы должны авторизироваться для ответа в этой теме.