Как выгрузить данные из 1С в Excel, XML и другие форматы

· 9 мин

Содержание

Выгрузить данные из 1С можно двумя разными способами, и выбор зависит от того, куда они пойдут. Если нужно показать таблицу бухгалтеру или залить в Excel — подойдут штатные кнопки сохранения прямо из любого списка или отчёта. Если данные примет другая программа — используют обмен через XML или JSON, типовые правила синхронизации и публикацию OData.

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

Что и в каком виде вообще выгружается из 1С

Прежде чем жать кнопки, определите тип результата — от него зависит способ.

  • 📄 Один список или отчёт «как на экране» — таблица для человека. Формат: Excel, PDF, табличный документ .mxl.
  • 🔁 Массив объектов для другой базы 1С — документы, справочники, остатки. Формат: XML (универсальный формат EnterpriseData или план обмена).
  • 🔗 Данные для внешней программы (сайт, CRM, BI) — через JSON или OData-интерфейс по запросу.
  • 🏛 Регламентированная отчётность в ФНС, СФР, Росстат — строго заданный XML по формату ведомства.
  • 💾 Вся база целиком — файл выгрузки .dt для переноса или резервной копии.

Запомните это деление: половина ошибок новичков в том, что для обмена между базами пытаются сохранить список в Excel, а потом грузят его обратно вручную.

Какой формат выбрать: Excel, XML, JSON, mxl

У каждого формата своё назначение, и «универсального лучшего» нет.

ФорматДля чегоОткрывается в
.xlsxтаблицы для анализа, отправка контрагентуExcel, Google Таблицы
.mxlтабличный документ 1С с сохранением структурытолько в 1С
.pdfпечать, неизменяемый документлюбой просмотрщик
.xmlобмен между базами, отчётность1С, парсеры
.jsonинтеграция с веб-сервисами и APIкод, браузер
.csv / .txtпростой перенос табличных данныхExcel, БД

Для выгрузки в Excel берите именно .xlsx (тип «Лист Excel 2007-…»), а не старый .xls: в нём ограничение ~65 тысяч строк, и большой список обрежется без предупреждения.

JSON в 1С пишется не кнопкой, а через механизм сериализации (ЗаписьJSON) или отдаётся по OData-запросу. Если задача — просто «отдать таблицу», JSON вам не нужен, берите Excel.

Куда пойдут данные — выберите способ выгрузки

Выгрузка списков и отчётов штатными средствами

Это самый частый сценарий и он не требует программирования.

Любой список (справочник «Номенклатура», журнал документов , список контрагентов):

  1. Откройте список и, если нужно, настройте отбор и колонки.
  2. В командной панели нажмите Ещё и выберите команду вывода списка (в типовых — Вывести список).
  3. В окне укажите, что выгружать: все строки или только выделенные, какие колонки включить.
  4. Нажмите ОК — данные откроются как табличный документ.
  5. Сохраните его: Главное меню → Файл → Сохранить как, в поле «Тип файла» выберите Лист Excel 2007-... (*.xlsx).

Любой отчёт (ОСВ, «Анализ счёта», «Остатки товаров»):

  1. Сформируйте отчёт кнопкой Сформировать.
  2. Нажмите кнопку сохранения на панели отчёта (значок дискеты) или Главное меню → Файл → Сохранить как.
  3. Выберите формат: .xlsx для расчётов, .pdf для неизменяемого вида, .mxl чтобы позже открыть в 1С без потери оформления.

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

Табличный документ, который вы видите на экране, можно сохранить ещё и в .ods, .html, .txt. Выбор — в том же поле «Тип файла».

Обмен данными между базами 1С: XML и синхронизация

Когда данные должна принять другая база 1С, Excel не подходит — нужен машинный формат.

Типовая синхронизация данных. В большинстве конфигураций путь: Администрирование → Синхронизация данных. Здесь настраивается регулярный обмен (например, Бухгалтерия ↔ Управление торговлей) по готовым правилам. Выгрузка и загрузка идут автоматически по расписанию или по кнопке Синхронизировать.

Выгрузка в универсальный формат EnterpriseData. Это XML-формат, который понимают все современные типовые конфигурации. Он используется внутри синхронизации, но выгрузку в файл можно сделать и вручную — через настройку обмена «с указанием каталога», когда вторая база недоступна напрямую. Файл кладётся в каталог, вторая база его оттуда забирает.

Обработка «Выгрузка и загрузка данных XML». Для разовых переносов отдельных объектов (перенести справочник контрагентов, выгрузить документы за период) применяют внешнюю обработку выгрузки в XML. Её запускают через Файл → Открыть и указывают, какие объекты и за какой период выгрузить. Это инструмент администратора, а не ежедневный обмен.

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

При обмене важно сопоставить поля источника и приёмника — иначе часть данных не загрузится.

Сопоставление полей
Контрагент (источник)→Контрагенты (приёмник)
ИНН→Поиск по ИНН и КПП
Номенклатура→Справочник номенклатуры
Единица измерения→Классификатор ОКЕИ
Договор→Договоры контрагента

Выгрузка во внешние системы: OData и JSON

Если данные забирает не 1С, а сайт, мобильное приложение или BI-система, используют REST-интерфейс.

Стандартный интерфейс OData. Платформа 8.3 умеет автоматически отдавать данные по протоколу OData — без написания кода. Порядок такой:

  1. В конфигураторе откройте состав стандартного интерфейса OData и включите в него нужные объекты (справочники, документы, регистры).
  2. Опубликуйте базу на веб-сервере: Конфигуратор → Администрирование → Публикация на веб-сервере, установите флажок стандартного интерфейса OData.
  3. Внешняя система обращается к адресу публикации и получает данные в формате XML (Atom) или JSON — формат задаётся параметром запроса $format=json.

Это стандартный способ «отдать 1С наружу» без доработки конфигурации.

Выгрузка в JSON кодом. Когда нужен нестандартный формат файла, пишут обработку с использованием объектов записи JSON (ЗаписьJSON, ЗаписатьJSON). Пример в самом общем виде:

Запись = Новый ЗаписьJSON;
Запись.ОткрытьФайл(ИмяФайла);
СтруктураДанных = Новый Структура("Код, Наименование", Код, Наименование);
ЗаписатьJSON(Запись, СтруктураДанных);
Запись.Закрыть();

Этот путь — для программиста. Если своей разработки нет, оставайтесь на OData или Excel.

Публикация на веб-сервере открывает доступ к данным по сети. Ограничьте состав объектов OData только нужными и настройте права отдельного пользователя для интеграции — не используйте учётную запись с полными правами.

Выгрузка отчётности для ФНС, СФР и Росстата

Регламентированная отчётность выгружается не как обычный список, а строго по формату ведомства — одна лишняя колонка, и приёмный шлюз файл отклонит.

  1. Откройте нужный отчёт в разделе регламентированной отчётности (в Бухгалтерии — Отчёты → Регламентированные отчёты или «1С-Отчётность»).
  2. Заполните и проверьте отчёт встроенной проверкой контрольных соотношений.
  3. Нажмите Выгрузить — программа сформирует файл в утверждённом электронном формате (XML с именем по маске ведомства).
  4. Файл передайте через вашего оператора ЭДО или загрузите в кабинет ведомства.

Отдельно учтите:

  • Фонд, принимающий взносы и сведения о страховом стаже, с 2023 года — это СФР (объединённый Социальный фонд, бывшие ПФР и ФСС). Форматы отчётов в него обновились, старые имена файлов не подойдут.
  • Для ФНС (декларации, РСВ, 6-НДФЛ) формат выгрузки задаёт налоговая, и он меняется с выходом новых редакций форм. Используйте актуальный релиз конфигурации — иначе выгрузится устаревший формат.
  • Для Росстата набор форм зависит от попадания организации в выборку; формы также выгружаются в XML утверждённого образца.

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

Выгрузка всей информационной базы (файл .dt)

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

  1. Запустите базу в режиме Конфигуратор.
  2. Меню Администрирование → Выгрузить информационную базу.
  3. Укажите имя и каталог для файла .dt и дождитесь окончания.

Для выгрузки .dt нужен монопольный доступ: все пользователи должны выйти из базы, иначе конфигуратор не начнёт выгрузку. Делайте это в нерабочее время. Файл .dt содержит все данные базы — храните его как конфиденциальную резервную копию.

Обратно база разворачивается командой Администрирование → Загрузить информационную базу в конфигураторе уже другой (пустой) базы.

Автоматизация выгрузки по расписанию

Разовую выгрузку делают руками, регулярную — регламентным заданием.

Синхронизация по расписанию. В настройках синхронизации данных задаётся расписание: интервал, часы, дни недели. База сама выгружает и загружает изменения без участия человека.

Регламентные задания. Для нестандартной выгрузки (например, ежедневно сохранять прайс в XML в сетевой каталог) настраивают регламентное задание с кодом выгрузки. Важный нюанс по режимам:

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

Расписание фоновых заданий в типовых смотрят в разделе обслуживания (Администрирование → Обслуживание), управление заданиями на сервере — в консоли администрирования кластера.

Частые ошибки при выгрузке и как их обойти

Диагностика: выберите симптом

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

Можно ли выгрузить данные из 1С без конфигуратора?
Да. Списки, отчёты, обмен по XML и OData работают в обычном режиме «1С:Предприятие». Конфигуратор нужен только для выгрузки всей базы в файл .dt и для настройки состава OData.
Чем отличается выгрузка в Excel от обмена данными?
Excel — это «снимок» таблицы для человека, обратно в 1С он автоматически не загрузится. Обмен (XML, синхронизация) переносит объекты с их связями так, что принимающая база создаёт из них документы и справочники.
В каком формате выгружать данные для другой программы?
Если принимающая сторона поддерживает OData — публикуйте стандартный интерфейс и отдавайте JSON по запросу. Если нужен файл — согласуйте с получателем формат (чаще CSV или XML) и выгружайте обработкой.
Сохранятся ли при выгрузке в Excel формулы и группировки отчёта?
Значения — да, а группировки и объединённые ячейки переносятся не всегда корректно. Для дальнейших расчётов выгружайте отчёт без группировки строк.
Как выгрузить данные только за определённый период?
В отчётах задайте период в шапке перед формированием. При выгрузке документов через обработку XML укажите отбор по дате. В синхронизации период первичной выгрузки задаётся в её настройках.