Справочники и Данные · 9 мин
Формат XML в 1С: как выгрузить данные
Практичная инструкция по выгрузке XML из 1С: выгрузка справочников, документов, обработка «Выгрузка и загрузка данных XML», план обмена и проверка результата.
XML — один из основных форматов обмена данными в 1С: через него переносят справочники, документы и целые информационные базы между конфигурациями, а также выгружают данные для сторонних систем. Практически любой объект 1С можно представить в виде XML-файла, и для этого не обязательно быть программистом — большинство задач решается штатными средствами.
Путь выгрузки зависит от того, что именно нужно получить: один документ «для просмотра», справочник целиком, данные для переноса в другую базу 1С или файл по спецификации внешней системы. В каждом случае используется свой механизм, и у него есть свои ограничения.
Ниже разобраны основные способы: выгрузка отдельного объекта, универсальная обработка «Выгрузка и загрузка данных XML», планы обмена, выгрузка печатных форм и программный метод. Для каждого указаны условия применения, порядок действий и способ проверить результат.
Какой способ выгрузки XML выбрать
Прежде чем открывать обработки, определите назначение файла. От этого зависит и инструмент, и структура XML, и риски.
Если файл нужен для переноса данных между базами 1С (например, из копии в рабочую базу или между одинаковыми конфигурациями), правильный путь — универсальная обработка обмена. Она сохраняет ссылки между объектами: контрагенты, договоры и документы после загрузки останутся связанными.
Если XML требуется внешней системе — сайту, банку, маркетплейсу, налоговой — обычно действует строгая спецификация (схема XSD). Здесь штатная выгрузка не подойдёт: используются типовые механизмы обмена конкретной конфигурации (например, CommerceML для сайтов) или специализированные отчёты и обработки.
Как выбрать действие
Выгрузка отдельного объекта в XML
Самый простой случай — выгрузить один элемент справочника или документ. В типовых конфигурациях на управляемых формах откройте объект, нажмите «Ещё» и поищите команду «Выгрузить в файл» или «Выгрузить в XML». Её наличие зависит от конфигурации и прав пользователя.
Полученный файл содержит объект в универсальном формате обмена 1С. Открыть его «для чтения глазами» можно в любом текстовом редакторе или браузере, но править вручную не рекомендуется: ошибка в структуре сделает файл нечитаемым при загрузке.
Если такой команды в форме нет, объект можно выгрузить через универсальную обработку (см. следующий раздел), указав отбор по конкретной ссылке.
Универсальная обработка «Выгрузка и загрузка данных XML»
Это основной инструмент переноса данных между базами. Обработка входит в состав конфигураций на БСП (Библиотека стандартных подсистем) и доступна по пути «Администрирование» → «Обслуживание» → «Выгрузка и загрузка данных» либо как внешняя обработка с диска ИТС.
Порядок работы: откройте обработку, перейдите на вкладку «Выгрузка», отметьте флажками нужные объекты метаданных (справочники, документы, регистры), задайте имя файла и нажмите «Выгрузить данные». Для документов обычно задают период выгрузки — это резко сокращает объём файла.
Ключевое ограничение: конфигурации базы-источника и базы-приёмника должны совпадать по структуре метаданных. Иначе часть объектов не загрузится или загрузится с потерей реквизитов. Перед переносом сверьте релизы обеих баз.
- 1Сделайте резервную копию базы-приёмника перед любой загрузкой
- 2Откройте обработку «Выгрузка и загрузка данных XML» в базе-источнике
- 3На вкладке «Выгрузка» отметьте нужные виды объектов и задайте период для документов
- 4Укажите файл выгрузки и нажмите «Выгрузить данные»
- 5Дождитесь окончания и проверьте протокол: количество выгруженных объектов и отсутствие ошибок
- 6Откройте файл в редакторе и убедитесь, что он начинается с XML-заголовка и содержит данные
Выгрузка через планы обмена и типовые обмены
Если обмен нужен регулярно — например, между «Управлением торговлей» и «Бухгалтерией» или с сайтом — используют планы обмена. Это встроенный механизм, который отслеживает изменённые объекты и выгружает только их.
Настройка выполняется в разделе «Администрирование» → «Обмен данными» → «Настройки обмена данными». Мастер предложит выбрать программу-корреспондента, состав обмена и расписание. Результатом работы будет XML-файл сообщения обмена в указанном каталоге.
Для обмена с сайтами типовые конфигурации используют формат CommerceML: выгрузка каталога товаров и цен настраивается в узле обмена с сайтом, файл формируется автоматически по расписанию или по кнопке «Выполнить обмен».
Выгрузка печатных форм и отчётов
Частая задача — получить печатную форму документа в виде файла. Здесь XML как таковой обычно не нужен: табличный документ сохраняется через «Файл» → «Сохранить как» в форматы MXL, XLSX, PDF, HTML. XML в списке форматов сохранения табличного документа тоже присутствует, но это «плоский» XML представления таблицы, а не данные объекта.
Для отчётов, которые сдаются в контролирующие органы (декларации, статистика), выгрузка выполняется из самого отчёта кнопкой «Выгрузить» — формируется файл строго по утверждённому формату ФНС или Росстата. Проверить такой файл можно кнопкой «Проверить выгрузку» до отправки.
Программная выгрузка через ЗаписьXML
Когда штатных средств не хватает — нужен файл по спецификации внешней системы — выгрузку пишут на встроенном языке с помощью объекта ЗаписьXML. Минимальный пример формирования файла со списком номенклатуры:
Запись = Новый ЗаписьXML;
Запись.ОткрытьФайл("C:\Обмен\nomenclature.xml", "UTF-8");
Запись.ЗаписатьОбъявлениеXML();
Запись.ЗаписатьНачалоЭлемента("Товары");
Выборка = Справочники.Номенклатура.Выбрать();
Пока Выборка.Следующий() Цикл
Запись.ЗаписатьНачалоЭлемента("Товар");
Запись.ЗаписатьАтрибут("Код", Строка(Выборка.Код));
Запись.ЗаписатьАтрибут("Наименование", Выборка.Наименование);
Запись.ЗаписатьКонецЭлемента();
КонецЦикла;
Запись.ЗаписатьКонецЭлемента();
Запись.Закрыть();
Для сериализации объектов целиком используют ЗаписатьXML из глобального контекста — объект записывается в каноническом формате 1С. Такой файл подходит для загрузки через ПрочитатьXML в другой базе той же конфигурации.
Программную выгрузку разумно оформлять как внешнюю обработку или регламентное задание, чтобы пользователи могли запускать её без конфигуратора.
Проверка результата и устранение проблем
После выгрузки откройте файл в браузере или редакторе с подсветкой XML: документ должен начинаться с объявления <?xml version="1.0" encoding="UTF-8"?> и иметь один корневой элемент. Браузер покажет ошибку разбора, если структура нарушена.
Сверьте количество выгруженных объектов с ожидаемым: в протоколе обработки указано, сколько объектов каждого типа записано. Для контрольной проверки загрузите файл в тестовую копию базы и сравните обороты или количество элементов справочника.
Как проверить результат
Дерево XML отображается без ошибок разбора
Сообщение об ошибке синтаксиса или пустая страница
UTF-8, кириллица читается корректно
Иероглифы или знаки вопроса вместо русских букв
Количество выгруженных объектов соответствует отбору, ошибок нет
Нулевое количество объектов или строки с ошибками
Объекты загружаются в копию базы, ссылки не битые
Объекты-дубли, незаполненные реквизиты, ошибки загрузки
Частые вопросы
Можно ли выгрузить данные в XML без прав администратора?
Выгрузка отдельных объектов через «Ещё — Выгрузить в файл» доступна при наличии прав на чтение объекта. Универсальная обработка и планы обмена обычно требуют прав администратора или специальной роли «Выполнение обмена данными».
Чем отличается выгрузка в XML от выгрузки в Excel?
Excel (XLSX) сохраняет только видимую таблицу — результат отчёта или список. XML сохраняет сами данные объектов со ссылками, иерархией и служебной информацией, поэтому подходит для переноса между базами и интеграций.
Файл выгрузился, но при загрузке в другую базу ошибки. Что делать?
Чаще всего причина — разные релизы конфигураций. Обновите обе базы до одной версии и повторите выгрузку. Также проверьте, что файл не редактировался вручную и сохранён в UTF-8.
Как выгрузить в XML только часть справочника?
В обработке «Выгрузка и загрузка данных XML» для объектов можно задавать отбор: откройте настройки строки с нужным видом объекта и добавьте условие, например по группе номенклатуры или по дате документа.
Чем открыть и посмотреть содержимое XML-файла из 1С?
Подойдёт любой браузер, «Блокнот», Notepad++ или сама 1С через ЧтениеXML. Для больших файлов удобнее редакторы с подсветкой синтаксиса — браузер может зависнуть на файле в сотни мегабайт.
Можно ли автоматизировать выгрузку XML по расписанию?
Да. Настройте план обмена с расписанием или создайте регламентное задание, которое вызывает процедуру выгрузки через ЗаписьXML и складывает файлы в общий каталог.
Что важно запомнить
Способ выгрузки XML выбирается по назначению файла: одиночный объект — через форму, перенос между базами — обработкой «Выгрузка и загрузка данных XML», регулярный обмен — планом обмена, произвольный формат — программно через ЗаписьXML. Перед загрузкой в рабочую базу всегда делайте копию и проверяйте файл на тестовой базе.