Получение текущих данных входного канала в драйвере

Стартовая страница Форумы Разработка и интеграция Получение текущих данных входного канала в драйвере

Просмотр 8 сообщений - с 1 по 8 (из 8 всего)
  • Автор
    Сообщения
  • #10523
    Romiros
    Участник

    Возможно ли из драйвера коммуникатора обратится к текущим данным канала привязанного к сигналу?
    Смысл в том, чтобы писать в RapidScada архивные и текущие данные из БД MSSQL, и в один служебный канал по каждому объекту заносить время последней записи архива(это поле из MSSQL). Чтобы выполнять запрос архивов из БД, время записи которых больше времени записанного в текущие данные выбранного канала. Может есть способ проще?
    Я пробовал хранить эту запись в xml, но не надёжно, файл может испортиться при ненормальном завершении процесса ServerComm.

    #10524
    manjey73
    Участник

    Вроде Михаил как-то писал что из Коммуникатора недоступны БД.

    #10525
    Romiros
    Участник

    Может что-нибудь изменилось. Система не стоит на месте. Можно конечно организовать подключение через API в самом драйвере Kp, но вдруг проще можно.

    #10535
    Mikhail
    Модератор

    Можно конечно организовать подключение через API в самом драйвере Kp

    Так можно, но для данного случая слишком громоздко.

    чтобы писать в RapidScada архивные и текущие данные из БД MSSQL

    Вероятно, в этом году мы разработаем драйвер, который берёт из БД текущие данные. Но по архивам задачи пока не ставилось. Работа с архивами более специфична для каждой конкретной базы.
    На мой взгляд, проще всего писать в ту самую базу, из которой читаете. Либо сохранять в файл. Чтобы защититься от повреждения файла, можно старый файл не перетирать, а копировать с другим именем и в случае ошибки читать из старого.

    #10838
    baur
    Участник

    Возможно ли из драйвера коммуникатора обратится к текущим данным канала привязанного к сигналу?

    не проще ли обратиться к минутным данным, если не онлайн система.

    Я вот думаю писать утилиту, который следить за файловой системой, как только появится новый файл с минутным архивом тут же записывает в БД. Думаю, это лучше, чем писать в БД впрямую с функционалом текущего модуля. Текущий модуль слишком загружает БД, таблицы часто попадает в блокировку (у меня кроме Insert БД делает лишние движения для фильтрации и т.д.) все это усложняется с тем, что в БД параллельно пишет несколько экземпляров сервера. Из-за блокировок потом даже трудно читать данные.

    Вероятно, в этом году мы разработаем драйвер, который берёт из БД текущие данные

    да, это было бы кстати

    #10845
    Romiros
    Участник

    С текущими данными проблем нет. Сложнее с архивами и событиями. Проверка наличия файла тут не поможет. Решил писать в xml, с промежуточной копией, как посоветовал Михаил.

    #10847
    Mikhail
    Модератор

    Вероятно, в этом году мы разработаем драйвер, который берёт из БД текущие данные

    Войдёт в следующую версию.

    #10848
    Mikhail
    Модератор

    Я вот думаю писать утилиту, который следить за файловой системой, как только появится новый файл с минутным архивом тут же записывает в БД.

    Лучше заказать нам ))

Просмотр 8 сообщений - с 1 по 8 (из 8 всего)
  • Вы должны авторизироваться для ответа в этой теме.