Выгрузка XML-файла из 1С: УПД, отчёты, обмен и свои обработки

· 10 мин

Содержание

Чтобы скачать XML из 1С 8.3, сначала решите, какой файл вам нужен. Если покупателю нужна реализация в электронном виде, откройте документ «Реализация (акт, накладная, УПД)» и выгрузите его через меню ЭДО в файл. Получится XML по формату ФНС. Декларация выгружается кнопкой Выгрузить в форме регламентированного отчёта. Перенос справочников и документов в другую базу делают через Администрирование → Синхронизация данных или отдельной обработкой выгрузки.

Кнопки «Сохранить как XML» у печатной формы нет. Табличный документ сохраняется в PDF, Excel, Word, HTML и MXL, но не в XML. Поэтому путь зависит от того, кто будет открывать файл: покупатель, налоговая, другая база 1С или внешняя система.

Какой XML получится из 1С: четыре разных задачи

Название «XML-файл» объединяет форматы, которые друг с другом несовместимы. УПД покупателя не загрузится в другую базу как документ, а файл обмена не примет налоговая. Определитесь с задачей по таблице.

Что нужноФормат файлаГде делаетсяКто откроет
Отдать реализацию покупателю без оператора ЭДОУПД / накладная по формату ФНСФорма документа, меню ЭДОУчётная система покупателя
Сдать отчёт вручную через сайт или другую программуФормат ФНС, СФР, РосстатаФорма регламентированного отчётаКонтролирующий орган
Перенести данные в другую конфигурацию 1СEnterpriseDataАдминистрирование → Синхронизация данныхДругая база 1С с поддержкой формата
Скопировать объекты в такую же базуВнутренний XML платформыОбработка «Выгрузка и загрузка данных XML»Только база с той же конфигурацией
Отдать данные сайту, банку, своей системеСвой формат по согласованной схемеВнешняя обработкаСистема, под которую писали обработку

💡 Если вам прислали описание формата (XSD-схему или пример файла), это почти всегда последняя строка таблицы. Типовые механизмы такой файл не соберут.

Что проверить до выгрузки XML

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

  • 🏢 Реквизиты организации. ИНН, КПП, адрес и руководитель заполнены в карточке организации. Без них файл УПД не пройдёт проверку формата у получателя.
  • 🤝 Реквизиты контрагента. У покупателя указаны ИНН и КПП, для юрлица — полное наименование. Пустой КПП у организации даст ошибку при загрузке у покупателя.
  • 📦 Номенклатура. Единицы измерения с кодом по ОКЕИ, ставки НДС в строках. Для маркированных и прослеживаемых товаров — коды маркировки и РНПТ.
  • ✅ Документ проведён. Непроведённый или помеченный на удаление документ выгружать нельзя — получатель увидит одно, а у вас в учёте другое.
  • 🔐 Права пользователя. Для внешних обработок нужно право на их открытие. Обычному бухгалтеру его часто не дают — это решает администратор базы.
  • 📁 Папка для файла. Каталог существует и доступен на запись. В клиент-серверной базе код, который выполняется на сервере, пишет на диск сервера, а не на ваш компьютер.

Перед загрузкой чужого XML в рабочую базу сделайте резервную копию. Сама выгрузка безопасна: она ничего не меняет в данных.

Как выгрузить реализацию в XML из 1С 8.3 и сохранить отчёт

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

Реализация как электронный УПД

  1. Откройте Продажи → Реализация (акт, накладная, УПД) и найдите нужный документ.
  2. Проверьте вид документа в шапке. Для УПД выберите вариант с УПД, если покупатель ждёт именно его.
  3. Проведите документ кнопкой Провести.
  4. В командной панели формы откройте меню ЭДО. В нём есть команда выгрузки электронного документа в файл.
  5. Укажите папку и сохраните файл. Программа сформирует XML по действующему формату ФНС.
  6. Если документ включает счёт-фактуру, отдельный счёт-фактура к реализации в файл не нужен: в УПД со статусом 1 он уже входит.

Имя файла формирует сама программа. Оно начинается с префикса формата, например ON_NSCHFDOPPR, и содержит идентификаторы отправителя и получателя. Не переименовывайте файл: часть систем проверяет имя на соответствие содержимому.

💡 Покупатель загружает такой XML у себя через ЭДО. В его 1С это команда загрузки электронного документа из файла. Документ поступления создаётся автоматически, вручную набирать строки не придётся.

Файл без электронной подписи не заменяет бумажный документ. Он годится для загрузки данных у покупателя. Юридическую силу ему даёт подписание и отправка через оператора ЭДО.

Регламентированный отчёт

  1. Откройте Отчёты → Регламентированные отчёты.
  2. Найдите отчёт за нужный период и откройте его.
  3. Нажмите Проверка и исправьте ошибки контроля.
  4. Нажмите Выгрузить и выберите папку.

Программа сохранит XML в формате контролирующего органа. Его можно загрузить в личный кабинет на сайте ФНС или в программу другого оператора.

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

Выгрузка данных в XML через синхронизацию и EnterpriseData

Если XML нужен, чтобы перенести документы реализации в другую программу 1С, используйте формат EnterpriseData. Это универсальный обменный формат. Его понимают Бухгалтерия 3.0, Управление торговлей 11, УНФ, ERP и другие типовые конфигурации на БСП.

Разовая выгрузка в файл

  1. Откройте Администрирование → Синхронизация данных.
  2. Включите флажок синхронизации данных, если он выключен. Заполните префикс информационной базы — две-три буквы, чтобы номера документов из разных баз не совпали.
  3. Нажмите Настройки синхронизации данных и создайте новую синхронизацию.
  4. Выберите программу-получателя. Если нужной в списке нет, подойдёт вариант обмена с другой программой в универсальном формате.
  5. В способе подключения выберите обмен через каталог на диске. В этот каталог и будут падать XML-файлы.
  6. Настройте правила отправки: с какой даты, по каким организациям, какие виды документов.
  7. Запустите синхронизацию. В каталоге появится файл сообщения обмена.

Обработка выгрузки EnterpriseData

Когда настраивать полноценную синхронизацию не хочется, используйте отдельную обработку выгрузки и загрузки данных EnterpriseData. Она находится через Все функции → Обработки. Если команды Все функции нет в меню, включите её: Сервис и настройки → Параметры → Отображать команду "Все функции".

В обработке выбирают объекты (например, документы реализации), задают период и путь к файлу. Файл получается в том же формате EnterpriseData.

МеханизмКогда выбиратьОграничения
Синхронизация через каталогОбмен регулярный, нужна регистрация измененийНастраивается в обеих базах
Обработка EnterpriseDataРазовый перенос части данныхНет учёта, что уже выгружено
Конвертация данных и правила обменаКонфигурации нетиповые или сильно доработаныНужен специалист и правила

💡 Для нетиповых баз есть обработка «Универсальный обмен данными в формате XML». Она работает по файлу правил, который готовят в конфигурации «Конвертация данных ». Без правил она ничего не выгрузит.

Обработка «Выгрузка и загрузка данных XML» и выгрузка своим кодом

Копия объектов в такую же базу

Обработка «Выгрузка и загрузка данных XML» поставляется вместе с типовыми конфигурациями на диске ИТС и не встроена в меню. Это внешний файл с расширением .epf. Откройте его через Файл → Открыть в режиме «1С:Предприятие».

Порядок работы:

  1. На закладке выгрузки отметьте флажками нужные объекты: например, документ «Реализация товаров и услуг».
  2. Задайте период, если нужна выборка за месяц или квартал.
  3. Укажите имя файла и нажмите выгрузку.
  4. Обработка заберёт и связанные объекты: контрагентов, номенклатуру, договоры. Файл заметно вырастет.

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

Свой формат: внешняя обработка

Когда внешняя система ждёт XML своего формата, пишут внешнюю обработку . Ниже рабочий пример: выгрузка реализаций за период с номером, датой, контрагентом и суммой. Код выполняется на сервере и пишет файл на диск сервера.

&НаСервере
Процедура ВыгрузитьРеализацииНаСервере(ДатаНачала, ДатаОкончания, ИмяФайла)

	Запрос = Новый Запрос;
	Запрос.Текст =
	"ВЫБРАТЬ
	|	Р.Номер КАК Номер,
	|	Р.Дата КАК Дата,
	|	Р.Контрагент.ИНН КАК ИНН,
	|	Р.Контрагент.Наименование КАК Контрагент,
	|	Р.СуммаДокумента КАК Сумма
	|ИЗ
	|	Документ.РеализацияТоваровУслуг КАК Р
	|ГДЕ
	|	Р.Проведен
	|	И Р.Дата МЕЖДУ &Начало И &Окончание
	|УПОРЯДОЧИТЬ ПО
	|	Р.Дата";
	Запрос.УстановитьПараметр("Начало", НачалоДня(ДатаНачала));
	Запрос.УстановитьПараметр("Окончание", КонецДня(ДатаОкончания));
	Выборка = Запрос.Выполнить().Выбрать();

	Запись = Новый ЗаписьXML;
	Запись.ОткрытьФайл(ИмяФайла, "UTF-8");
	Запись.ЗаписатьОбъявлениеXML();
	Запись.ЗаписатьНачалоЭлемента("Реализации");

	Пока Выборка.Следующий() Цикл
		Запись.ЗаписатьНачалоЭлемента("Документ");
		Запись.ЗаписатьАтрибут("Номер", СокрЛП(Выборка.Номер));
		Запись.ЗаписатьАтрибут("Дата", Формат(Выборка.Дата, "ДФ=yyyy-MM-dd"));
		Запись.ЗаписатьАтрибут("ИНН", СокрЛП(Выборка.ИНН));
		Запись.ЗаписатьАтрибут("Сумма", XMLСтрока(Выборка.Сумма));
		Запись.ЗаписатьТекст(СокрЛП(Выборка.Контрагент));
		Запись.ЗаписатьКонецЭлемента();
	КонецЦикла;

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

КонецПроцедуры

Что важно в примере:

  • XMLСтрока() записывает сумму с точкой, без пробелов между разрядами. Строка() дала бы «12 500,00», и внешняя система её не разберёт.
  • Дата через Формат(..., "ДФ=yyyy-MM-dd") уходит в виде 2026-09-30.
  • ЗаписатьТекст экранирует кавычки и амперсанды в наименовании сам: ООО «Рога & Копыта» не сломает файл.
  • Пример под Бухгалтерию 3.0. В других конфигурациях имя документа и реквизитов может отличаться — сверьте в конфигураторе.

Если нужна полная копия объекта со всеми табличными частями, вместо ручных элементов используйте СериализаторXDTO.ЗаписатьXML(Запись, Выборка.Ссылка.ПолучитьОбъект()). Получится тот же внутренний формат, что и у обработки XML.

Как настроить выгрузку XML по расписанию

Ручная выгрузка раз в день быстро надоедает. Автоматизировать её можно тремя способами.

Расписание синхронизации

В настройке синхронизации данных (раздел про EnterpriseData выше) есть настройка автоматического запуска. Задайте расписание, например каждые 30 минут в рабочее время. Для файловой базы задания выполняются, только пока кто-то работает в программе. Для серверной — на сервере 1С независимо от пользователей.

Запуск обработки из планировщика Windows

Внешнюю обработку можно запускать без участия человека. Для этого создают отдельного пользователя базы, например «Робот выгрузки», и командную строку:

"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /S "srv1c\buh" /N "Робот выгрузки" /P "пароль" /Execute "C:\Obrabotki\vygruzka_xml.epf" /DisableStartupMessages

В модуле формы обработки в обработчике ПриОткрытии вызывают выгрузку, а после неё — ЗавершитьРаботуСистемы(Ложь). Строку ставят в планировщик заданий Windows на нужное время.

У пользователя-робота отключите защиту от опасных действий в его карточке. Иначе при открытии внешней обработки появится окно с предупреждением, и задание будет ждать, пока его кто-нибудь закроет.

💡 Пароль в командной строке виден всем, у кого есть доступ к заданию. Дайте роботу минимальные права: чтение нужных документов и открытие внешних обработок.

Регламентное задание в конфигурации

Самый надёжный вариант для серверной базы — встроить выгрузку в регламентное задание через расширение конфигурации . Так типовая конфигурация остаётся на поддержке и обновляется штатно. Это работа программиста: нужно создать расширение , добавить в него регламентное задание и общий модуль с процедурой выгрузки.

СпособПодходит дляМинус
Расписание синхронизацииОбмен между базами 1СФайловая база выгружает только при открытой программе
Планировщик Windows + обработкаСвой формат, нет программиста под рукойПароль в строке, нужна доработанная обработка
Регламентное задание в расширенииСерверная база, постоянная интеграцияНужен программист

Ошибки при выгрузке XML из 1С и что с ними делать

Диагностика: выберите симптом

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

Можно ли выгрузить сразу несколько реализаций в один XML?
Как электронный УПД — нет: по формату ФНС один файл содержит один документ. Несколько документов в одном файле дают EnterpriseData, обработка XML и своя обработка.
Чем открыть выгруженный XML, чтобы просто посмотреть?
Любым браузером или текстовым редактором с подсветкой разметки. Excel тоже откроет файл, но структуру с вложенными элементами покажет неудобно.
Нужна ли электронная подпись, чтобы выгрузить УПД в файл?
Для самой выгрузки нет. Подпись нужна, чтобы документ имел юридическую силу при передаче через оператора ЭДО.
Можно ли отправить XML-файл УПД покупателю обычной почтой?
Да, как вложение в письмо. Покупатель загрузит его в свою базу, но юридически значимым такой обмен становится только через оператора ЭДО с подписью.
Как выгрузить в XML саму конфигурацию, а не данные?
В конфигураторе: Конфигурация → Выгрузить конфигурацию в файлы. Получится каталог XML-файлов с описанием метаданных и модулями, данных учёта в нём нет.