Переход на электронный документооборот (ЭДО) в устаревших конфигурациях, таких как 1С 7.7 «Торговля и Склад», вызывает множество вопросов у разработчиков и бухгалтеров. Основная дилемма заключается в выборе правильного формата документа и технической реализации выгрузки данных в соответствии с актуальными приказами ФНС. Разберем подробно, какие форматы использовать и как автоматизировать этот процесс.
Проанализируем текущую ситуацию в законодательстве. На сегодняшний день ФНС России настойчиво рекомендует использовать формат УПД (Универсальный передаточный документ). Рассмотрим основные причины:
DataMatrix корректно автоматизирована именно в формате УПД.DP_TOVTORGPR) постепенно вытесняется. Основным рабочим стандартом долгое время был приказ ФНС № 820, а с 2024 года в силу вступил новый приказ № ЕД-7-26/970@.Выясним разницу в структуре электронных файлов, которые часто упоминаются в модулях обмена:
Разберем, как подступиться к реализации выгрузки, если в вашей конфигурации «Торговля и Склад» (ТиС) нет встроенного функционала. Посмотрим на два основных пути решения задачи.
Самый надежный способ для 1С 7.7 — это использование внешних компонент и обработок от операторов ЭДО (Диадок, СБИС). Проанализируем их преимущества:
Операторы предоставляют готовые .ert обработки, которые умеют подключаться к базе через COM-соединение или работать как внешние отчеты. Они уже содержат актуальные схемы XSD и логику формирования XML-файлов. Однако, как отмечают специалисты, внедрение таких модулей в сильно измененные (нетиповые) конфигурации требует доработки кода в части сопоставления полей документов 1С и тегов XML.
Если вы решили писать выгрузку с нуля, рассмотрим структуру процесса. Выясним, какие инструменты потребуются для формирования файла формата УПД (например, по приказу № 820 или № 970).
Для работы с XML в 1С 7.7 традиционно используется объект MSXML2.DOMDocument. Проанализируем пример логики формирования заголовка файла:
// Создание объекта DOM для формирования XML
ДокументXML = СоздатьОбъект("MSXML2.DOMDocument");
УзелФайл = ДокументXML.createElement("Файл");
УзелФайл.setAttribute("ИдФайл", СформироватьИдентификаторФайла());
УзелФайл.setAttribute("ВерсПрог", "1C:7.7 TiS");
УзелФайл.setAttribute("ВерсФорм", "5.01"); // Для приказа 820
ДокументXML.appendChild(УзелФайл);
Важный нюанс: При формировании СЧФДОП необходимо строго соблюдать вложенность узлов. Сначала описываются сведения о продавце и покупателе (СвПрод, СвПокуп), затем сведения о товарах (ТаблСчФакт). Посмотрим на пример заполнения строки товара:
УзелСведенияТовар = ДокументXML.createElement("СведенияТовара");
УзелСведенияТовар.setAttribute("НаимТов", СокрЛП(Запрос.Товар.Наименование));
УзелСведенияТовар.setAttribute("ОКЕИ_Тов", Запрос.Товар.БазоваяЕдиница.Код);
УзелСведенияТовар.setAttribute("КолТов", Запрос.Количество);
УзелСведенияТовар.setAttribute("ЦенаТов", Запрос.Цена);
УзелСведенияТовар.setAttribute("СтТовБезНДС", Запрос.СуммаБезНДС);
Рассмотрим критические сложности, с которыми вы столкнетесь при работе с ЭДО на платформе 7.7:
V7Plus.dll, либо сторонние компоненты типа ADODB.Stream для перекодировки.curl) или писать обертку на .NET (C#).Проанализировав ситуацию, мы приходим к следующим выводам. Если перед вами стоит задача внедрения ЭДО в 1С 7.7:
Во-первых, откажитесь от формата ТОРГ-12 в пользу УПД (статус 1 или 2). Это избавит вас от проблем с маркировкой и обеспечит совместимость с требованиями контролирующих органов на годы вперед.
Во-вторых, если бюджет позволяет, приобретите готовый интеграционный модуль (например, от Контур.Диадок или СБИС). Даже если его придется «допиливать» под вашу специфику, это в разы быстрее, чем описывать сотни тегов XML по XSD-схемам ФНС вручную.
В-третьих, если вы пишете выгрузку самостоятельно, используйте актуальные XSD-схемы с сайта налоговой (приказ № 970), так как переходный период для старых форматов закончится 1 апреля 2025 года. Помните о необходимости корректного формирования узлов для передачи сведений о стране происхождения товара и номерах ГТД, что является обязательным требованием для электронных счетов-фактур.