Обработка «Выгрузка и загрузка данных XML»: как выгрузить и загрузить файл в 1С 8.3
Содержание
Выгрузка и загрузка данных XML для 1С 8.3 делается одной внешней обработкой — ВыгрузкаЗагрузкаДанныхXML.epf. В базе-источнике вы отмечаете флажками объекты и получаете один файл, в базе-приёмнике тот же файл загружаете. Встроенной кнопки «Сохранить как XML» у документа в типовой конфигурации нет — именно на этом спотыкаются в первый раз.
Второе заблуждение: что XML из 1С бывает один. Их три — файл обмена между базами, файл ЭДО по формату ФНС и произвольный XML для стороннего сервиса. Структуры несовместимы, и файл для Диадока в другую базу как обмен не встанет. Ниже — пошагово про каждый случай, про отбор по организации и про то, почему загрузка иногда молча теряет данные.
Какой XML вам нужен: определите сценарий
От того, кому уйдёт файл, зависит и способ выгрузки, и структура.
.xml.Быстрый тест: откройте файл в браузере. Если первые теги вида <ФайлОбмена ...> со ссылками и GUID — это обмен 1С. Если <Файл ИдФайл="ON_NSCHFDOPPR..."> — это ЭДО.
Что такое формат XML и зачем он в 1С
XML — текстовый формат, где значения размечены тегами: <Документ><Сумма>1000</Сумма></Документ>. Его читают почти все программы, поэтому он стал стандартом обмена.
Для практика это даёт две вещи:
- 🔁 Перенос данных без прямого подключения. Базы могут стоять в разных офисах и даже у разных компаний — файл передаётся хоть по почте.
- 📄 Юридически значимый документооборот. ФНС утвердила XML-форматы счёта-фактуры и УПД, оператор ЭДО передаёт именно такой файл с электронной подписью.
Главное свойство внутреннего XML 1С: объекты сериализуются вместе со своими уникальными идентификаторами (GUID). Поэтому при повторной загрузке того же файла дубли не появляются — данные обновляются.
Где взять обработку «Выгрузка и загрузка данных XML»: ИТС, 1С 8.3 и 8.5
Обработка не входит в саму конфигурацию. Её публикуют в методической поддержке на диске ИТС — ищите по названию «Выгрузка и загрузка данных XML» в разделе разработки. Файл называется ВыгрузкаЗагрузкаДанныхXML.epf.
Как открыть:
- Скачайте
.epfи положите в удобную папку (без кириллицы в пути — надёжнее). - Запустите базу в режиме 1С:Предприятие под пользователем с полными правами.
- Меню
Файл→Открыть→ выберите.epf. - Разрешите открытие внешней обработки, если появится вопрос безопасности.
Под пользователем с ограниченными правами обработка либо не откроется, либо выгрузит не всё. Для переноса данных нужны административные права в обеих базах.
Про 1С 8.5: обработка написана на встроенном языке и от номера платформы почти не зависит. Но версии расходятся — если на новой платформе обработка падает с ошибкой в модуле, возьмите её актуальную редакцию, а не ту, что лежит с давних времён. Обратная ситуация тоже бывает: свежая обработка может использовать методы, которых нет в старом режиме совместимости базы.
Есть и второй путь без внешних файлов — некоторые типовые конфигурации умеют выгружать данные через Администрирование → Обмен данными. Функционал там уже: это про синхронизацию, а не про выборочную выгрузку объектов.
Как выгрузить данные из 1С 8.3 в XML: пошаговая инструкция
Порядок в базе-источнике:
- Откройте обработку, перейдите на вкладку Выгрузка данных.
- В дереве метаданных отметьте флажками то, что переносим: справочники, документы, регистры сведений, планы счетов.
- Решите вопрос со связями — по умолчанию обработка тянет зависимые объекты (контрагента и номенклатуру за документом).
- Задайте отбор, если нужна часть данных (см. ниже).
- Укажите имя и путь результирующего файла.
- Нажмите Выгрузить данные и дождитесь окна с количеством выгруженных объектов.
На выходе — один .xml, внутри которого лежат все выбранные объекты со ссылками друг на друга.
Выгрузка с отбором по организации, периоду и списку
Отборы — самое полезное в обработке. Выгружать базу целиком почти никогда не нужно.
| Что нужно | Как задать |
|---|---|
| Только одна организация | На вкладке выгрузки выберите документ, в отборе укажите реквизит Организация = нужное значение |
| Период | Отбор по реквизиту Дата, условие «в интервале» |
| Конкретные документы | Отбор по Ссылка = список значений, либо по номеру |
| Только справочник без движений | Снимите флажки с документов и регистров |
Отбор по организации в 1С 8.3 удобен при разделении базы: выгрузили документы одного юрлица — загрузили в отдельную базу под него. Проверьте, что в отбор попали и справочники, привязанные к организации: банковские счета, договоры, кассы. Иначе документы приедут, а реквизиты у них окажутся пустыми.
Перед выгрузкой с отбором прогоните тестовую выгрузку 2–3 документов и загрузите их в копию приёмника. Десять минут проверки экономят день разбора.
Как загрузить файл XML в 1С 8.3: пошаговая инструкция
Загрузка проще выгрузки, но требует дисциплины в порядке действий.
- Сделайте резервную копию базы -приёмника. Откат загрузки штатными средствами не предусмотрен.
- Откройте ту же обработку
ВыгрузкаЗагрузкаДанныхXML.epfв базе-приёмнике. - Перейдите на вкладку Загрузка данных.
- Выберите файл
.xml, полученный при выгрузке. - Нажмите Загрузить данные.
- Проверьте протокол: обработка покажет количество загруженных объектов и предупреждения.
Правильный порядок загрузки нескольких файлов: сначала справочники и планы счетов, потом документы, в конце — регистры сведений, если выгружали их отдельно.
Как загрузить реализацию и другие документы из XML
Отдельный документ грузится тем же способом, что и массив. Нюансы:
- 📌 Документ придёт непроведённым или проведённым по данным источника — это зависит от версии обработки. Проверьте проводки после загрузки.
- 🔢 Номер документа переносится как есть. Если в приёмнике такой номер занят, возможен конфликт нумерации.
- 🔗 Ссылки на контрагента и номенклатуру подтянутся, если их выгрузили вместе с документом или они уже есть в приёмнике с тем же GUID.
- 💰 Счета учёта в движениях не пересчитываются — они приходят из источника. При разных планах счетов документ придётся перепровести.
Загрузка реализации из XML не заменяет проведение. Даже если в приёмнике документ выглядит проведённым, сверьте регистр Хозрасчётный и остатки по счёту 62 — при расхождении перепроведите документ.
Универсальный обмен данными в формате XML: когда нужен
Обработка «Выгрузка и загрузка данных XML» работает только между одинаковыми (или очень близкими) конфигурациями. Как только структуры расходятся — УТ и Бухгалтерия, разные редакции — нужен универсальный обмен данными в формате XML.
Разница принципиальная:
| Механизм | Что умеет | Когда брать |
|---|---|---|
| Выгрузка и загрузка данных XML | Копирует объекты «как есть», без преобразований | Одинаковые конфигурации, перенос части данных, разделение базы |
| Универсальный обмен данными XML (Конвертация данных 2.1) | Перекладывает данные по правилам: поле в поле, документ в документ | Разные конфигурации, смена редакции, сложные сопоставления |
Для универсальной выгрузки-загрузки XML в 1С 8.3 нужны две вещи: обработка универсального обмена (УниверсальныйОбменДаннымиXML.epf) и файл правил конвертации .xml, созданный в «Конвертации данных». Типовые правила для популярных пар конфигураций выпускает 1С, нетиповые пишутся под задачу.
Сопоставление полей — основная работа при таком обмене:
Порядок работы: загрузили правила в обработку → выбрали узел «Выгрузка» → отобрали данные → получили файл → в приёмнике та же обработка, вкладка «Загрузка», те же правила.
Программный запуск выгрузки и загрузки XML
Если перенос нужен регулярно, интерактивная обработка не подходит — её нельзя поставить в расписание. Для регламентных выгрузок пишут свой код на сериализаторе XDTO.
Выгрузка справочника в файл:
Процедура ВыгрузитьКонтрагентовВXML(ИмяФайла) Экспорт
Запись = Новый ЗаписьXML;
Запись.ОткрытьФайл(ИмяФайла, "UTF-8");
Запись.ЗаписатьОбъявлениеXML();
Запись.ЗаписатьНачалоЭлемента("Данные");
Выборка = Справочники.Контрагенты.Выбрать();
Пока Выборка.Следующий() Цикл
СериализаторXDTO.ЗаписатьXML(Запись, Выборка.ПолучитьОбъект());
КонецЦикла;
Запись.ЗаписатьКонецЭлемента();
Запись.Закрыть();
КонецПроцедуры
Загрузка того же файла:
Процедура ЗагрузитьДанныеИзXML(ИмяФайла) Экспорт
Чтение = Новый ЧтениеXML;
Чтение.ОткрытьФайл(ИмяФайла);
Чтение.Прочитать(); // объявление
Чтение.Прочитать(); // корневой элемент "Данные"
Пока СериализаторXDTO.ВозможностьЧтенияXML(Чтение) Цикл
Объект = СериализаторXDTO.ПрочитатьXML(Чтение);
Объект.ОбменДанными.Загрузка = Истина;
Объект.Записать();
КонецЦикла;
Чтение.Закрыть();
КонецПроцедуры
Ключевая строка — Объект.ОбменДанными.Загрузка = Истина. Без неё сработают проверки заполнения и подписки на события, и загрузка упадёт на первом же объекте с незаполненным реквизитом.
Такую процедуру ставят в регламентное задание или вызывают из фонового:
Параметры = Новый Массив;
Параметры.Добавить("C:\Exchange\out.xml");
ФоновыеЗадания.Выполнить("ОбменXML.ВыгрузитьКонтрагентовВXML", Параметры, , "Выгрузка XML");
Файлы обмена складывайте в отдельный каталог с датой в имени: out_20260926.xml. Когда приёмная сторона скажет «данные не пришли», у вас будет чем проверить.
Как выгрузить документ в формате XML для ЭДО, СБИС и Диадок
Это другой XML и другой механизм. Счёт-фактуру, УПД или реализацию для отправки контрагенту выгружают через электронный документооборот. Оператор роли не играет — формат задаёт ФНС.
По шагам на примере реализации в 1С Бухгалтерия 8.3:
- Откройте документ Реализация (акт, накладная, УПД).
- В командной панели —
ЭДО→Посмотреть электронный документ. - Откроется предпросмотр в утверждённом формате, там же кнопка выгрузки.
- Нажмите
Сохранитьи выберите папку. - 1С сформирует
.xmlпо формату ФНС, а при отправке через оператора — ещё и файл подписи.sig.
Имя файла говорит о типе документа: ON_NSCHFDOPPR — УПД со статусом «1», DP_REALIZ — накладная. Приёмная сторона ориентируется на префикс.
Если кнопки ЭДО в документе нет
- 💾 Подключите сервис 1С-ЭДО:
Администрирование→Обмен электронными документами. - 🧩 Используйте внешнюю обработку выгрузки в формат ФНС — её пишут под конкретную редакцию формата.
- 📤 Выгрузите через сам сервис оператора: у СБИС и Диадока есть модули интеграции с 1С.
Частые ошибки и как их избежать
Большинство проблем с XML — на стыке версий формата, прав и состава метаданных.
Отдельно про заблуждения, которые дорого стоят:
- ❌ «XML можно поправить руками». Файл ЭДО — нельзя, подпись слетит. Файл обмена — технически можно, но GUID и ссылки легко испортить.
- ❌ «Загрузка добавит только новое». Обработка обновляет объекты по GUID: значение в приёмнике будет затёрто значением из файла.
- ❌ «XML из одной базы откроется в любой 1С». Читается только совместимой конфигурацией.
- ❌ «Формат один на всё». XML обмена, XML для Диадока и XML отчёта в ФНС — три разные структуры.
Если не помогло
Файл не грузится или выгрузка падает — двигайтесь по шагам:
- Повторите операцию в файловой копии базы: так вы отсечёте проблемы блокировок и прав на сервере.
- Сравните конфигурации источника и приёмника через
Конфигуратор→Конфигурация→Сравнить, объединить. Расхождение в реквизите — типовая причина отказа. - Уменьшите порцию: выгрузите 5 объектов вместо 5000. Если падает и на пяти — дело в структуре, а не в объёме.
- Посмотрите технологический журнал и
Журнал регистрациина момент ошибки — там обычно полный текст исключения. - Для ЭДО сверьте версию формата у оператора и обновите релиз конфигурации.
- Если конфигурации несовместимы в принципе — не боритесь с обработкой, переходите на универсальный обмен с правилами конвертации.
Частые вопросы
Где скачать обработку «Выгрузка и загрузка данных XML» для 1С 8.3?
ВыгрузкаЗагрузкаДанныхXML.epf открывается через Файл → Открыть в режиме 1С:Предприятие под администратором.Как загрузить файл XML в 1С 8.3 Бухгалтерия?
.xml и нажмите «Загрузить данные». Перед этим обязательно сделайте резервную копию базы — отката не будет.Работает ли обработка на 1С 8.5?
Чем универсальный обмен данными XML отличается от обычной выгрузки?
Как выгрузить данные с отбором по организации?
Организация. Не забудьте выгрузить связанные справочники — договоры, банковские счета, кассы этой организации.Можно ли загрузить реализацию из XML вместе с проводками?
Чем отличается выгрузка для ЭДО от выгрузки данных XML?
Источники
- Приказ ФНС России от 19.12.2018 № ММВ-7-15/820@ (формат счёта-фактуры и УПД в электронном виде)
- Приказ ФНС России от 24.03.2016 № ММВ-7-15/155@ (формат счёта-фактуры в электронной форме)