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