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

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

Как сохранить акт в 1С в формате XML

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

Задача сохранить акт из 1С в XML возникает при передаче документов контрагентам через ЭДО, при миграции данных между базами, при выгрузке для налоговой или аудиторской проверки. В отличие от печатной формы в PDF или Excel, XML содержит структурированные данные документа — реквизиты, табличные части, суммы — и читается другими программами автоматически.

Прямой команды «сохранить как XML» в стандартном меню документа нет: 1С предлагает несколько обходных путей, и выбор зависит от цели. Для обмена между базами 1С подходит универсальный формат EnterpriseData, для передачи в госорганы — утверждённые форматы ФНС, для разовой выгрузки — встроенная обработка «Выгрузка и загрузка данных XML» или программная запись через встроенный язык.

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

Определите цель выгрузки: от неё зависит формат XML

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

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

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

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

Нужно перенести акт в другую базу 1С той же конфигурацииИспользуйте обработку «Выгрузка и загрузка данных XML»
Акт отправляется контрагенту как официальный документВыгружайте через ЭДО в формализованном формате ФНС
Нужен произвольный XML под требования сторонней системыИспользуйте программную запись через ЗаписьXML или настройку обмена
Нет прав администратора и нужен один файлПопробуйте «Ещё → Выгрузить данные» в форме документа или попросите администратора выполнить выгрузку

Способ 1. Выгрузка через обработку «Выгрузка и загрузка данных XML»

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

Откройте обработку, перейдите на вкладку «Выгрузка». В дереве объектов конфигурации найдите нужный вид документа — например, «Акт об оказании услуг», «Реализация (акты, накладные)» или «Передача товаров». Установите отбор по периоду или по конкретному документу, чтобы не выгружать всю базу. Укажите имя файла и нажмите «Выгрузить данные».

Обработка выгружает объект целиком: реквизиты шапки, табличные части, ссылки на связанные справочники. При загрузке в другую базу ссылки разрешатся по GUID, поэтому конфигурации-источник и приёмник должны быть идентичны по структуре метаданных, иначе часть данных не загрузится.

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

Способ 2. Команда «Выгрузить данные» из формы документа

В ряде типовых конфигураций (Бухгалтерия предприятия, Управление торговлей, ERP) в форме документа доступна команда «Ещё → Выгрузить данные» или «Выгрузить в XML». Она формирует файл в формате обмена для загрузки в другую базу 1С. Наличие команды зависит от версии конфигурации и настроек прав.

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

Если команды нет — не ищите её в печатных формах: «Сохранить как» из окна печати предлагает только табличные форматы (MXL, Excel, PDF, HTML), XML там отсутствует. Переходите к обработке или программному способу.

Способ 3. Выгрузка через ЭДО в формализованном формате

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

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

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

Способ 4. Программная запись XML через встроенный язык

Когда типовые средства не дают нужного формата — например, сторонняя система ждёт собственную схему XML — документ выгружают кодом. Во встроенном языке 1С для этого служит объект «ЗаписьXML». Ниже минимальный пример выгрузки реквизитов акта в произвольную структуру.

Запись = Новый ЗаписьXML;

Запись.ОткрытьФайл("C:\Выгрузка\Акт.xml", "UTF-8");

Запись.ЗаписатьОбъявлениеXML();

Запись.ЗаписатьНачалоЭлемента("Акт");

Запись.ЗаписатьНачалоЭлемента("Номер");

Запись.ЗаписатьТекст(Строка(ДокументОбъект.Номер));

Запись.ЗаписатьКонецЭлемента();

Запись.ЗаписатьНачалоЭлемента("Дата");

Запись.ЗаписатьТекст(Формат(ДокументОбъект.Дата, "ДФ=yyyy-MM-dd"));

Запись.ЗаписатьКонецЭлемента();

Запись.ЗаписатьКонецЭлемента(); // Акт

Запись.Закрыть();

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

Проверка результата: как убедиться, что файл корректен

После выгрузки откройте XML-файл в браузере или текстовом редакторе. Браузер покажет дерево элементов и сразу сообщит об ошибке синтаксиса, если файл повреждён или обрезан. Убедитесь, что в файле присутствуют ключевые данные: номер и дата акта, контрагент, суммы, строки табличной части.

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

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

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

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

Отображается дерево элементов без сообщений об ошибке

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

Ошибка синтаксиса XML или пустой файл

Наличие данных документа
Норма

В файле есть номер, дата, контрагент, суммы, строки акта

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

Есть только служебные теги, данных документа нет

Кодировка
Норма

UTF-8, кириллица читается корректно

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

Каракули вместо русских букв — файл сохранён в другой кодировке

Загрузка в приёмник
Норма

Документ загружается в копию базы без ошибок

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

Ошибки разрешения ссылок или несовпадения формата

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

Чаще всего пользователи сохраняют печатную форму через «Сохранить копию» и получают Excel вместо XML — это не данные документа, а картинка таблицы. Вторая частая проблема — выгрузка всей базы вместо одного акта из-за незаданного отбора в обработке: файл получается огромным, и найти в нём нужный документ сложно.

Третья группа ошибок связана с правами: без доступа к внешним обработкам или к функции ЭДО команды выгрузки просто не видны. В этом случае обратитесь к администратору базы — самостоятельное обходное копирование данных из таблиц нарушает целостность и не даёт корректного XML.

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

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

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

Способ выгрузки акта в XML зависит от цели: обмен между базами — обработка «Выгрузка и загрузка данных XML», официальная передача — ЭДО с форматом ФНС, нестандартная схема — программная запись через ЗаписьXML. Всегда проверяйте файл после выгрузки и делайте резервную копию перед любой загрузкой данных.

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

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

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

Чем XML отличается от выгрузки в Excel или PDF?

Excel и PDF сохраняют внешний вид печатной формы для чтения человеком. XML сохраняет структурированные данные документа — реквизиты и табличные части — которые другая программа может загрузить и обработать автоматически без ручного ввода.

Будет ли XML-файл акта иметь юридическую силу?

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

Почему при загрузке XML в другую базу возникают ошибки ссылок?

Обработка переносит данные с привязкой к уникальным идентификаторам объектов. Если в базе-приёмнике нет контрагента, договора или номенклатуры с таким же идентификатором, ссылка не разрешается. Выгружайте связанные объекты вместе с документом либо сначала синхронизируйте справочники.

Как выгрузить сразу много актов за период?

В обработке «Выгрузка и загрузка данных XML» задайте отбор по периоду и организации — выгрузятся все документы выбранного вида за указанный интервал. Для регулярной массовой выгрузки настройте план обмена или регламентное задание с программной записью XML.

XML открывается, но русские буквы отображаются каракулями. Что делать?

Файл записан в кодировке, которую программа просмотра определила неверно. Стандарт для 1С — UTF-8. Откройте файл в редакторе с выбором кодировки (например, Notepad++) и пересохраните в UTF-8, а при программной записи явно указывайте кодировку вторым параметром метода ОткрытьФайл.