К статье
Практический материал

Документы и Печать · 11 мин

Как в 1С выгрузить акт сверки в формате XML

Пошаговая инструкция по выгрузке акта сверки взаиморасчётов из 1С в XML: типовые средства, обработки, универсальный обмен, проверка файла и типичные ошибки.

Акт сверки взаиморасчётов — один из самых часто запрашиваемых документов: контрагенты, аудиторы и банки нередко просят его не на бумаге, а в машиночитаемом виде. Формат XML удобен тем, что данные из него можно загрузить в другую учётную систему, сверить программно или передать через оператора ЭДО. В 1С выгрузить акт сверки в XML можно несколькими способами — от встроенных механизмов обмена до специализированных обработок.

Важно сразу понимать: в типовых конфигурациях (1С:Бухгалтерия 8, Управление торговлей 11, Комплексная автоматизация, ERP) нет отдельной кнопки «Сохранить акт сверки в XML». Кнопка «Сохранить как» в форме печати сохраняет табличный документ в форматах MXL, XLSX, PDF, ODS, HTML — но не в структурированный XML с данными. Поэтому задача решается либо через механизмы обмена данными, либо через выгрузку печатной формы в электронный документ, либо через обработку, которая сериализует данные документа.

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

Что именно нужно выгрузить: данные документа или печатную форму

Перед выгрузкой определите, какой результат требуется получателю. «Акт сверки в XML» может означать две разные вещи: структурированные данные документа (контрагент, период, таблица операций, сальдо) или электронный образ печатной формы, который визуально совпадает с бумажным актом.

Для загрузки в другую учётную систему нужен первый вариант — данные. Для передачи через ЭДО или для архива чаще достаточно электронного документа, который содержит и XML-описание, и визуальное представление. От этого выбора зависит инструмент: обмен данными выгружает содержимое документа, а механизм ЭДО формирует формализованный документ по печатной форме.

Маршрут решения

Как выбрать способ выгрузки

Контрагент просит файл для загрузки в свою 1С или другую учётную системуИспользуйте универсальный обмен данными в XML или обработку выгрузки данных документа
Нужно передать акт через оператора ЭДО с юридически значимым статусомФормируйте электронный документ из формы акта сверки через кнопку ЭДО
Нужен разовый файл для аудитора или банка без загрузки в системуСохраните печатную форму в Excel/PDF и дополнительно выгрузите данные через обработку

Способ 1: выгрузка через механизм ЭДО

Если в конфигурации включён обмен электронными документами, акт сверки можно отправить контрагенту как электронный документ, а его XML-составляющую — сохранить локально. В 1С:Бухгалтерии 8 акт сверки создаётся в разделе «Покупки» или «Продажи» → «Акты сверки расчётов с контрагентами» (в зависимости от версии расположение может отличаться).

Откройте сформированный акт, нажмите кнопку «ЭДО» (или «Отправить по ЭДО»). Программа сформирует электронный документ на основании печатной формы. Далее в карточке электронного документа доступна команда сохранения файла на диск — так вы получите XML-файл формализованного документа, который можно передать любым каналом, не только через оператора.

Условия применения способа: должен быть настроен и активен обмен электронными документами, у пользователя — права на работу с ЭДО. Если ЭДО в базе не используется, этот путь недоступен, и нужно переходить к обмену данными или обработкам.

Способ 2: универсальный обмен данными в XML

Обработка «Универсальный обмен данными в формате XML» — штатный инструмент фирмы «1С» для выгрузки объектов базы в XML по правилам обмена. Она подходит, когда нужно выгрузить сам документ «Акт сверки» как объект со всеми реквизитами и табличными частями.

Обработка поставляется в комплекте типовых конфигураций и доступна на диске ИТС. В некоторых конфигурациях она встроена в интерфейс (раздел «Администрирование» → «Обмены данными» или сервисные обработки). Для работы потребуются правила обмена между одинаковыми конфигурациями — их можно сформировать через настройку синхронизации данных или взять типовые.

Порядок выгрузки через универсальный обмен
  1. 1
    Откройте обработку «Универсальный обмен данными в формате XML» (файлом или из интерфейса конфигурации)
  2. 2
    Загрузите правила обмена, соответствующие вашей конфигурации
  3. 3
    На закладке выгрузки отметьте объект «Акт сверки расчетов с контрагентом» (или аналогичный документ вашей конфигурации)
  4. 4
    Настройте отбор: укажите период и конкретный документ или контрагента
  5. 5
    Укажите имя файла выгрузки и нажмите «Выгрузить данные»
  6. 6
    Откройте полученный XML в текстовом редакторе и проверьте наличие данных документа

Признак успешной выгрузки — файл ненулевого размера, внутри которого видны узлы с данными документа: ссылка, дата, контрагент, строки табличной части с суммами и документами расчётов. Если в файле только служебный заголовок без объектов — отбор не сработал, и нужно проверить настройки периода и отмеченные правила.

Способ 3: внешние обработки и самостоятельная выгрузка

Когда нужен XML строго определённой структуры — например, по шаблону контрагента или банка — типовых средств может не хватить. Тогда используют внешнюю обработку, которая программно формирует XML из данных документа. Готовые обработки выгрузки акта сверки встречаются на профильных ресурсах для 1С-специалистов; перед использованием их следует проверить на копии базы.

Программный вариант доступен и без готовой обработки: разработчик может сериализовать данные документа штатными средствами платформы. Для выгрузки в произвольный XML используется объект «ЗаписьXML», а для выгрузки объекта «как есть» — запись через механизм XDTO или функцию сериализации.

bsl
Запись = Новый ЗаписьXML;
Запись.ОткрытьФайл("C:\Temp\AktSverki.xml");
Запись.ЗаписатьОбъявлениеXML();
Запись.ЗаписатьНачалоЭлемента("АктСверки");
Запись.ЗаписатьАтрибут("Номер", Строка(Документ.Номер));
Запись.ЗаписатьАтрибут("Дата", Формат(Документ.Дата, "ДФ=yyyy-MM-dd"));
Запись.ЗаписатьКонецЭлемента();
Запись.Закрыть();

Пример выше формирует простейший файл с реквизитами документа. В реальной выгрузке внутрь добавляют цикл по табличной части с записями операций, сальдо на начало и конец периода, реквизиты договора и организации. Такой код выполняется через внешнюю обработку или консоль кода — только пользователем с достаточными правами.

Как проверить полученный XML-файл

После выгрузки обязательно откройте файл и убедитесь, что он содержит то, что ожидает получатель. XML можно просмотреть в любом текстовом редакторе или браузере: браузер дополнительно покажет ошибку, если структура файла нарушена (незакрытый тег, некорректные символы).

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

Контрольные точки

Как проверить результат

Файл открывается в браузере
Норма

Структура отображается без сообщений об ошибке XML

Тревожный признак

Браузер сообщает об ошибке разбора — файл повреждён или записан не полностью

Суммы в файле
Норма

Сальдо и обороты совпадают с печатной формой акта

Тревожный признак

Суммы отличаются или отсутствуют — выгружен не тот документ или пустая табличная часть

Реквизиты сторон
Норма

Указаны организация и контрагент с ИНН/КПП

Тревожный признак

Получатель не сможет идентифицировать стороны сверки

Кодировка файла
Норма

UTF-8, русские наименования читаются корректно

Тревожный признак

Символы отображаются «кракозябрами» — проблема с кодировкой при записи

Типичные ошибки и ограничения

Самая частая ошибка — попытка найти XML в списке форматов команды «Сохранить как» у печатной формы. Табличный документ в XML не сохраняется: предлагаемые форматы хранят внешний вид, а не структуру данных. Даже сохранение в Excel не даёт XML — это бинарный или пакетный формат Office.

Вторая ошибка — выгрузка документа без проверки его проведённости и заполненности. Если акт сверки не проведён или табличная часть не заполнена (некоторые конфигурации заполняют её кнопкой «Заполнить» по данным учёта), в файле окажется пустой или неполный набор данных. Перед выгрузкой откройте документ и убедитесь, что данные сверки присутствуют.

Третья группа проблем связана с правами. Выгрузка данных и работа с ЭДО требуют соответствующих прав; при их отсутствии команды будут недоступны или выгрузка завершится ошибкой доступа. В этом случае операцию должен выполнить пользователь с полными правами или администратор.

Типичные ошибки
01
Искать XML в «Сохранить как» печатной формы — там только MXL, Excel, PDF и подобные форматы, данных документа в них нет
02
Выгружать документ с пустой табличной частью — контрагент получит акт без операций и сумм
03
Передавать файл без проверки кодировки — русские наименования превращаются в нечитаемые символы у получателя
04
Запускать непроверенные внешние обработки в рабочей базе — риск повреждения или утечки учётных данных

Альтернативы, если XML не обязателен

Перед тем как настраивать выгрузку в XML, уточните у получателя, действительно ли нужен именно этот формат. На практике запрос «пришлите акт в электронном виде» часто означает PDF или Excel, которые сохраняются из формы печати в один клик: «Файл» → «Сохранить как» или кнопка сохранения на панели печатной формы.

Если цель — сверить расчёты программно, иногда проще обменяться файлами Excel: табличную часть акта можно скопировать или сохранить, а получатель загрузит её своей обработкой. XML оправдан, когда у сторон согласован формат обмена или документ передаётся через ЭДО.

Сравнение вариантов выгрузки

ЭДО из формы акта

Подходит для юридически значимой передачи контрагенту; требует настроенного обмена электронными документами

Универсальный обмен данными

Выгружает документ как объект базы для загрузки в другую 1С; нужны правила обмена и понимание структуры конфигурации

Внешняя обработка / код

Даёт XML произвольной структуры под требования получателя; требует разработки и тестирования на копии базы

PDF/Excel из печатной формы

Быстрый вариант для человека, а не для системы; не подходит для программной загрузки данных

Частые вопросы

Почему в списке форматов сохранения печатной формы нет XML?

Команда «Сохранить как» сохраняет табличный документ — то есть внешний вид печатной формы. Платформа 1С поддерживает для него форматы MXL, Excel, PDF, HTML и ряд других, но не XML с данными документа. Для выгрузки данных используются механизмы обмена, ЭДО или обработки.

Можно ли выгрузить акт сверки в XML без прав администратора?

Формирование электронного документа через ЭДО доступно обычному пользователю с правами на ЭДО. Универсальный обмен данными и запуск внешних обработок, как правило, требуют расширенных прав — в типовых конфигурациях эти функции скрыты у рядовых пользователей. Если команда недоступна, обратитесь к администратору базы.

Чем отличается XML из ЭДО от XML универсального обмена?

XML из ЭДО описывает электронный документ по согласованному формату (печатная форма плюс структурированные реквизиты) и предназначен для передачи контрагенту. XML универсального обмена описывает объект информационной базы — со ссылками, GUID и структурой конкретной конфигурации — и предназначен для загрузки в аналогичную 1С.

Получатель открыл файл, а там иероглифы вместо русских букв. Что делать?

Проблема в кодировке. Проверьте, что файл записан в UTF-8 (в объявлении XML должно быть encoding="UTF-8"). Если обработка пишет в другой кодировке, откройте файл в редакторе с поддержкой смены кодировки и пересохраните в UTF-8, либо скорректируйте параметры записи в обработке.

Можно ли выгрузить сразу все акты сверки за период одним файлом?

Да, в универсальном обмене данными отбор настраивается по периоду, и в файл попадут все документы, удовлетворяющие условиям. Для ЭДО каждый акт формируется отдельным электронным документом — пакетная выгрузка там не предусмотрена. Внешней обработкой можно реализовать любой вариант группировки.

Обязательно ли тестировать обработку на копии базы?

Настоятельно рекомендуется. Обработка выполняется с полным доступом к данным, и ошибка в коде может изменить или удалить учётные записи. Копия базы создаётся через выгрузку информационной базы в конфигураторе или средствами СУБД, а тест на копии занимает немного времени по сравнению с восстановлением данных.

Итог

Что важно запомнить

Прямой выгрузки акта сверки в XML из печатной формы нет: используйте ЭДО, универсальный обмен данными или обработку. Перед отправкой проверьте файл — суммы, реквизиты сторон и кодировку должны совпадать с печатной формой. Сторонние обработки запускайте только на копии базы.