Филтьрация в Alarm Logging
Алексей; 14.12.03

Народ! Кто-нить подскажите как фильтровать в Alarm Logging по текстовому полю. Я пишу следующую вещь:

Filter.dwTB=8;
strcpy(Filter.szTB[0],"Котёл №1");
Ну и далее вызов фильтра.
Ни фига не работает. Причём нужная колонка устанавливается, а текст не применяется к ней. Стандартными средствами пробовал - получается. Может кто-нить знает где можно информацию поподробнее раздобыть. Заранее благодарен.
Re: Филтьрация в Alarm Logging
Alexis; 15.12.03

Вы используете MSG_FILTER_STRUCT, dwFilter|=MSG_FILTER_TEXT и соответствующие ОДК-шные функции?

А почему у Вас dwTB=8, а szTB[0]?
Вроде если dwTB=8, то szTB[3]...
Помню по фильтрации по классам траблы были в версии ниже 5.1 (в том году обсуждали).
А что за стандартные средства вы пробовали?
Re: Филтьрация в Alarm Logging
Алексей; 15.12.03

Стандартные - это когда в RUN TIME в окошке Alarm Logging нажимаем кнопочку (не помню как называется, но она там есть) в результате появляется окошечко в котором мона выбрать поле для фильтрации и условие фильтрации.

Re: Филтьрация в Alarm Logging
Alexis; 16.12.03

Кнопочка SELECTION? :)

Плохая она, в RT, да через скрипты, imho лучше через sql фильтровать. Гнусный Selection дает фильтровать только по установленным колонкам, а через MsqFilterSQL можно фильтровать по чему угодно... Я во всех стандартно сгенеренных SSM-ом алармовых pdl-ках навставлял свой ALG-Filter Helper - все работает и фильтруется как душе (моей :) угодно...
Re: Филтьрация в Alarm Logging
Алексей; 18.12.03

Научите меня плиз как это делать:-(

Re: Филтьрация в Alarm Logging
Alexis; 18.12.03

Дык опиши проблему поконкретнее...

Если надо в AlarmControl отфильтровать по первому текстовому полю, то можно из скрипта вызвать SetPropChar(...,"Control","MsqFilterSQL","TEXT1 LIKE 'Котёл №1'") - естественно если там есть такой текст :)
Re: Филтьрация в Alarm Logging
Алексей; 18.12.03

Огромный СПАСИБА!

Re: Филтьрация в Alarm Logging
Владимир; 8.1.04

Все это хорошо НО

если задать фильтр скажем DRIVE
то отфильтруются и DRIVE C и DRIVE AB и все похожее.
Как задать ТОЧНОЕ соответствие ???
Re: Филтьрация в Alarm Logging
Макс Прилепский ,ОАО "ЗСМК"; 9.1.04

Точное соответствие достигается строкой TEXT1 = 'DRIVE C' - если в БД WinCC есть сообщение с ТОЧНО таким же текстом (все символы до одного идентичны), то оно отобразится в WinCC Alarm Control. В случае с TEXT1 LIKE 'DRIVE'- будут отображены все строки, содержащие подстроку DRIVE.

В случае с TEXT1 LIKE 'DRIVE С'- будут отображены все строки, содержащие подстроку DRIVE С. <<br>