Справочники и Данные · 11 мин
Как загрузить XML-документ в 1С: способы и инструкции
Как загрузить XML-документ в 1С: через универсальную обработку, обмен данными, ЭДО и встроенные механизмы конфигураций. Проверка результата и типичные ошибки.
XML — самый распространённый формат обмена данными между 1С и внешними системами: банками, контрагентами, операторами ЭДО, сайтами и другими базами. Счета-фактуры, УПД, накладные, прайсы и выписки чаще всего приходят именно в XML, и задача загрузить такой файл в информационную базу возникает у бухгалтеров и менеджеров регулярно.
Способ загрузки зависит от того, что именно содержит файл: документ от контрагента по формату ФНС, выгрузку из другой базы 1С или данные из сторонней системы. Универсального «волшебного» способа нет — 1С загружает XML только тогда, когда структура файла соответствует известному конфигурации формату или когда настроены правила конвертации.
Ниже разобраны основные сценарии: загрузка электронных документов через ЭДО, использование встроенных обработок типовых конфигураций, универсальная загрузка через конвертацию данных и вариант для программиста. Для каждого способа указаны условия применения, ограничения и способ проверить результат.
Определите, какой именно XML вы загружаете
Прежде чем искать кнопку «Загрузить», откройте файл в любом текстовом редакторе и посмотрите на его структуру. По корневым элементам и идентификаторам формата обычно видно, откуда файл взялся: УПД и счета-фактуры содержат признаки формата ФНС (атрибуты вида «ИдФайл», «ВерсФорм»), выгрузки из 1С — узлы типа «V8Exch» или описания объектов конфигурации, а файлы сторонних систем — свои собственные теги.
От типа файла зависит всё остальное. Документ по формату ФНС корректно загрузится через ЭДО или обработку загрузки электронных документов. Файл обмена между базами 1С потребует той же конфигурации-источника или настроенного обмена. Произвольный XML из сторонней системы без правил конвертации типовая 1С не прочитает вовсе.
Как выбрать способ загрузки
Загрузка электронных документов (УПД, счета-фактуры) через ЭДО
В типовых конфигурациях «1С:Бухгалтерия», «Управление торговлей» и «Комплексная автоматизация» встроена подсистема обмена электронными документами (БЭД). Она умеет распознавать XML-файлы в форматах, утверждённых ФНС, и создавать на их основе документы «Поступление товаров и услуг», «Счёт-фактура полученный» и другие.
Если у вас настроен обмен с оператором ЭДО, документы загружаются автоматически в раздел «Электронные документы». Если оператора нет, а файл получен, например, по почте, используйте ручную загрузку: в журнале электронных документов выберите команду загрузки из файла и укажите XML. Программа проверит подпись (при наличии файла подписи), распознает формат и предложит сопоставить контрагента и номенклатуру с вашими справочниками.
Ключевой момент — сопоставление номенклатуры. Позиции из XML не «привяжутся» к вашим товарам автоматически, если сопоставление не выполнялось ранее. Проверьте каждую строку: неверное сопоставление приведёт к тому, что поступление заведётся на чужие карточки товаров.
- 1Откройте раздел «Электронные документы» в вашей конфигурации
- 2Выберите команду загрузки документа из файла и укажите XML-файл
- 3Проверьте распознанные данные: контрагента, номер, дату, суммы
- 4Сопоставьте номенклатуру файла с карточками вашего справочника
- 5Создайте документ учёта и проверьте проводки
- 6Сохраните исходный XML-файл — он является основанием для учёта
Загрузка через «Универсальный обмен данными в формате XML»
Обработка «Универсальный обмен данными в формате XML» (она же «УниверсальныйОбменДаннымиXML») — стандартный инструмент переноса данных между базами 1С. Её можно открыть через «Файл → Открыть» в режиме предприятия, а в некоторых конфигурациях она встроена в меню «Администрирование» или «Сервис».
Важно понимать ограничение: обработка загружает только те файлы, которые были выгружены ей же или совместимым механизмом конвертации данных. Произвольный XML от банка или сайта она не примет — файл должен иметь структуру правил обмена. На закладке «Загрузка данных» укажите файл, при необходимости включите режим отладки и запустите загрузку.
Перед загрузкой в рабочую базу обязательно сделайте резервную копию или сначала выполните загрузку в тестовую копию. Ошибка в правилах конвертации может создать дубли контрагентов, перезаписать существующие объекты или «повесить» документы на неверные ссылки.
Штатные обработки загрузки в типовых конфигурациях
Многие типовые конфигурации содержат встроенные механизмы загрузки данных из файлов. Например, в «1С:Бухгалтерии» есть загрузка банковских выписок (формат 1CClientBankExchange, обычно текстовый, но встречаются и XML-варианты), загрузка данных из «Зарплаты и управления персоналом», обмен с сайтами по стандарту CommerceML — именно он используется для обмена каталогами и заказами с интернет-магазинами.
Обмен с сайтом настраивается в разделе интеграции: указывается узел обмена, состав выгружаемых данных, а загрузка заказов из XML происходит по расписанию или вручную. CommerceML-файл содержит строго определённую структуру, поэтому сторонний файл «похожего вида» загружен не будет.
Также в ряде конфигураций есть универсальная обработка «Загрузка данных из файла», ориентированная на табличные данные (Excel, CSV). XML она обычно не читает напрямую — для сложных иерархических XML всё равно потребуется конвертация данных или доработка.
Загрузка XML программным способом
Когда штатных средств недостаточно — например, поставщик присылает XML собственной структуры — задача решается на встроенном языке 1С. Используются объекты «ЧтениеXML» для последовательного разбора файла или «XDTO-пакеты» для работы по схеме. Разработчик описывает соответствие тегов XML полям объектов конфигурации и создаёт документы программно.
Этот путь требует квалификации: нужно корректно обрабатывать кодировки (UTF-8, windows-1251), пространства имён, отсутствующие узлы и ошибки структуры. Плюс подхода — полная гибкость: можно загружать файлы любого формата, валидировать данные и вести журнал ошибок.
Чтение = Новый ЧтениеXML;
Чтение.ОткрытьФайл("C:\Обмен\document.xml");
Пока Чтение.Прочитать() Цикл
Если Чтение.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
// обработка узла: Чтение.Имя, Чтение.ПолучитьАтрибут(...)
КонецЕсли;
КонецЦикла;
Чтение.Закрыть();Для разовой задачи дешевле попросить поставщика выгрузку в формате, который 1С понимает штатно, или воспользоваться готовыми правилами конвертации. Разработка собственной загрузки оправдана при регулярном обмене.
Проверка результата после загрузки
Сам факт отсутствия ошибок при загрузке не гарантирует корректность данных. После загрузки сверьте ключевые показатели с исходным файлом: количество документов, итоговые суммы, количество строк номенклатуры. Для документов поступления проверьте, что контрагент, договор и счета учёта определились верно.
Отдельно проверьте справочники на предмет дублей: если сопоставление выполнялось по наименованию, а не по ИНН или коду, могли создаться повторные карточки контрагентов и товаров. Дубли проще удалить сразу, чем разбираться с ними после того, как на них заведены движения.
Как проверить результат загрузки
Совпадает с числом документов в XML-файле
Часть документов отсутствует или есть лишние
Суммы совпадают с исходным файлом до копейки
Расхождения в суммах или НДС
Новые элементы без дублей, сопоставление корректное
Появились дубли по наименованию
Документы проводятся без ошибок
Ошибки проведения, пустые счета учёта
Типичные ошибки и их причины
Самая частая проблема — сообщение о невозможности прочитать файл. Причины: файл повреждён при передаче, имеет нулевой размер, сохранён в неподдерживаемой кодировке или вообще не является XML (например, переименованный DOCX). Откройте файл в браузере или редакторе: валидный XML отобразится как структурированный текст.
Вторая группа ошибок связана с несовпадением версий формата. Форматы ФНС периодически обновляются, и старый релиз конфигурации может не понимать новую версию формата УПД. Решение — обновить конфигурацию до актуального релиза. Аналогично файл обмена из новой версии конфигурации может не загрузиться в старую.
Третья группа — ошибки сопоставления: документ загружается, но с пустым контрагентом, неверной номенклатурой или без договора. Это не сбой загрузки, а следствие незаполненных соответствий. Заполните сопоставления и перезаполните документ.
Частые вопросы
Можно ли загрузить в 1С любой XML-файл?
Нет. 1С загружает только файлы известных ей форматов: документы ФНС через ЭДО, файлы обмена между базами, CommerceML для сайтов и файлы по правилам конвертации данных. XML произвольной структуры потребует разработки правил или программной обработки.
Чем открыть обработку «Универсальный обмен данными XML»?
В режиме 1С:Предприятие через меню «Файл → Открыть», указав файл обработки с диска. В некоторых конфигурациях она встроена в разделы «Администрирование» или «Сервис». Для файловых баз достаточно прав пользователя, для серверных могут понадобиться права администратора.
Почему документ загрузился, но контрагент пустой?
Программа не нашла контрагента в вашем справочнике по данным из файла (ИНН, КПП, наименование). Создайте контрагента вручную или заполните сопоставление в механизме загрузки, затем перезаполните документ.
Что делать, если выдаётся ошибка «Неверный формат файла»?
Проверьте, что файл действительно XML и не повреждён: откройте его в браузере или блокноте. Убедитесь, что формат файла соответствует механизму загрузки. Если файл от контрагента в новом формате ФНС — обновите конфигурацию до актуального релиза.
Нужно ли хранить исходный XML после загрузки?
Да, если это электронный документ от контрагента. XML-файл с электронной подписью является юридически значимым первичным документом, а запись в базе 1С — лишь его отражение в учёте. Храните исходные файлы вместе с подписями весь срок, установленный для первичных документов.
Можно ли загружать XML автоматически по расписанию?
Да, если обмен настроен штатно: синхронизация между базами, обмен с сайтом и ЭДО поддерживают регламентные задания. Для нестандартных файлов автозагрузку из папки реализует разработчик через регламентное задание и программное чтение XML.
Что важно запомнить
Способ загрузки XML определяется форматом файла: документы ФНС — через ЭДО, обмен между базами — через универсальную обработку, произвольные файлы — через правила конвертации или доработку. Перед массовой загрузкой делайте резервную копию, после — сверяйте суммы, количество документов и отсутствие дублей в справочниках.