2 марта, вторник 08:26
Bankir.Ru

Объявление

Свернуть
Пока нет объявлений.

Автоматизация форм отчетности (прием/отправка) ГУ ЦБ

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

  • Автоматизация форм отчетности (прием/отправка) ГУ ЦБ

    Доброго всем.
    На форуме нашел несколько подобных тем, но толком тяжело понять "массу" информации.
    Работает много bat-файлов на разных серваках, но чтобы объеденить, сделать единую базу по формам - это просто кошмар какой-то. В свзяи с этим прошу "помощь зала".
    Простые вопросы:
    1. Формы отчетности: 1459 (в составе 364П), 364П, 365, 311П, 321П (у нас установлена Comita, проблем с подписанием и шифрованием - нет), 652 (также проблем с КА не наблюдается, т.к. они всего лишь транспортные).
    2. 1459 - файлы поступают из ГУ ЦБ в заархивированном, зашифрованном и подписанном КА виде. Вопрос состоит в том: - можно ли посредствам Verba 6 сделать bat-файл, запуская его nncron, чтобы он снимал подпись с архивного документа, затем разаархивировав данные снимал ключи шифрования с *.xml документов, а затем и КА (ключ аутентификации)? Все это (естественно производилось автоматически). КА - не проблема, а вот с КШ, и её выбором в списке абонентов необходимого - напрягает.
    3. Есть ли у кого реализация сие отчетных форм в автоматическом режиме?

    PS У нас установлены: ПТК-ПСД, Verba 6, УТА (универсальный транспортный агент)
    PSS Если будут предложения помощи, то пишите в почту: isoclear@mail.ru

  • #2
    у нас реализованы автоматическая отправка и прием файлов с установкой подписей шифрованием архивированием итд. подписи лежат на харде в каталогах, дискетку эмулируем с помощью subst. для подписи шифрования и тд, используется пакетный режим SCSignEx.

    Комментарий


    • #3
      уважаемый, а где можно добыть сие пакетный режим SCSignEx ?

      Комментарий


      • #4
        Сообщение от CosX Посмотреть сообщение
        уважаемый, а где можно добыть сие пакетный режим SCSignEx ?
        Вообще-то вместе с программой идёт документация в которой и описано как с ней работать в пакетном режиме.

        Комментарий


        • #5
          да и на этой ветке вопросы автоматизации уже поднимались не раз

          Комментарий


          • #6
            rvroman, у CosX - ПТК ПСД (т.е. регион), а, если не ошибаюсь, SCSignEX тиражируется только в Москве.
            CosX, В ветке про автоматизацию обмена с ФНС были тексты батников для работы с Вербой. Кстати, arj архив спокойно распаковывается без снятия КА, т.е. первый шаг можно пропустить и работать сразу с DT*.

            Комментарий


            • #7
              Сообщение от admsam Посмотреть сообщение
              rvroman, у CosX - ПТК ПСД (т.е. регион), а, если не ошибаюсь, SCSignEX тиражируется только в Москве.
              Ну вопрос то вроде был про то где узнать про пакетный режим, а не сам SCSignEX, по крайней мере я его так прочитал. И кстати, региональные ТУ запрещают его использование или просто не раздают само ПО?

              Комментарий


              • #8
                Сообщение от admsam Посмотреть сообщение
                arj архив спокойно распаковывается без снятия КА, т.е. первый шаг можно пропустить и работать сразу с DT*.
                по регламенту КА нужно проверять

                Комментарий


                • #9
                  olgeir, не спорю, надо.

                  Комментарий


                  • #10
                    Да, к сожалению у нас ПТК-ПСД. Возможности автоматизации есть, но они настолько ужасны, что рассматривать их приходиться в последнюю очередь (да, и то, не все).
                    Мы "задались" вопросом автоматизации в едином пакетном режиме. Множество бат-файлов, крутятся по каждой отдельной форме, что сами понимаете, не очень.
                    В регламенте ГУ ЦБ категорически запрещается использовать автоматизацию ключевых дискет (т.е. без смены вручную дискет, ну никак нельзя). Тем не менее, ГУ ЦБ дает возможность хоть чуть-чуть автоматизировать сие убожество (аля шифрование и дешифрование документов).
                    Вопрос мой, может быть, был не совсем корректен, но согласитесь, такая "разница" по регионам в разных программах предоставления отчетности и настройки - это дурдом. Делать "залепухи" уже порядком надоело.

                    Комментарий


                    • #11
                      Сообщение от CosX Посмотреть сообщение
                      Множество бат-файлов, крутятся по каждой отдельной форме, что сами понимаете, не очень.
                      А объединить их в один? Мы, правда по астре отправляем/получаем, но всё свели в два батника: один готовит к отправке все формы, распознавая по имени файла, что с ним делать и один, который расшифровывает, проверяет и снимает подписи, распаковывает и, в зависимости от как имен файлов, так и внутренней информации, раскладывает по папкам, записывая всё в лог. С помошью IF (...) THEN (...), FOR (...) DO (...), CALL :метка. и GOTO :EOF можно объединить все батники в один. Если нужно, могу наши скинуть в приват, для примера, но для ПТК/ПСД их конечно придется переписывать.
                      Последний раз редактировалось Ssr; 05.03.2013, 12:53.

                      Комментарий


                      • #12
                        Буду вам очень благодарен.
                        Отправьте, пожалуйста, на этот адрес: isoclear@mail.ru
                        Я понимаю, что надо будет все "править" под себя. В этом проблемы нет. Главное понять принцип, а то в массе батников уже (честно говоря) запутался.

                        Комментарий


                        • #13
                          Сообщение от CosX Посмотреть сообщение
                          Отправьте, пожалуйста, на этот адрес
                          Отправил.

                          Комментарий


                          • #14
                            Ssr,
                            А можно и нам на lealegeo@bankir.ru

                            Заранее спасибо

                            Комментарий


                            • #15
                              Сообщение от Скорпион Посмотреть сообщение
                              А можно и нам
                              Выслал.

                              Комментарий


                              • #16
                                А можно и мне тоже? todd70@inbox.ru

                                Комментарий


                                • #17
                                  Коллеги, у нас то же проблема, с автоматизацией файлового обмена с ЦБ, работаем на nnCron, но он уже не справляется, просто много задач уже в нем крутится, так же он "подцепляет" разные батники, для отправки сообщений и т.д. Эта программка хоть и куплена нами, но она не развивается и новых версий не выпускается уже давно, поддержки соответственно то же нет.
                                  Последнее время стал часто виснуть и не отрабатывать задачи, тем самым подводя нас к нарушению различных регламентов... Назрел вопрос о замене с поддержкой. Хотелось бы знать мнение у кого и как все автоматизировано. Сажать отдельного человека на "будку обмена с ЦБ" у нас нет возможности... Спасибо.
                                  И если можно мне то же выслать av-video@list.ru

                                  Комментарий


                                  • #18
                                    перл поможет - для раскладки:
                                    PHP код:
                                    #
                                    # использовать только кодировку 866 (если чо - win2dos)
                                    #
                                    $fn=$ARGV[0];
                                    print 
                                    "Проверке на файл отчета из МГТУ $fn\n";
                                    $o='';
                                    $is_ies='kfm or p311';
                                    $dateo='';
                                    $t='';
                                    $regn='3120/1';
                                    $dir_otchet='Отчеты';
                                    while(
                                    $s=<>)
                                      {
                                       
                                    $t.=$s;
                                       if(
                                    $s=~m/Регномер КО\:(.*)/)
                                         {
                                          
                                    $regn=$1;
                                          print 
                                    "номер кредитной организации: $regn\n";
                                         }
                                       
                                       if(
                                    $s=~m/Код формы по ОКУД\: PROGNOZ/)
                                         {
                                          
                                    $o=203;
                                          
                                    $is_ies='';
                                         }
                                       if(
                                    $s=~m/Код формы по ОКУД\: ISROR/)
                                         {
                                          
                                    $o=136;
                                          
                                    $is_ies='';
                                         }
                                       if(
                                          (
                                    $s=~m/Код формы по ОКУД\: 0409(\d+)/)
                                          ||
                                          (
                                    $s=~m/Код формы по ОКУД\: 0403(\d+)/)
                                          ||
                                          (
                                    $s=~m/Код формы по ОКУД\: F(\d\d\d)/)
                                          ||
                                          (
                                    $s=~m/Код формы по ОКУД\: (\d\d\d)/)
                                          ||
                                          (
                                    $s=~m/Код пакета форм\: F(\d\d\d)/)
                                         )
                                         {
                                          
                                    $o=$1;
                                          
                                    $is_ies='';
                                         }
                                       if((
                                    $dateo eq '')and($s=~/(\d\d)\.(\d\d)\.(\d\d\d\d)/))
                                         {
                                          
                                    $dateo="$3.$2.$1";
                                          
                                    $dd=$1;
                                          
                                    $mm=$2;
                                          
                                    $yy=$3;
                                         }
                                      }

                                    if(
                                    $regn eq 3120)
                                      {
                                       
                                    #$dir_otchet.='_ГОЛОВА';
                                      
                                    }
                                    $dir_otchetw=Dos2Win($dir_otchetw);
                                    if(
                                    $o ne '')
                                      {
                                       
                                    evd_send($o);
                                       print 
                                    "Опознана форма: ".$o."\n";
                                       
                                    evd_copy($fn"O\:\\$dir_otchet\\F$o");
                                       exit;
                                      }

                                    if((
                                    $is_ies ne '')and($dateo ne ''))
                                      {
                                       if((
                                    $t=~m/A85494/)||($t=~m/A83713/))#
                                         
                                    {
                                          
                                    evd_send('p311');
                                          print 
                                    "Опознан p311 от ".$dateo."\n";
                                          
                                    evd_copy($fn"O:\\$dir_otchet\\P311");#$yy\\$yy-$mm\\$yy-$mm-$dd
                                         
                                    }
                                       else
                                         {
                                          if(
                                    $t=~m/PSEI/)
                                            {
                                             
                                    evd_send('p364');
                                             print 
                                    "Опознан p364 от ".$dateo."\n";
                                             
                                    evd_copy($fn"O:\\$dir_otchet\\P364");#\\$yy\\$yy-$mm\\$yy-$mm-$dd
                                            
                                    }
                                          else
                                            {
                                             
                                    evd_send('kfm');
                                             print 
                                    "Опознан KFM от ".$dateo."\n";
                                             
                                    evd_copy($fn"O:\\$dir_otchet\\KFM\\$yy\\$yy-$mm\\$yy-$mm-$dd");
                                            }
                                         }
                                      }
                                    else
                                      {
                                       
                                    # проверим что архив 311

                                      
                                    }

                                    sub evd_copy()
                                      {
                                       
                                    $from=shift;
                                       
                                    $to=shift;
                                       print(
                                    "mkdir \"$to\"\n");
                                       print(
                                    "move \"$from\" \"$to\\\"\n");

                                       
                                    $from=Dos2Win($from);
                                       
                                    $to=Dos2Win($to);
                                       
                                    system("mkdir \"$to\"");
                                       
                                    system("move \"$from\" \"$to\\\"\n");
                                      }

                                    sub evd_send()
                                      {
                                       
                                    my $o=shift;

                                       if((
                                    $o eq 350)||($o eq 101)||($o eq 102)||($o eq 250)||($o eq 405)||($o eq 402)||($o eq 251)||($o eq 212)||($o eq 601))
                                         {
                                          
                                    evd_netsend("Ответ из МГТУ по $o форме""BUHI");
                                         }
                                       if((
                                    $o eq 202)||($o eq 203)||($o eq 118)||($o eq 135)||($o eq 128)||($o eq 125)||($o eq 501603)||($o eq 302)||($o eq 316)||($o eq 711)||($o eq 501)||($o eq 136)||($o eq 350))
                                         {
                                          
                                    evd_netsend("Ответ из МГТУ по $o форме""GLAVBUH");
                                         }
                                       if((
                                    $o eq 101)||($o eq 134)||($o eq 135)||($o eq 118)||($o eq 115)||($o eq 116))
                                         {
                                          
                                    evd_netsend("Ответ из МГТУ по $o форме""OPERZAL");
                                         }
                                       if((
                                    $o eq 652)||($o eq 665)||($o eq 664)||($o eq 308))
                                         {
                                          
                                    evd_netsend("Ответ из МГТУ по $o форме""VALUTA");
                                         }
                                       if((
                                    $o eq 322)||($o eq 311)||($o eq 114))
                                         {
                                          
                                    evd_netsend("Ответ из МГТУ по $o форме""JURIST");
                                         }
                                       if(
                                    $o eq 'kfm')
                                         {
                                          
                                    evd_netsend("Ответ из МГТУ по KFM форме""FM");
                                         }
                                       if(
                                    $o eq 'p311')
                                         {
                                          
                                    evd_netsend("Для друга всех физкультурников! Ответ из МГТУ по P311 форме""ALEX");
                                         }
                                       if(
                                    $o eq 'p364')
                                         {
                                          
                                    evd_netsend("Ответ из МГТУ по P364 форме""ALEX");
                                         }
                                       if(
                                    $o eq 128)
                                         {
                                          
                                    evd_netsend("Ответ из МГТУ по $o форме""CREDIT");
                                         }
                                       if(
                                    $o eq 129)
                                         {
                                          
                                    evd_netsend("Ответ из МГТУ по $o форме""DEPOSIT");
                                         }
                                      }

                                    sub evd_netsend()
                                      {
                                       
                                    my $s=shift;
                                       
                                    my $to=shift;
                                       print 
                                    "send \"$s\" $to\n";
                                       
                                    $s=Dos2Win($s);
                                       
                                    system("send \"$s\" $to");
                                      }


                                    sub Dos2Win
                                      
                                    {
                                       
                                    my $s=shift;
                                       
                                    $s=~tr/\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF/\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF/;
                                       return 
                                    $s;
                                      }

                                    sub Win2Dos
                                      
                                    {
                                       
                                    my $s=shift;
                                       
                                    $s=~tr/\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF/\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF/;
                                       return 
                                    $s;
                                      } 

                                    Комментарий


                                    • #19
                                      CrazyDog, san25, отправил и вам.

                                      Комментарий


                                      • #20
                                        Сообщение от Ssr Посмотреть сообщение
                                        CrazyDog, san25, отправил и вам.
                                        Большое спасибо! Всё получил, изучаем

                                        Комментарий


                                        • #21
                                          Сообщение от Ssr Посмотреть сообщение
                                          CrazyDog, san25, отправил и вам.
                                          Спасибо получил!!!

                                          Комментарий


                                          • #22
                                            У нас проблема со снятием КА в файликах DT* формы 1459.

                                            Использую SCSignEx.

                                            Если делаю BAT файлом то не работает, если через интерфейс, то все ОК.

                                            команда выглядит вот так:

                                            Код:
                                            c:\crypt\SCSignEx.exe -r -lc:\crypt\filelist.txt -oc:\crypt\log.txt
                                            Причем не работает только на DT шках, все остальное великолепно канает.

                                            Никто не сталкивался с подобной проблемой?

                                            Комментарий


                                            • #23
                                              SSR, можно и мне для обмозгования кинуть в simta@narod.ru ?

                                              Комментарий


                                              • #24
                                                Сообщение от Ssr Посмотреть сообщение
                                                Если нужно, могу наши скинуть в приват, для примера, но для ПТК/ПСД их конечно придется переписывать.
                                                Добрый день! Пытаюсь настроить автоматизированную обработку. Отправьте, пожалуйста, на eprox@mail.ru Заранее спасибо!

                                                Комментарий


                                                • #25
                                                  Сообщение от Ssr Посмотреть сообщение
                                                  CrazyDog, san25, отправил и вам.
                                                  Добрый день коллега, поделитесь пожалуйста сокровищем
                                                  eldar.mamedov@mbr.ru

                                                  Комментарий


                                                  • #26
                                                    Сообщение от tAnk3o3 Посмотреть сообщение
                                                    Добрый день коллега, поделитесь пожалуйста сокровищем
                                                    eldar.mamedov@mbr.ru
                                                    доброе утро можно и мне это сокровище)) dimasrodrigues@mail.ru

                                                    Комментарий


                                                    • #27
                                                      Сообщение от Ssr Посмотреть сообщение
                                                      А объединить их в один? Мы, правда по астре отправляем/получаем, но всё свели в два батника: один готовит к отправке все формы, распознавая по имени файла, что с ним делать и один, который расшифровывает, проверяет и снимает подписи, распаковывает и, в зависимости от как имен файлов, так и внутренней информации, раскладывает по папкам, записывая всё в лог. С помошью IF (...) THEN (...), FOR (...) DO (...), CALL :метка. и GOTO :EOF можно объединить все батники в один. Если нужно, могу наши скинуть в приват, для примера, но для ПТК/ПСД их конечно придется переписывать.
                                                      Доброе утро, можно и мне получить сее ЧУДО?) lit_max@mail.ru
                                                      Заранее спасибо!

                                                      Комментарий


                                                      • #28
                                                        Сообщение от Зачет Посмотреть сообщение
                                                        Доброе утро, можно и мне получить
                                                        Под сегодняшнюю смену ключей правлю и вношу в них давно задуманные доработки. В понедельник отладим на новых ключах и вечером вышлю. Идет?

                                                        Комментарий


                                                        • #29
                                                          Сообщение от Ssr Посмотреть сообщение
                                                          Под сегодняшнюю смену ключей правлю и вношу в них давно задуманные доработки. В понедельник отладим на новых ключах и вечером вышлю. Идет?
                                                          Добро.

                                                          Комментарий


                                                          • #30
                                                            можно и мне на vskiper@mail.ru

                                                            Комментарий

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