Прямой доступ к данным клиент банка Сбербанка РФ

21.06.12

Учетные задачи - Банковские операции

Данное решение является примером взаимодействия с данными клиент банка Сбербанка, показывает возможные способы обмена с произвольной конфигурацией 1С.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Convert
.zip 68,47Kb
30
30 Скачать (1 SM) Купить за 1 850 руб.

Возникла у меня на днях задача организовать прямой доступ к выпискам Сбербанка РФ, уже загруженным в клиент банк. Казалось бы ничего сложного, ADO, нужный OLE DB провайдер и вперед. Однако неисповедимы пути монополиста. Все данные лежат в таинственном ".ddf" формате, про который известно лишь то, что это разработка самого сбербанка, жутко секретная, шифрующая данные на лету итд итп. На  просторах интернетов однако удалось найти упоминание утилиты "convert.exe" которая умудряется данные эти извлекать, помещать в "dbase" или текст. В свободном доступе утилиты почему то не оказалось, специалисты банка предоставить её так же отказались, казалось бы почему? Это же мои данные! У меня и ключи все есть, дайте их прочитать. В мире не без добрых людей, я таки получил этот "программный продукт".

Утилита оказалась под ДОС. Она не умела работать с длинными именами файлов с пробелами, она не умела создавать "dbase" файл, а требовала, чтоб ей предоставили пустой с подготовленной структурой, соответствующий формату файла шаблона, который тоже необходимо было подготовить предварительно ручками.

Для её удобоваримого использования была придумана следующая схема:

  1. В планировщике по расписанию работает скрипт, который генерит "dbase" файл из ".ddf" файла
  2. Целевой софт (в моем случае это была БП 2.0) открывает этот "dbase" файл и обрабатывает как его душе угодно

Второй пункт интереса не представляет, поэтому расскажу о подводных камнях по первому пункту.

  • Данная утилита не будет работать на x64 операционной системе. Там больше нет виртуальной дос машины.
  • Данная утилита не воспринимает файлы шаблона с "неправильным" расширением.
  • Данная утилита не сможет работать с длинными именами файлов с пробелами, никаких Documents and settings

 

Скрипт реализован на Powershell. В заголовке файла Convert.ps1 необходимо указать пути до ваших данных.

Идея следующая:

  • Networkdir -это папка, где лежат: файл данных, шаблон конвертации ddf-dbf, пустой dbf файл.
  • Tempdir -это папка, где будут находиться временные файлы, создаваемые для работы утилиты конвертации.Не разрешены длинные имена, пробелы, сетевые пути.
    • vibor.ddf - файл данных клиента сбербанка, содержащий информацию о выписках
    • sbrf.obd - файл шаблона конвертации. В нем описывается откуда, куда и какие поля необходимо грузить
    • emptybank.dbf - пустой файл формата dbase III c заранее подготовленной под правила конвертации структурой

Так как скрипт работает параллельно целевой информационной системе,  и генерирует случайные имена файлов каждый раз при запуске, прибираться за собой во временном каталоге - его работа. При старте он удаляет все "dbf" файлы, кроме шаблона. После этого генерируются имена временных файлов, в которые будут помещены локальные копии необходимых файлов (ДОС программа не сможет работать по сети и с длинными именами). После генерации имен файлов необходимо отредактировать шаблон выгрузки, так как в нем указывается файл источник и файл приемник. Тут возникает неожиданная проблема: хотя файлы уже созданы - утилита их не видит. Помогла вставка задержки. ДОС программы вызываются асинхронно, скрипт не ждет, пока выполнится программа. Поэтому приходится ставить ещё одну задержку после вызова программы. После создания "dbf" файла  он копируется в общую папку для целевой программы. После исполнения скрипта программа подчищает за собой все временные файлы из папки временных файлов.

Отдельное спасибо Bill Stewart за его утилиту по замене строки в файлах.

См. также

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен и синхронизацию в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

27660 руб.

12.06.2017    143155    818    297    

426

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 10 Россия Управленческий учет Платные (руб)

Перенос данных из 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УТ 10.3 (10.3.88.x) и УТ 11.5 (11.5.20.x), также подходят для релиза 11.5 (11.5.19.x).

35000 руб.

23.07.2020    53199    234    73    

191

Внешние источники данных Программист Бизнес-аналитик Пользователь Платформа 1С v8.3 Управляемые формы Анализ и прогнозирование Конфигурации 1cv8 Узбекистан Беларусь Кыргызстан Молдова Россия Казахстан Платные (руб)

Готовое решение для автоматической выгрузки данных из 1С 8.3 в базу данных ClickHouse, PostgreSQL или Microsoft SQL для работы с данными 1С в BI-системах. «Экстрактор данных 1С в BI» работает со всеми типовыми и нестандартными конфигурациями 1С 8.3 и упрощает работу бизнес-аналитиков. Благодаря этому решению, специалистам не требуется быть программистами, чтобы легко получать данные из 1С в вашей BI-системе.

28500 руб.

15.11.2022    21497    21    49    

39

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УПП 1.3 (1.3.237.x) и БП 3.0 (3.0.166.x). Правила подходят для версии ПРОФ и КОРП.

35000 руб.

15.12.2021    24759    174    51    

131

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из ERP в ЗУП 3 | из КА 2 в ЗУП | Готовые правила конвертации данных (КД 2) для переноса остатков, документов с движениями и справочной информации 3 | Есть перенос начальной задолженности по зарплате и начальной штатной расстановки на выбранную дату | Обороты за прошлые годы (данные для расчета среднего) переносятся свернуто в документ "Перенос данных" | Есть фильтр по организациям | Документы за текущий период переносятся сразу с движениями, поэтому не потребуется делать перерасчеты | Перенос можно проверить перед покупкой, обращайтесь!

53111 47800 руб.

03.12.2020    37176    99    66    

95

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена | Можно выполнить переход с УПП на БП 3 или запускать выгрузку данных за выбранный период времени | Переносятся документы, начальные остатки и вся справочная информация | Есть фильтр по организации и множество других параметров выгрузки | Поддерживается несколько сценариев работы: как первичный полный перенос, так и перенос только новых документов | Перенос данных возможен в "1С: Бухгалтерия 3.0" версии ПРОФ, КОРП или базовую | Переход с "1С: УПП1.3" / "1С:КА 1.1" на "1С:БП3.0" с помощью правил конвертации будет максимально комфортным! | Можно бесплатно проверить перенос на вашем сервере!

48278 43450 руб.

25.02.2015    171938    307    258    

384

Внешние источники данных Зарплата Бюджетный учет Программист Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 7.хх учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

84000 руб.

24.04.2017    51778    104    165    

91

Зарплата Внешние источники данных Бюджетный учет Перенос данных 1C Системный администратор Программист Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 8 учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

120000 руб.

19.08.2020    25616    25    1    

27
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. director04 3660 22.06.12 09:21 Сейчас в теме
Плюс за пытливость ума
2. logos 216 22.06.12 09:25 Сейчас в теме
Спасибо, жизнь заставит, ещё не так вертеться придётся.
3. Модератор раздела 23.06.12 16:26 Сейчас в теме
(0) Поделись, зачем нужен прямой доступ к выпискам клиент-банка?
Опиши задачу, пожалуйста.
Интересно
4. logos 216 25.06.12 09:02 Сейчас в теме
Как обычно, отсутствие удобного всем регламента взаимодействия подразделений. В 1С выписки загружает бухгалтерия, когда ей удобно, совсем не в то же время, когда производится загрузка данных из банка. А отделу продаж информация об оплатах нужна как можно скорее. Чтобы не громоздить дополнительное рабочее место итд был реализован прямой доступ.
5. mdie 86 14.07.12 06:13 Сейчас в теме
Вам бы найти "динозавра" (в хорошем смысле), который еще помнит DOS и программирование под него, чтобы "расковырять" эту программку (хотя бы с целью алгоритмизации). А на основании этих полученных данных уже не проблемой было бы переписать под Win32 и даже х64. Хотя, как я подозреваю, должны быть подобные вещи (функционал convert.exe) и под Win, раз уж 1С функционирует с Клиент-банком и эти данные грузит и т.д.
Кстати без проблем нашел и файл convert.exe, и кое-какую документацию вот тут.
P.S. Оказывается все есть и для Win - только теперь это делается через их компоненту ConvIn1C.dll, которая поставляется вместе с КБ
6. logos 216 16.07.12 09:12 Сейчас в теме
(5) mdie,
По поводу первой ссылки, знакомился с документацией оттуда. В упор не вижу там самого файла конверт. Если не затруднит, ткните меня носом пожалуйста. Про ConvIn1C.dll - идея интересная надо покопать, как он работает, ком-ом или динамической линковкой
7. logos 216 16.07.12 09:25 Сейчас в теме
Покопался немного, ConvIn1C.dll возможно и будет выполнять функции конвертации, но задача ещё веселее, чем с convert.exe. Нужно раскопать её интерфейс, написать бинарник, который подгружает эту библиотеку, по сути - наваять софтину, которая будет конвертить под win32. Ещё б было на это время на работе помимо основных обязанностей 1сника :)
Оставьте свое сообщение