Автор |
Повідомлення |
Повідомлення створено: 25. 05. 2012 [14:09]
|
enpro
Александр Смирнов
Зареєстрован(а) с: 11.04.2012
Повідомлення: 8
|
Здраствуйте, пытаюсь выводить алармы в элемент протокол, как написано в быстром старте.
Сделал тестовую программку:
if ((ch0_Out >= 0) && (ch0_Out < 2))
{
SYS.message("alCategory", 3, "Параметр: норма");
}
if ((ch0_Out >= 3) && (ch0_Out < 5))
{
SYS.message("alCategory", -3, "Параметр: нарушение");
}
Запускаю проект, в командной строке предупреждения выводятся:
3|alCategory | Параметр: норма
3|alCategory | Параметр: норма
3|alCategory | Параметр: норма
-3|alCategory | Параметр: нарушение
-3|alCategory | Параметр: нарушение
-3|alCategory | Параметр: нарушение
-3|alCategory | Параметр: нарушение
А вот в элемент "Протокол" в режиме реального времени они не добавляются. Но если остановить, и поновой запустить проект, то в Протоколе выводятся предупреждения от предыдущего запуска.
На картинке в териминале видны предупреждения 3|alCategory | Параметр: норма , но в протоколе они не выводятся, а появятся только после перезапуска. Подскажите, пожалуйста, как мне решить данную проблему?
[Повідомлення редагувалось 1 раз(ів), останній раз 25.05.2012 в 14:15.]
|
Повідомлення створено: 25. 05. 2012 [18:58]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
"enpro" wrote:
3|alCategory | Параметр: норма
3|alCategory | Параметр: норма
3|alCategory | Параметр: норма
-3|alCategory | Параметр: нарушение
-3|alCategory | Параметр: нарушение
-3|alCategory | Параметр: нарушение
-3|alCategory | Параметр: нарушение
Нарушения нужно генерировать только при появлении и уходе, а не постоянно.
"enpro" wrote:
А вот в элемент "Протокол" в режиме реального времени они не добавляются. Но если остановить, и поновой запустить проект, то в Протоколе выводятся предупреждения от предыдущего запуска.
Не установлен период слежения, да и настроен некорректно виджет протокола. Продолжаем читать "Быстрый старт"!
Learn, learn and learn better than work, work and work.
|
Повідомлення створено: 29. 05. 2012 [15:42]
|
enpro
Александр Смирнов
Зареєстрован(а) с: 11.04.2012
Повідомлення: 8
|
Спасибо, с генерацией сообщений разобрался. Но возник вопрос по поводу сохранения данных сообщений в архив. Сейчас сообщения сохраняются в архив, их можно просмотреть если в качестве архиватора выбрать <bufer>.
Пытаюсь выполнять сохраниение сообщений в БД. Подключил архиватор:
но сообщения в него не сохраняются. В быстром старте информармацию не нашел, большая просьба подсказать решение данной проблемы, либо указать на конкретное место в документации, где об этом сказано.
|
Повідомлення створено: 29. 05. 2012 [17:59]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
"enpro" wrote:
но сообщения в него не сохраняются.
Разбирайтесь в настройках, смотрите прямо в БД. В любом случае у меня нет таких проблем.
P.S. Живой пример архивации сообщений на БД MySQL во вложении, из ДемоБД, кстати!
Learn, learn and learn better than work, work and work.
Вкладений файл
messToArch.png (Тип файлу: image/png, Розмір: 162.09 кілобайтів) — 783 завантажень
|
Повідомлення створено: 30. 05. 2012 [09:24]
|
enpro
Александр Смирнов
Зареєстрован(а) с: 11.04.2012
Повідомлення: 8
|
Большое спасибо, сравнил настройки с демо проектом, и все заработало.
Но возник ещё один вопрос по графическому элементу Протокол.
В скриншоте на странице http://oscada.org/ru/glavnaja/reshenija/odinochnaja-stranica/article/acs-tp-of-the-ball-mills-shbm-287410-of-the-boiler-bkz-160-100-pt/
часть сообщений в элементе протокол раскрашено красным цветом. Как сделать тоже самое?
Пробовал так:
rnd_sq_gr11_lineClr="red";
Special.FLibSYS.messPut("Example",1,"Event: "+rnd_sq_gr12_leniClr);
но ничего не получилось.
|
Повідомлення створено: 30. 05. 2012 [09:36]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
"enpro" wrote:
Пробовал так:
rnd_sq_gr11_lineClr="red";
Special.FLibSYS.messPut("Example",1,"Event: "+rnd_sq_gr12_leniClr);
но ничего не получилось.
А это тут к чему?
Читаем документацию по элементу "Протокол", на предмет "Свойства элемента", http://wiki.oscada.org/Doc/VCAEngine#h668-19 и опять-же в ДемоБД есть пример!
Learn, learn and learn better than work, work and work.
|
Повідомлення створено: 30. 08. 2012 [10:34]
|
s60ru
Антон Петров
Зареєстрован(а) с: 10.05.2012
Повідомлення: 141
|
Зачем атрибут "alarm" имеет в своем формате ( {lev|categ|message|type|tp_arg}) поля categ, message , если это строка никуда в архив не записывается, нигде не отображается, а действующими полями являются lev, type ???
Причем попробовал строку типа alarm = "50|||7"; - не работает...
Попробовал строку типа alarm = "50| | |7"; - не работает...
Попробовал строку типа alarm = "50|a |b |7"; - работает...
|
Повідомлення створено: 30. 08. 2012 [10:38]
|
s60ru
Антон Петров
Зареєстрован(а) с: 10.05.2012
Повідомлення: 141
|
Уровень нарушений отображается только во всплывающей подсказке зеленого круга.
Можно до него как-нибудь достучаться в обработке страницы ?
|
Повідомлення створено: 30. 08. 2012 [10:55]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
"s60ru" wrote:
Зачем атрибут "alarm" имеет в своем формате ( {lev|categ|message|type|tp_arg}) поля categ, message , если это строка никуда в архив не записывается, нигде не отображается, а действующими полями являются lev, type ???
Потому что уведомление и архив это разные вещи, а сообщение там для синтеза речи.
Читам здесь http://wiki.oscada.org/Doc/QuickStart#h988-31 до прояснения!
"s60ru" wrote:
Уровень нарушений отображается только во всплывающей подсказке зеленого круга.
Можно до него как-нибудь достучаться в обработке страницы ?
Зелёный круг берёт состояние из атрибут "alarmSt" корневой страницы.
Learn, learn and learn better than work, work and work.
|
Повідомлення створено: 30. 08. 2012 [10:58]
|
s60ru
Антон Петров
Зареєстрован(а) с: 10.05.2012
Повідомлення: 141
|
"s60ru" wrote:
Уровень нарушений отображается только во всплывающей подсказке зеленого круга.
Можно до него как-нибудь достучаться в обработке страницы ?
Вроде нашел
//> Alarms display
soLst = this.nodeList("pg_");
for( i = 0; i < soLst.length; i++ )
{
curSO = soLst[i].slice(3);
aSt = this["pg_"+curSO].attr("alarmSt");
aLev = aSt&0xFF;
if( aLev && aSt&0x100 )
{
if( aLev > 30 ) wColor = "#ff0000";
else wColor = "#ffff00";
|