Как интегрировать системы ЭДО с 1С:Предприятие 7.7?

Программист 1С v7.7 Бухгалтерский учет Торговля и дистрибуция
← На главную

Интеграция систем электронного документооборота (ЭДО) с платформой 1С:Предприятие 7.7 — задача, которая сохраняет свою актуальность для многих предприятий, использующих классическую систему учета. Поскольку платформа 7.7 не поддерживает современные стандарты API, используемые в облачных сервисах ЭДО, нам необходимо рассмотреть альтернативные способы обеспечения взаимодействия.

Вариант 1: Использование готовых интеграционных модулей

Первый путь, который мы можем рассмотреть — использование специализированных внешних обработок, предоставляемых операторами ЭДО. Многие крупные провайдеры, например СБИС, сохраняют поддержку своих модулей для конфигураций на платформе 7.7, в частности для «Торговля и Склад».

Преимущество этого метода заключается в том, что логика обмена данными, формирования XML-файлов по форматам ФНС и взаимодействия с криптографией уже реализована разработчиками модуля. Мы можем использовать готовый код как основу для адаптации под нетиповую конфигурацию:

  1. Скачайте актуальный модуль интеграции с сайта оператора ЭДО.
  2. Подключите внешнюю обработку в 1С через меню «Сервис» -> «Дополнительные возможности».
  3. Если ваша конфигурация сильно изменена, откройте исходный код модуля и скорректируйте процедуры сопоставления номенклатуры и контрагентов.
  4. Используйте готовые функции выгрузки данных из Справочника.Номенклатура и Документа.РасходнаяНакладная в формат, понятный оператору.

Вариант 2: Универсальный файловый обмен (рекомендуемый для малого бизнеса)

Для небольших компаний, где использование тяжелых API-интеграций экономически нецелесообразно, мы предлагаем метод «файлового шлюза». Этот подход избавляет от необходимости сложной настройки прямого взаимодействия с серверами ЭДО прямо из 1С. Суть метода заключается в разделении функций: подписание и отправка документов происходит в Web-интерфейсе провайдера, а 1С работает только с данными.

Разберем алгоритм работы по шагам:

  1. Входящие документы:

    Пользователь принимает и подписывает входящий документ в личном кабинете провайдера ЭДО. После утверждения документ сохраняется в формате XML (стандартный формат ФНС). В 1С создается внешняя обработка, которая считывает этот файл через объект Компонента Объекта или стандартные средства работы с XML в 7.7, и на его основе создает приходный документ в базе данных.

  2. Исходящие документы:

    Мы создаем в 1С отчет или обработку, которая выгружает документ (например, УПД) в стандартизованный XML-файл, отвечающий требованиям ФНС. Этот файл пользователь загружает в Web-интерфейс своего провайдера ЭДО, где документ проходит процедуру отправки, подписания и передачи контрагенту.

Технические рекомендации по реализации

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

Стандартизация: Так как форматы XML регламентированы приказами ФНС, однажды написанный парсер файлов будет работать с любым оператором (Диадок, СБИС и др.). Вам не нужно привязываться к конкретному провайдеру.

Автоматизация: Если ручная выгрузка файлов кажется утомительной, мы можем настроить так называемые «горячие папки». С помощью небольшой внешней утилиты на языке, поддерживающем работу с современными Web-API (например, Python или C#), мы можем отслеживать появление файла в папке, отправлять его на сервер и сохранять результат обратно.

Пример архитектуры обработки для загрузки XML:


// Пример логики чтения XML в 1С 7.7
ОбъектXML = СоздатьОбъект(\"Microsoft.XMLDOM\");
ОбъектXML.load(ПутьКФайлу);
КорневойУзел = ОбъектXML.documentElement;
// Далее производим разбор узлов документа через 
// методы selectSingleNode() или getElementsByTagName()

Таким образом, мы видим, что работа с ЭДО в 1С 7.7 вполне возможна. Выбирая между прямым модулем и файловым обменом, ориентируйтесь на объем документооборота и требования к автоматизации. Файловый обмен является самым надежным и универсальным решением, позволяющим не менять конфигурацию системы и не зависеть от изменений в API провайдеров.

← На главную