Зарегистрирован: Jun 28, 2010 Сообщения: 10 Рейтинг: +1/-0
Добавлено: Пн 02 Авг, 2010 13:47:36 Заголовок сообщения: Определение события первого скана
Всем доброго времени суток.
У меня интерес такой, есть задача построить отчет, для которого инструментарий даталога не подходит, очень сложно и муторно, описал принцип логирования данных сам, на VB, пишу в БД MS SQL.
Проблема следующая, если "некоторое" событие произошло - об этом создается запись в БД, а если сразу после этого, пока результат еще существует перезагрузить Скаду, то при перезагрузке событие будет снова опознано и о нем в БД будет добавлена еще одна, неверная по времени запись.(работает бесконечное количество раз)
Решение проблемы вижу в отбрасывании результатов, полученных на первом скане программы, но как их индицировать - ума не приложу. Битый час пялю глаз в объектную модель RSView, но ничего подходящего пока не нашел.
Вообще в такой ситуации надо не первый скан фильтровать, а сам факт перезапуска. С другой стороны, правильнее будет не фильтровать событие, а записать его с флагом первого скана.
Первый проход скрипта определить очень легко, просто заведя глобальную переменную, используя любой мемори-тэг, ну или можно еще чего придумать поизвращеннее...
Например,
Код:
dim Flag as Boolean
Private Sub ЧегонитьДелаем
If Not Flag Then
'вот тут и есть факт первого скана
Flag=True
'тут можно сделать чего надо и завершиться, например
'Exit Sub
End If
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
Smart Solutions VDT GmbH | Friedrich-List-Allee 38, D-41844 Wegberg-Wildenrath, Germany Tel.: +49 2432 933 57 83 | e-Mail: office@vdt-solutions.de Все товарные знаки и торговые марки являются собственностью их владельцев.
При использовании материалов сайта ссылка на данный сайт обязательна. Открытие страницы: 0.148 секунды