Ввиду того, что предложенный формат обмена данными между 1С-ми конфигурациями и системами Клиент-Банк, поддерживается только некоторыми банками, пришлось брать напильник и дотачивать обработку из конфигурации.
Так как загрузка выполняется из разных по структуре файлов обмена данными, пришел к мысли, что нужно реализовать на каждый файл свой обработчик.
Изменены в модуле объекта стандарные процедуры и функции:
- ЗаполнитьДокументыНаИмпорт - здесь вызываются обработчики распознавания файлов обмена и формируется таблица документов для импорта.
- ПолучитьДатуИзСтроки - добавлено распознавание дат в формате "дд.мм.гггг"
Выбор обработчика происходит автоматически исходя из МФО банка выбранного расчетного счета, который выбран на форме.
Какие форматы поддерживаются:
Банк | МФО | Тип файла для импорта |
ОТП | 300528 | файл Excel - реализовано 2 фарианта файла: - старый формат - тот, в котором заголовки на латинице типа "PAY_TYPE", данные начинаются со второй строки - новый формат - тот, в котором заголовки на русским языке и данные начинаются с первой стоки Выбор нужного вариатна делантся путем ответа на вопрос при нажатии кнопки "Прочитать данные из файла". Если неправильно ответили, не беда, настройка хранится в папке временных файло по пути "%TEMP%\НастрокиКлиентБанкаДляОТПБанка.txt". Достаточно просто удалить этот файл и прочитать данные заново. |
Сбербанки России | 320627 | DBF (реализована загрузка нескольких файлов одновременно, нужно в пути к файлу указать только путь к папке) |
Південний | хитрый формат *.ord | |
Камбіо | 394523,380399 | сам файл базы на Access |
УкрЕсІм Банк | 380333 | DBF |
СЕБ Банк (ФИДО Банк) | 300175 | 1c_to_kl.txt - этот файл имеет старую структуру 1С потому ее также нужно загружать по хитрому |
Приват24 | 300711 | DBF |
УкрСибБанк | 351005 | CSV |
КредиАгриколь | 300614 | DBF |
УниверсалБанк | 322001 | DBF |
Радикал | 319111 | XLS |
Аваль | 380805 | CSV |
Не реализован выбор путей к файлам загрузки в интерактивном режиме, так как у меня все пути записываются один раз и не изменяются, достаточно только скопировать и вставить при настройке путей загрузки выгрузки.
В некоторых случаях пришлось использовать регулярные выражения.
Код, может, не совсем причесан, но понять, что за чем, можно без усилий.
Если кому пригодится, буду рад.
UPD:
Дополнил еще одним банком, реализовал норальный выбор файлов и дополнил перечень форматов файлов при настройке импорта.
UPD 05.03.2016:
- Добавлено 3 банка Универсал, Радикал, Аваль
- Адаптирована обработка под релиз 1.2.34.3, для адаптации старой обработки после обновления необходимо в модуле обработки заменить "Локализация.СтрШаблон" на "Локализация.СтрШаблонУкр"