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