Чертоги Одина aka odin_palace
odin_palace — это инструмент для парсинга и анализа банковских выписок в формате 1CClientBankExchange.
Спецификация 1CClientBankExchange v1.03
Установка
Установка с crates.io:
Установка последней версии из репозитория:
Использование CLI
Для разбора банковской выписки предусмотрена команда:
где путь/к/файлу.txt — путь к файлу выписки в формате 1CClientBankExchange. Результатом выполнения является структурированное представление выписки, выводимое в стандартный вывод (stdout).
Пример входного файла
1CClientBankExchange
ВерсияФормата=1.02
Кодировка=Windows
Отправитель=Tinkoff
Получатель=Иванов Иван Иванович
ДатаСоздания=16.04.2024
ВремяСоздания=15:36:40
ДатаНачала=01.04.2024
ДатаКонца=16.04.2024
РасчСчет=40802000000000000007
СекцияРасчСчет
ДатаНачала=01.04.2024
ДатаКонца=16.04.2024
РасчСчет=40802000000000000007
НачальныйОстаток=0
ВсегоПоступило=67770
ВсегоСписано=0
КонечныйОстаток=67770
КонецРасчСчет
СекцияДокумент=Банковский ордер
Номер=481554
Дата=13.04.2024
Сумма=1000
ДатаСписано=13.04.2024
Плательщик=Петров Петр Петрович
Плательщик1=Петров Петр Петрович
ПлательщикСчет=30233000000000000004
ПлательщикИНН=7700000001
ПлательщикРасчСчет=30233000000000000004
ПлательщикКорсчет=30101000000000000005
ПлательщикБИК=044525593
ПлательщикБанк1=АО "АЛЬФА-БАНК"
Получатель=Сидоров Сидор Сидорович
Получатель1=Сидоров Сидор Сидорович
ПолучательСчет=40802000000000000007
ПолучательИНН=260000000002
ПолучательРасчСчет=40802000000000000007
ПолучательКорсчет=30101000000000000008
ПолучательБИК=044525974
ПолучательБанк1=АО "ТИНЬКОФФ БАНК"
ПолучательКПП=
ВидОплаты=17
НазначениеПлатежа=Оплата по договору
Очередность=5
КонецДокумента
КонецФайла
Использование как библиотеки
Для использования в качестве библиотеки добавьте зависимость:
Либо последнюю версию из репозитория в Cargo.toml:
= { = "https://github.com/tochka-public/odin_palace" }
Пример использования:
use Parser;
let content = read.unwrap;
let statement = default.parse.unwrap;
println!;