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

Справочники и Данные · 10 мин

Как загрузить XML-файл в 1С: рабочие способы и проверка результата

Как загрузить XML-файл в 1С: обработка «Универсальный обмен данными», загрузка ЭДО-документов, настройка сопоставления объектов, проверка результата и исправление ошибок.

Загрузка XML-файла в 1С — типовая задача при переносе данных между базами, приёме электронных документов от контрагентов, импорте выписок и обновлении классификаторов. Способ загрузки зависит от того, что именно содержит файл: данные обмена между конфигурациями, электронный документ (УПД, акт, накладная), выгрузку справочника или произвольную структуру.

Главный принцип: 1С не «открывает» XML как обычный файл, а разбирает его по правилам и превращает в объекты базы — документы, элементы справочников, записи регистров. Если правила не подходят под структуру файла, загрузка либо завершится ошибкой, либо создаст некорректные данные. Поэтому перед загрузкой нужно понять происхождение файла и выбрать правильный инструмент.

Определите тип XML-файла перед загрузкой

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

Файл обмена между базами 1СВнутри теги <V8Exch:_1CV8DtUD> или узлы с правилами конвертации

Загружается обработкой «Универсальный обмен данными»

Электронный документ (УПД, счёт-фактура, накладная)Упоминания ФНС-форматов, теги Документ, СведПокуп, СведПрод

Загружается через ЭДО: «Обмен электронными документами» → «Загрузить из файла»

Выгрузка из сторонней системыПроизвольные теги, структура неизвестна

Нужна специальная обработка или доработка

Классификатор (ОКВЭД, банки, адреса)Файл с официального ресурса

Загружается штатным механизмом соответствующего справочника

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

Подготовьте базу: резервная копия и права

Любая загрузка изменяет данные, и отменить её «одной кнопкой» нельзя. Перед загрузкой в рабочую базу сделайте резервную копию: для файловой базы — скопируйте файл 1Cv8.1CD, для клиент-серверной — выгрузите базу через конфигуратор («Администрирование» → «Выгрузить информационную базу») или средствами СУБД.

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

Загрузка через «Универсальный обмен данными в формате XML»

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

Порядок загрузки
  1. 1
    Откройте обработку «Универсальный обмен данными в формате XML» и перейдите на закладку «Загрузка данных».
  2. 2
    Укажите путь к XML-файлу в поле «Имя файла для загрузки».
  3. 3
    При необходимости включите режим отладки и протоколирование ошибок — это поможет при проблемах.
  4. 4
    Нажмите «Загрузить данные» и дождитесь окончания: обработка выведет число загруженных объектов.
  5. 5
    Проверьте протокол: строки с ошибками показывают, какие объекты не загрузились и почему.

Обратите внимание на настройки обработки. Опция «Режим отладки» замедляет загрузку, но позволяет увидеть детали ошибок. Флажки оптимизации («Использовать транзакции», количество объектов на транзакцию) влияют на скорость и устойчивость: при загрузке больших файлов разумно оставить транзакционный режим, чтобы при сбое база не осталась в полузагруженном состоянии.

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

Загрузка электронных документов через ЭДО

Если XML — это УПД, счёт-фактура, товарная накладная или акт в формате ФНС, используйте подсистему обмена электронными документами. В типовых конфигурациях (1С:Бухгалтерия, Управление торговлей, ERP) откройте раздел «Обмен электронными документами» (или «ЭДО») и выберите команду «Загрузить из файла» / «Загрузить документы из файла».

После выбора файла программа распознает формат, покажет содержимое документа и предложит сопоставить данные с базой: контрагента — по ИНН и КПП, номенклатуру — по наименованию, артикулу или штрихкоду. Не пропускайте этап сопоставления: если номенклатура не сопоставлена, документ либо не загрузится, либо создаст новые элементы справочника с названиями «как в файле», что приведёт к дублям.

После загрузки документ появится в списке входящих электронных документов со статусом «Не отражен в учёте» или сразу создаст учётный документ — зависит от настроек ЭДО. Проверьте созданный документ поступления: даты, номера, суммы и сопоставленную номенклатуру.

Нестандартные XML: обработки-загрузчики и доработка

Файлы из сторонних систем (CRM, сайты, банковские выгрузки в произвольном XML, прайсы поставщиков) штатные механизмы не поймут. Для них существуют три пути: типовые обработки загрузки табличных данных, специализированные обработки под конкретный формат и собственная доработка.

Если данные табличные (прайс, список товаров), часто проще преобразовать XML в Excel или CSV и загрузить типовой обработкой «Загрузка данных из табличного документа» — она есть в большинстве конфигураций и позволяет вручную сопоставить колонки полям справочника. Это безопаснее, чем разбирать нестандартный XML напрямую.

Для регулярных загрузок сложных XML-структур потребуется доработка: программный разбор файла средствами встроенного языка (ЧтениеXML, фабрика XDTO). Это задача для разработчика 1С: самостоятельно писать такой код без опыта рискованно, поскольку ошибки разбора могут создавать некорректные объекты.

Сравнение способов загрузки

Универсальный обмен данными XML

Для переноса между базами 1С. Требует файл, выгруженный по правилам конвертации; чужие XML не загрузит.

Загрузка через ЭДО

Для электронных документов форматов ФНС. Автоматическое сопоставление контрагентов и номенклатуры, но только для поддерживаемых форматов.

Загрузка из табличного документа

Для табличных данных после конвертации XML в Excel/CSV. Гибкое сопоставление колонок, но ручная подготовка файла.

Доработка (ЧтениеXML, XDTO)

Для любых нестандартных форматов и регулярных обменов. Требует разработчика и тестирования.

Проверка результата и типичные ошибки

После загрузки не ограничивайтесь сообщением «Загрузка завершена». Откройте протокол и убедитесь, что количество загруженных объектов соответствует ожиданиям, а ошибок нет или они объяснимы. Затем проверьте данные в самой базе.

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

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

Количество объектов в протоколе
Норма

Совпадает с числом записей в источнике

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

Часть объектов отсутствует без объяснения в протоколе

Справочники контрагентов и номенклатуры
Норма

Существующие элементы сопоставлены, новых дублей нет

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

Появились дубли с похожими наименованиями

Проведённые документы
Норма

Суммы и даты совпадают с файлом, документы проводятся

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

Документы созданы, но не проводятся из-за незаполненных реквизитов

Остатки и итоги после загрузки
Норма

Отчёты сходятся с данными источника

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

Расхождения в суммах, незаполненные движения

Типичные ошибки
01
Загрузка без резервной копии — при ошибке правил данные приходится восстанавливать вручную или терять.
02
Загрузка файла обмена не в ту конфигурацию или версию — объекты создаются с пустыми реквизитами или не создаются вовсе.
03
Пропуск этапа сопоставления номенклатуры в ЭДО — массовые дубли справочника.
04
Повторная загрузка того же файла «на всякий случай» — задвоение документов, если в правилах не предусмотрен поиск существующих.
05
Игнорирование протокола ошибок — часть данных молча теряется, и это обнаруживается только при сверке.

Если загрузка прервалась с ошибкой, сначала посмотрите текст в протоколе: чаще всего это отсутствующий объект по ссылке (в базе-приёмнике нет элемента, на который ссылается документ), нарушение уникальности кода или несовпадение формата. Устраните причину в источнике или правилах и повторите загрузку — в копии базы, если объём данных значительный.

Итог

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

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

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

Можно ли загрузить любой XML-файл в 1С без доработок?

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

Что делать, если обработка выдаёт ошибку «Ошибка формата потока»?

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

Загрузятся ли документы с проведением при обмене данными?

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

Как избежать дублей контрагентов при загрузке?

Правила обмена обычно ищут существующие элементы по ключевым полям: ИНН и КПП для контрагентов, коду или GUID для справочников. Перед загрузкой приведите в порядок эти реквизиты в базе-приёмнике. В ЭДО сопоставление выполняется интерактивно — не пропускайте этот шаг.

Файл очень большой, загрузка зависает. Что делать?

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

Можно ли загрузить XML в 1С:Бухгалтерию без ЭДО?

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