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

В этой статье мы разберём все этапы экспортной процедуры — от выбора метода выгрузки до обработки типичных ошибок. Особое внимание уделим автоматизации через встроенные обработки и скрипты, а также нюансам работы с популярными форматами: .xlsx, .xml, .json и .csv. Если вы никогда не занимались экспортом или хотите оптимизировать текущий процесс — здесь найдёте ответы на 90% практических вопросов.

Материал актуален для всех современных версий платформы 1С:Предприятие 8.3 (включая последние релизы 2026 года) и охватывает как типовые конфигурации (Бухгалтерия 3.0, Управление торговлей 11, Зарплата и управление персоналом), так и самописные решения. Примеры кода и скриншоты интерфейса приведены для режима «1С:Предприятие» (не путать с конфигуратором!).

📊 Какой формат экспорта вы используете чаще всего?
Excel (.xlsx)
XML для обмена
CSV для аналитики
JSON для API
Другой

1. Типы экспорта в 1С: какой метод выбрать?

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

Рассмотрим все варианты с указанием их плюсов, минусов и типичных сценариев применения:

  • 📄 Ручной экспорт через меню (Файл → Сохранить как): подходит для разовых выгрузок небольших таблиц (например, отчётов). Не требует навыков программирования, но ограничен форматами .mxl (для 1С) и .xlsx. Минус: невозможно настроить структуру выгружаемых данных.
  • ⚙️ Внешние обработки (например, ВыгрузкаДанныхXML.epf): гибкий инструмент для регулярного обмена. Позволяет выгружать справочники, документы и регистры с сохранением связей. Плюс: можно доработать под специфические требования контрагентов.
  • 🤖 Программный экспорт через встроенный язык: максимальная автоматизация. Используется для интеграции с внешними системами (например, выгрузка заказов в Wildberries или Ozon). Требует: знания синтаксиса или помощи разработчика.
  • 🔄 Обмен через универсальные форматы (EnterpriseData, CommerceML): стандарт для обмена между разными конфигурациями 1С. Пример: перенос данных из УТ 10.3 в УТ 11.

🔹 Ключевой критерий выбора: если вам нужно выгрузить данные одноразово для анализа — хватит ручного экспорта в Excel. Если требуется регулярный обмен (например, с маркетплейсом или другой 1С) — без программного решения или обработки не обойтись.

💡

Для обмена с контрагентами на 1С всегда используйте формат XML с схемой CommerceML — это гарантирует совместимость с 90% типовых конфигураций.

2. Подготовка данных к экспорту: что нужно проверить?

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

☑️ Подготовка данных к экспорту

Выполнено: 0 / 5

Особое внимание уделите связанным объектам. Например, при выгрузке документов РеализацияТоваровУслуг в XML должны присутствовать:

  • 📦 Все позиции номенклатуры (включая характеристики и серии)
  • 👤 Контрагенты с реквизитами (банковские счета, договора)
  • 💰 Валюты и курсы (если документ многовалютный)

⚠️ Внимание: если выгружаете данные для ФНС или ЭДО, обязательно сверьтесь с актуальными требованиями к структурам файлов. Например, с 2026 года в чеках БСО требуется указывать дополнительные реквизиты покупателя.

Что будет если экспортировать неполные данные?

Если в XML отсутствуют обязательные реквизиты (например, ИНН контрагента), система-получатель отвергнет файл с ошибкой "Несоответствие схеме". В случае с Excel это может привести к смещению колонок и некорректной аналитике.

Для проверки целостности данных перед экспортом используйте стандартный отчёт Анализ заполнения реквизитов (доступен в большинстве типовых конфигураций). Если отчёт показывает пропуски в критичных полях — исправьте их до выгрузки.

3. Пошаговая инструкция: экспорт в Excel (.xlsx)

Экспорт в .xlsx — самый распространённый сценарий для аналитики и отчётности. Рассмотрим процесс на примере выгрузки справочника Номенклатура из 1С:Управление торговлей 11.

Шаг 1. Откройте нужный справочник или отчёт

  1. Перейдите в раздел Справочники → Номенклатура.
  2. Откройте список позиций (например, через Все действия → Открыть список).
  3. При необходимости отфильтруйте данные (кнопка Ещё → Настройка списка).

Шаг 2. Настройте колонки для экспорта

  • 📌 Нажмите Ещё → Настройка списка.
  • 📌 Включите галочками все нужные колонки (например, Артикул, Цена продажи, Остаток).
  • 📌 Сохраните настройку под удобным именем (например, Экспорт для прайса).

Шаг 3. Выгрузите данные

  1. Нажмите Файл → Сохранить как.
  2. Выберите формат Лист Excel (*.xlsx).
  3. Укажите путь сохранения и имя файла (например, Прайс_2026.xlsx).
  4. Нажмите Сохранить.

⚠️ Внимание: если в данных есть иерархические справочники (например, группы номенклатуры), в Excel они отобразятся как отдельные строки с отступами. Чтобы сохранить структуру, после экспорта примените в Excel Данные → Группировка.

💡

Если при открытии файла Excel выдаёт ошибку "Формат файла неверен", попробуйте сохранить его в формате .xls (старая версия) или используйте обработку ВыгрузкаВExcel.epf из каталога 1С.

4. Экспорт в XML: схемы, обработки и типичные ошибки

Формат .xml используется для обмена между системами 1С, интеграции с ЭДО, маркетплейсами и государственными сервисами (например, Честный ЗНАК). Главное отличие от Excel — здесь критично соблюдать структуру схемы, иначе файл не пройдёт валидацию.

Для выгрузки в XML в 1С предусмотрены:

  • 📜 Универсальные обработки: ВыгрузкаДанныхXML.epf (входит в поставку платформы).
  • 📜 Специализированные обработки: например, ВыгрузкаДляФНС.epf или CommerceML.epf (для обмена с сайтами).
  • 📜 Программный экспорт через методы ЗаписатьXML() или ЗаписатьJSON().

Пример кода для программной выгрузки справочника в XML:


// Создаём объект записи XML

ЗаписьXML = Новый ЗаписьXML;

ЗаписьXML.ОткрытьФайл("C:\Export\Номенклатура.xml");

// Выгружаем данные

Выборка = Справочники.Номенклатура.Выбрать();

Пока Выборка.Следующий() Цикл

ЗаписьXML.ЗаписатьНачалоЭлемента("Товар");

ЗаписьXML.ЗаписатьАтрибут("Артикул", Выборка.Артикул);

ЗаписьXML.ЗаписатьЭлемент("Наименование", Выборка.Наименование);

ЗаписьXML.ЗаписатьЭлемент("Цена", Выборка.ЦенаПродажи);

ЗаписьXML.ЗаписатьКонецЭлемента(); // Закрываем тег "Товар"

КонецЦикла;

ЗаписьXML.Закрыть();

🔹 Типичные ошибки при экспорте в XML:

ОшибкаПричинаРешение
Ошибка валидации схемыОтсутствует обязательный тег или атрибутСверить структуру с XSD-схемой получателя
Кодировка CP1251 вместо UTF-8Не указан параметр кодировки при записиДобавить ЗаписьXML.УстановитьСтроку("")
Пустые значения в числовых поляхВ 1С число 0 может записываться как пустая строкаЗаменить пустые значения на 0 перед экспортом

Критичный нюанс: при обмене с маркетплейсами (Ozon, Wildberries) обязательно используйте схему CommerceML 2.07 или новее — старые версии могут не поддерживать актуальные реквизиты (например, штрихкоды GS1).

5. Автоматизация экспорта: расписания и внешние обработки

Если экспорт нужно выполнять регулярно (например, ежедневная выгрузка заказов в СДЭК или еженедельный отчёт в Excel), ручной метод не подходит. В 1С есть три способа автоматизации:

  • Регламентные задания: настройка расписания прямо в базе. Подходит для простых задач (например, выгрузка остатков каждый день в 23:00).
  • 🤖 Внешние обработки с триггерами: можно привязать к событию (например, после проведения документа РеализацияТоваровУслуг).
  • 🔄 Интеграция через REST API: для обмена с внешними сервисами (например, Bitrix24 или МойСклад).

Пример настройки регламентного задания:

  1. Откройте Администрирование → Регламентные задания.
  2. Создайте новое задание, выберите тип Выполнение обработки.
  3. Укажите путь к обработке (например, ВыгрузкаЗаказовВExcel.epf).
  4. Настройте расписание (ежедневно, еженедельно и т.д.).
  5. Сохраните и запустите тестовое выполнение.

⚠️ Внимание: при автоматизации экспорта в облачные сервисы (например, Google Sheets) учитывайте ограничения API. Например, Google блокирует частые запросы с одного IP — может потребоваться прокси или паузы между выгрузками.

💡

Для отладки автоматических экспортов используйте журнал регистрации (Администрирование → Журнал регистрации). Фильтруйте записи по имени обработки — так вы увидите все ошибки и предупреждения.

6. Экспорт в JSON: работа с API и веб-сервисами

Формат .json стал стандартом для интеграции 1С с веб-сервисами, мобильными приложениями и low-code платформами (например, n8n или Zapier). Его главные плюсы:

  • 📱 Легковесная структура (файлы меньше, чем XML).
  • 🔌 Нативная поддержка в JavaScript/Python.
  • 🔄 Удобно парсить в современных системах.

Пример выгрузки документа в JSON:

// Создаём объект записи JSON

ЗаписьJSON = Новый ЗаписьJSON;

ЗаписьJSON.УстановитьСтроку();

// Выгружаем документ "Заказ покупателя"

Док = Документы.ЗаказПокупателя.НайтиПоНомеру("000123");

ЗаписьJSON.ЗаписатьНачалоОбъекта();

ЗаписьJSON.ЗаписатьКлючИЗначение("Номер", Док.Номер);

ЗаписьJSON.ЗаписатьКлюч("Дата");

ЗаписьJSON.ЗаписатьЗначение(Формат(Док.Дата, "ДФ=yyyy-MM-dd"));

ЗаписьJSON.ЗаписатьКлюч("Сумма");

ЗаписьJSON.ЗаписатьЧисло(Док.ИтогСумма);

// Выгружаем табличную часть

ЗаписьJSON.ЗаписатьКлюч("Товары");

ЗаписьJSON.ЗаписатьНачалоМассива();

Для Каждого Строка Из Док.Товары Цикл

ЗаписьJSON.ЗаписатьНачалоОбъекта();

ЗаписьJSON.ЗаписатьКлючИЗначение("Номенклатура", Строка.Номенклатура.Наименование);

ЗаписьJSON.ЗаписатьКлючИЗначение("Количество", Строка.Количество);

ЗаписьJSON.ЗаписатьКонецОбъекта();

КонецЦикла;

ЗаписьJSON.ЗаписатьКонецМассива();

ЗаписьJSON.ЗаписатьКонецОбъекта();

ЗаписьJSON.Закрыть();

// Сохраняем в файл

ТекстJSON = ЗаписьJSON.Закрыть();

ТекстJSON.Записать("C:\Export\Заказ_123.json");

🔹 Типичные проблемы при работе с JSON:

  • 🕒 Даты в неверном формате: всегда используйте Формат(Дата, "ДФ=yyyy-MM-dd") для совместимости.
  • 📉 Потеря точности чисел: в JSON нет типа Число с фиксированной точностью — округляйте значения заранее.
  • 🔠 Кодировка символов: если в данных есть кириллица, убедитесь, что файл сохранён в UTF-8.

7. Обработка ошибок: что делать, если экспорт не работает?

Даже при правильной настройке экспорт может завершаться ошибками. Рассмотрим топ-5 проблем и способы их решения:

ОшибкаВероятная причинаРешение
Файл не открывается в ExcelНеверный формат или повреждение данныхПопробуйте сохранить в .csv или используйте обработку ВыгрузкаВExcelПлюс
Ошибка "Недостаточно памяти"Слишком большой объём данныхРазбейте экспорт на части или используйте ПакетнаяЗаписьXML
XML не проходит валидациюОтсутствуют обязательные тегиСверить структуру с XSD-схемой получателя
В JSON пустые значения вместо чиселНе обработаны NULL-значенияЗамените Неопределено на 0 или "" перед экспортом
Экспорт зависает на 99%Блокировка данных другими пользователямиВыполните экспорт в монопольном режиме или ночью

⚠️ Внимание: если ошибка возникает при обмене с государственными системами (например, Честный ЗНАК), проверьте актуальность криптографических сертификатов в личном кабинете. Истёкший сертификат может блокировать загрузку файлов.

Как диагностировать ошибку экспорта?

1. Проверьте журнал регистрации (Администрирование → Журнал регистрации).

2. Включите режим отладки (Сервис → Параметры → Отладка).

3. Если ошибка в XML/JSON — валидируйте файл через онлайн-сервисы (например, XML Validator).

4. Для Excel попробуйте открыть файл в LibreOffice — он чаще показывает конкретную причину.

8. Оптимизация экспорта: как ускорить выгрузку больших данных?

Если в базе миллионы записей, стандартные методы экспорта могут работать часами. Вот проверенные способы ускорения:

  • Пакетная обработка: выгружайте данные порциями по 10 000 строк.
  • Отключение триггеров: перед экспортом временно отключите обработчики событий (УстановитьПривилегированныйРежим(Истина)).
  • Использование временных таблиц: для сложных выборок сначала сохраните данные во временную таблицу, а затем экспортируйте её.
  • Асинхронный экспорт: запускайте выгрузку в фоновом режиме через ФоновоеЗадание.

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

// Используем пакетную запись для ускорения

ЗаписьXML = Новый ЗаписьXML;

ЗаписьXML.ОткрытьФайл("C:\Export\БольшойСправочник.xml");

// Выгружаем данными порциями по 10 000 строк

Выборка = Справочники.Контрагенты.Выбрать();

Пока Выборка.Следующий() Цикл

ЗаписьXML.ЗаписатьНачалоЭлемента("Контрагент");

ЗаписьXML.ЗаписатьАтрибут("ИНН", Выборка.ИНН);

// ... другие поля

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

// Каждые 10 000 строк сбрасываем буфер на диск

Если Выборка.Счетчик() % 10000 = 0 Тогда

ЗаписьXML.Сбросить();

КонецЕсли;

КонецЦикла;

ЗаписьXML.Закрыть();

🔹 Дополнительные советы:

  • 📊 Для Excel: если файлы больше 100 МБ, используйте формат .csv — он открывается быстрее.
  • 📊 Для XML/JSON: сжимайте файлы через ZipАрхив прямо в 1С перед отправкой.
💡

Самый быстрый способ экспорта больших данных — использование ADO или SQL-запросов напрямую к базе. Однако это требует прав администратора и знания структуры таблиц 1С.

FAQ: Ответы на частые вопросы

Как экспортировать данные с сохранением иерархии (например, группы номенклатуры)?

Для сохранения иерархии в Excel используйте обработку ВыгрузкаВExcelСИерархией.epf (доступна на Инфостарте). Для XML убедитесь, что в схеме предусмотрены теги для родительских элементов (например, <Группа><Наименование>Мебель</Наименование></Группа>).

Можно ли экспортировать данные из 1С прямо в Google Sheets?

Да, для этого нужно:

  1. Создать Google Apps Script с функцией загрузки данных.
  2. В 1С использовать HTTPСоединение для отправки JSON на веб-хук скрипта.
  3. Настроить авторизацию через OAuth 2.0 (или использовать сервисный аккаунт).

Готовые решения есть на Гитхабе (поиск по запросу 1C to Google Sheets).

Почему при экспорте в Excel русские буквы отображаются как "?????"?

Это проблема кодировки. Решения:

  • При сохранении файла выберите Юникод (UTF-8).
  • В коде экспорта добавьте строку Запись.УстановитьКодировкуТекста(КодировкаТекста.UTF8).
  • Откройте файл в LibreOffice и сохраните с правильной кодировкой.
Как автоматизировать экспорт так, чтобы файл отправлялся по email?

Используйте комбинацию регламентного задания и встроенной почты 1С:

// После выгрузки файла

Письмо = Новый ПочтаMail;

Письмо.Адресат = "client@example.com";

Письмо.Тема = "Ежедневный отчёт по продажам";

Письмо.Текст = "Во вложении актуальные данные.";

Письмо.Вложения.Добавить("C:\Export\Отчёт.xlsx");

Письмо.Отправить();

Для надёжности настройте SMTP-сервер в параметрах почты 1С.

Какие обработки для экспорта вы рекомендуете?

Топ-5 проверенных обработок с Инфостарта:

  1. ВыгрузкаУниверсальнаяXMLJSON — поддерживает оба формата и гибкие настройки.
  2. ВыгрузкаВExcelПлюс — расширенные возможности для Excel (цвета, формулы).
  3. ОбменСWildberries — специализированная выгрузка для маркетплейса.
  4. ВыгрузкаДляЧестногоЗНАКа — формирует XML по требованиям ГИС МТ.
  5. МенеджерЭкспортаИмпорта — универсальный инструмент с историей выгрузок.

Все обработки бесплатны в базовой версии, но для некоторых нужна подписка на 1С:ИТС.