Совместное использование InterBank-a и ВПС(Палаты)

0 (0)
  • Развернуть Совместное использование InterBank-a и ВПС(Палаты) ( Zaur  06.10.2003 15:27 )
    5(1)
    Добрый день.
    В нашем банке параллельно используются обе системы. И каждый раз при переходе к новым сборкам и версиям мы испытываем трудности с совместным использованием этих систем. Вернее в БОУРМЕ до сих пор не появилось никаких механизмов или средств для передачи документов поступивших от клиентов в ВПС. Почему такая несправедливость? 8)
    >> Ответить
    • Развернуть От Вас нужны некоторые уточнения (+) ( Иванов Виктор  07.10.2003 13:29 )
      5(1)
      Здравствуйте!
      Вы подняли довольно интересную для нас тему. Мы не против реализовать такие средства, но нам нужно более точно представить себе, что требуется, а значит и въехать в технологический процесс обработки таких документов. Если у Вас есть хоть набросок описания того, что Вам необходимо, то вышлите мне, пожалуйста.
      vivanov@softlab.ru

      Спасибо!

      >> Ответить
    • Развернуть Ответ (+) ( <B>Alex</B>  08.10.2003 18:39 )
      5(1)
      Попытаюсь ответить в форуме на прошедшую мимо переписку:

      > ... Прямой связи БОУРМ - ВПС не нужно, т.к. платежи попадают в РС-Банк, в список отложенных, для дальнейшего контроля операционистом (или еще для чего 8) ), т.е. на начальном этапе формирования документов для ВПС. Достаточно чтобы в момент заброски в отложенные к документу приставлялся SWIFT-хвост. Операционисты соответственно будут видить документы в списке введенных документов ВПС (дополнительное меню в Многовалютном ОДБ).
      До версии БОУРМ-а 5.20 , т.е до применения ДЛМ модулей все было проще в реализации. В конец файла CLTXTDOC.MAC добавлялось что-то вроде:
       If (Отложенный.MFO_Receiver != "")
         Отложенный.ApplicationKey   = GetApplicationKey();
         Отложенный.iApplicationKind = 8;
         MakeSWIFT_Tail_MT103(Отложенный);
       End;
      
      Функция создания "хвоста" наше "детище" собранное по кускам из макросов ВПС.
      С переходом на последнюю сборку БОУРМ-а 5.20.12 пришлось решать проблему "приделывания хвостов" обходным путём. Теперь когда операционист видит в отложенных документ от клиента, он за пускает макрос в котором для таких записей из postdoc.dbt запускается наш "создательхвостов"...


      В БОУРМ версии 5.2 все тоже самое можно сделать либо в макрофайле arSpec.mac, либо в iabsdwIm.mac. Первый вызывается непосредственно перед вставкой записей в БД банка, последний непосредственно в момент вставки, в нем можно преопределить метод insert().

      В любом из этих макросов, через метод _GetImplementation() объекта документа можно получить доступ к структуре postdoc.dbt (т.е. Отложенный из CLTXTDOC.MAC), соответственно возможно как угодно поправить или заполнить любые поля в ней. Так же можно добавить вставку любых других записей в любые таблицы банка. Для этого достаточно в список, возвращаемый _GetImplementation(), добавить заполненные TRecHandler'ы этих записей. Если для Вас критично, чтобы ApplicationKey/iApplicationKind имел определенное значение, можно переопределить и его, только при этом так же надо будет присвоить значение вида string(iApplicationKind) + " " + ApplicationKey свойству id объекта документа, и поправить во всех связанных записях списка (если таковые есть) поля ApplicationKey/iApplicationKind.

      >> Ответить
      • Развернуть А как обращатся к таблицам РС-Банка из этих макросов? (+) ( Zaur  20.10.2003 14:31 )
        5(1)
        Для использования "любых таблиц банка" достаточно только создать объект типа TRecHandler и поместить его в IABSObjectVariableList, используя метод add?
        Если таблица описана в bank.def, то TRecHandler("xxxxx.dbt", ABSGetInterface()._GetDefFile())
        Кроме этого нужны файлы описанные не только в bank.def.
        К таким файлам нужно обращатся как в режиме чтения, так и записи.
        Если путь к этим файлам прописан в bank.ini, тогда как?

        >> Ответить
        • Развернуть Небанковские таблицы (+) ( <B>Alex</B>  20.10.2003 16:12 )
          5(1)
          С помощью ABSGetInterface()._GetDataBaseDir() можно получить путь до каталога БД банка, соответственно доступ к таблицам описанным не в bank.def можно получить так:
          TRecHandler("xxxxx.dbt", ABSGetInterface()._GetDataBaseDir() + "небанк.def")
          
          TBFile("xxxxx.dbt", "атрибуты_доступа", номер_ключа, ABSGetInterface()._GetDataBaseDir() + "имя_файла", ABSGetInterface()._GetDataBaseDir() + "небанк.def")
          
          Одно НО, такие записи сейчас нельзя добавлять в список _GetImplementation(), их надо ручками вставлять в БД. В будущих сборках, возможно это ограничение снимем.

          >> Ответить
          • Развернуть Резонный вопрос (+) ( Zaur  20.10.2003 16:59 )
            5(1)
            Почти всё понятно кроме:
            1. В чем преимущество добавления дополнительных таблиц описанных в bank.def в список _GetImplementation
            если можно напрямую с ними работать?

            2. Есть ли в интерфейсе к АБС методы позволяющие обращатся к bank.ini?

            Спасибо.
            >> Ответить
            • Развернуть Ответ (+) ( <B>Alex</B>  20.10.2003 20:28 )
              5(2)
              > 1. В чем преимущество добавления дополнительных таблиц описанных в bank.def в список _GetImplementation
              если можно напрямую с ними работать?


              Здесь преимущество в системности решения. В настоящее время длмы грузятся локально (т.е. в основной процесс на том же компьютере) и работать с БД банка действительно можно напрямую. Но так будет не всегда. Через какое-то время длмы можно будет грузить удаленно (другой компьютер, другой процесс), при таком раскладе БД банка может быть просто недоступна. Соответственно решение основанное на _GetImplementation будет работать всегда, решение "напрямую" - не всегда.

              > 2. Есть ли в интерфейсе к АБС методы позволяющие обращатся к bank.ini?

              Нет. Для работы с инишниками помнится были спец. длмы. В генераторе клиентских дистрибутивов БОУРМа используется profile.d32. Набор ф-ций сейчас не вспомню, но можно посмотреть в genDistr.mac.
              >> Ответить
          • Развернуть А щас как дело обсоит? Воды уже много утекло, может что поменялось? (-) ( Zaur  12.07.2004 15:49 )
            5(1)
            Not specified
            >> Ответить