25 февраля, воскресенье 04:33
Bankir.Ru

Объявление

Свернуть

Приглашаем всех желающих на конференцию Bankir.ru о проблемах взаимодействия банков и МСБ

Показать больше
Показать меньше

Обработка событий в Pervasive (RS-bank)

Свернуть
X
  • Фильтр
  • Время
  • Показать
Очистить всё
новые сообщения

  • Обработка событий в Pervasive (RS-bank)

    Не знаю уж, насколько актуальна эта тема для уважаемых посетителей.
    У нас стоит задача наиболее оптимальным образом обработать события совершения изменений в РС-банке. С тем, чтобы далее обработать эти изменения в неких сторонних программах.
    Конечно, наиболее предпочтительно было бы сразу по свершению действия над данными запускать соответствующую внешнюю программу, но этого пока сделать не удается.
    Имел ли кто-нибудь опыт аналогичной борьбы с этим гадом?
    Используем PervasiveSQL2000.

  • #2
    1. Наиболее просто и весьма грубо (в С++ Builder 5.0) по таймеру (через 1-5 минут) выполнять SQL запросы и контролировать изменение количества записей. Используем для контроля количества электронных платежей в своей программе контроля документов.

    2. Более элегантно - запросить NT для получения оповещений об изменении файлов с нужными таблицами (нами пока не реализовано).

    Комментарий


    • #3
      CronNT - смотреть дату измененения файлов?
      Затем лезть с помощью API к этим базам?

      Комментарий


      • #4
        RS использует только транзакционный движок PSQL, поэтому посредством SQL "обработать события совершения изменений в РС-банке" невозможно.
        Зато многие операции изменения данных в RS можно контролировать используя вызываемые макросы (для счетов - account.mac, для документов - document.mac, postdoc.mac и т.д.). Все зависит от конкретных задач.

        Комментарий


        • #5
          Сделал тут бета-примочку для отслеживания изменений по счетам клиентов из заданного списка, которая в случае изменения текущих оборотов генерит выписки по e-mail. Сканирование идет с заданной периодичностью. В результате формируется файлик: клиент, счет, оборот дебет, оборот кредит. Эти данные сравниваются с текущими d0, k0. Если не равны - прошло изменение. Единственная дырка будет в случае когда документ покорежили не меняя сумму или заменили на суммарно равноценные документы. Тогда обороты не поменяются. Но в принципе можно контролировать и по списку документов данного счета, запоминая их Auto.
          И потом - что за проблема запустить внешнюю прогу?
          Можно организовать и так:
          - в рс-е крутится макрос отслеживания нужных изменений, который заполняет какую-то внешнюю таблицу
          - крутится внешняя прога, которая сканить внешнюю таблицу на предмет новых записей.
          Не все так плохо, как кажется с первого взгляда...

          Комментарий


          • #6
            ну ребята ..
            operlog сканируйте - да и все ...
            там всё есть ...

            Комментарий


            • #7
              Есть RSLog Spyder. Шерстит оперлог, в зависимости от действий над необходимыми табличками вызвает те или иные обработчики (поставляются DLL).
              Сначала хотел продать, но теперь раздаю. Только дайте время, мне нужно API для PlugIn-ов в божеский вид привести.
              PS. Все под C++Builder 5.
              + к этому раздаю компонент для доступа к табличкам RS-Bank (pas)
              Пишите alanf@mail.ru
              Жить надо так, чтоб тебя помнили сволочи!

              Комментарий


              • #8
                Извените, я не понял, а чем плоха журнализация Битрива(Первазива), вы будете не то что изменения в АБС знать, но и когда люди там логинятся. Настройка правда долгая и монотонная, но она хорошо описана Юлией Машковой в базе знаний Р-Стула.

                С уважением.

                Комментарий


                • #9
                  А есть ли заинтересованные в том, чтобы RS-bank реагировал на события не в момент начала операции, а по ее результату? Можно по b- или e-mail.

                  Комментарий

                  Пользователи, просматривающие эту тему

                  Свернуть

                  Присутствует 1. Участников: 0, гостей: 1.

                  Обработка...
                  X