Чтение содержимого zip-архивов для zakupki.gov.ru

20.02.24

Интеграция - Сайты и интернет-магазины

Еще одна вариация zip-архиватора, извлекающего текстовое содержание запакованных файлов напрямую в переменную.

Платные

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

Наименование Скачано Купить файл
(только для физ. лиц)
Тест чтения zip
.epf 217,25Kb
0 2 450 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний за 2430 руб. в месяц

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Те, кто сталкивался с ftp госзакупок, знают, что файлы там выкладывают в виде zip-архивов, содержащих наборы xml-файлов. При этом определить по имени архива и имени файла его содержание затруднительно. Для отбора файлов по конкретной организации применяют следующий алгоритм: скачивается архив, распаковывается, после чего каждый xml-файл проверяется по неким условиям. У нас, например, применялось условие что в xml находился нужный ИНН. Алгоритм работает, но медленно.

 
 Пример файла

Способов оптимизации получения файлов с ftp не искал, а вот алгоритм поиска нужных файлов, гоняющий гигабайты по жестким дискам, показался странным.

Зная структуру запакованных xml, можно сделать вывод что для поиска ИНН достаточно распаковать шапку файла, первые 100кБ будет достаточно. Однако архиваторов, которые могут частично распаковать zip не нашел. Говорят, что zip может работать с памятью, но не типовыми средствами 1с. В итоге из исходников была собрана внешняя native-компонента, которая может распаковать первые N байт из zip-архива и вернуть их в переменную. Жесткий диск при этом не используется.

Компонента собрана в 32 и 64-битном исполнении под Windows.

Не умеет практически ничего, кроме методов:

  1. ОткрытьАрхив(ПолноеИмяАрхива)
  2. РаспаковатьФайлВСтроку(ИмяФайлаВАрхиве,ЧитатьБайт) 
  3. ЗакрытьАрхив()
  4. Версия()

Все методы используются в тестовой обработке, суть их работы понятна из названия метода. ВК в макете.

 

 

Переменная ЧитатьБайт по умолчанию 0 - в этом случае метод вернет полностью содержимое xml, опять же без распаковки архива на диск. Поиск подстроки в этом случае будет выполняться долго (использую метод Найти) - рекомендую ограничивать шапку (но все равно быстрее чем файл распакуется на диск а потом будет прочитан). После открытия обработки следует подключить ВК.

Из недостатков: 

  1. не реализован поиск в целом архиве без перебора циклом запакованных xml
  2. проверялось исключительно на zip-архивах с госзакупок и платформах 8.3.20.1710 и 8.3.21.1895.
  3. работает на честном слове, а врут все)

 

upd: Добавил в обработку замер времени выполнения. Сравнивается типовой способ распаковки файлов и поиска в них как в текстовом документе и поиск с помощью компоненты. Замер выполнялся на уставшем бытовом ssd, в качестве архива выступал zip-архив из скрина выше (280 файлов общим объемом 1308651792 байта упакованных до 59146118 байт)

 
 Замер

 

 

внешняя компонента ВК ускорение zip архив госзакупки ftp память 223-ФЗ 44-ФЗ диск

См. также

Сайты и интернет-магазины 1С v8.3 1С:Розница 2 Розничная и сетевая торговля (FMCG) Россия Платные (руб)

Интеграция сервиса dolyame.ru с 1С:Розница 2.3 для приема платежей в рассрочку. Готовое интеграционное решение для оплаты покупок Долями в 1C:Розница 2.3. Реализовано в виде расширения. Интеграция сервиса dolyame.ru для приема платежей в рассрочку. Поддерживает работу от разных юридических лиц.Работа: в составе РИБ, отдельно от РИБ, тонкий, толстый клиент, web-клиент (через интернет-браузер).

22440 руб.

19.12.2023    8539    50    13    

48

Сайты и интернет-магазины 1С v8.3 1С:Розница 3.0 Розничная и сетевая торговля (FMCG) Россия Платные (руб)

Готовое интеграционное решение для оплаты покупок Долями в 1C:Розница 3.0. Реализовано в виде расширения. Интеграция сервиса dolyame.ru для приема платежей в рассрочку. Поддерживает работу от разных юридических лиц. Работа: в составе РИБ, отдельно от РИБ, тонкий, толстый клиент, web-клиент (через интернет-браузер). Интегрировано в Чек ККМ, Рабочее место кассира (РМК)

24000 руб.

02.11.2024    1789    13    1    

11

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь 1С v8.3 1C:Бухгалтерия 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    20218    26    24    

22

Сайты и интернет-магазины Интеграция WEB-интеграция 1С v8.3 1C:Бухгалтерия Управленческий учет Платные (руб)

Решение осуществляет синхронизацию задач Битрикс24 и 1С, что позволяет в одной системе ставить задачи, контролировать выполнение всего пула задач с группировкой по ответственным и проектам, формировать управленческие отчеты по работе сотрудников (загрузка, просроченные задачи), уведомлять сотрудников о ходе выполнения задач посредством чат-бот Telegram

7200 руб.

04.05.2021    21785    13    19    

19

Сайты и интернет-магазины Программист Бизнес-аналитик Пользователь 1С v8.3 1C:Бухгалтерия 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Управленческий учет Платные (руб)

Программа позволяет одним кликом настроить сбор цен ваших конкурентов или дилеров в интернете. Автоматически собирает данные результата поиска Яндекса (вам не придется вручную добавлять каждый сайт, за которым нужно следить). Обновление цен происходит по заданному вами расписанию автоматически. Можете легко отслеживать позиции вашего сайта в Яндексе по ключевым словам и фразам. Этот инструмент даст вам лучшее понимание того, как ваша SEO-стратегия влияет на видимость вашего сайта в поисковой выдаче, и поможет вам улучшить контент и структуру сайта для повышения его позиций. Функция доступна во всех тарифах.

19950 руб.

23.09.2019    31817    9    14    

31

Сайты и интернет-магазины 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 Россия Платные (руб)

Модуль выгрузки товаров услуг из 1С для сайта "Авито" раздел "Автозагрузка" выполнена в виде обработки. Обработка подходит для конфигураций УТ, УНФ и Розница. Данная обработка позволяет создавать шаблон с объявлениями для "Авито" - "Автозагрузка".

4200 руб.

07.06.2022    19875    45    56    

47
Оставьте свое сообщение