Экспорт из 1С 8.3 в Excel, PDF, XML и JSON: от одного отчёта до всей базы

· 12 мин

Содержание

Чтобы выгрузить файл из 1С, откройте отчёт, список или печатную форму и выберите в главном меню (кнопка с тремя полосками слева вверху) Файл → Сохранить как. Программа предложит формат: Excel (xlsx), PDF, Word (docx), HTML, текст или собственный табличный формат 1С (mxl). Так работает любая конфигурация на платформе 8.3 — Бухгалтерия, ЗУП, УТ, УНФ.

Частое заблуждение — думать, что для выгрузки данных нужен программист или специальная обработка. Для 90 % задач хватает того, что уже есть в программе. Обработки и код нужны, когда данные переносят в другую базу или в чужую систему: тогда речь идёт уже о форматах XML и JSON, а не о «файле для Excel».

Что именно вы выгружаете: выбор способа

Сначала определите, что нужно получить на выходе. От этого зависит инструмент.

Что нужноСпособФормат на выходеНужны права администратора
Отчёт (ОСВ, анализ счёта, ведомость)Файл → Сохранить какxlsx, pdf, docx, mxlНет
Печатная форма (счёт, акт, УПД, накладная)Кнопка сохранения в окне печатиpdf, xlsx, docx, mxlНет
Список документов или справочникаЕщё → Вывести списокxlsx, mxlНет
Прикреплённый к документу скан или файлКоманда «Сохранить как» в списке файловисходный форматНет
Справочники и документы для другой базы 1СУниверсальный обмен данными в формате XMLxmlДа
Данные для сайта, банка, внешнего сервисаОбработка или кодxml, json, csv, txtДа
Вся база целикомКонфигуратор, выгрузка информационной базыdtДа
Что вы хотите выгрузить из 1С?

Сохранение отчётов и табличных документов в файл

Всё, что 1С показывает в виде таблицы с ячейками, — это табличный документ. Отчёты, оборотно-сальдовые ведомости, результаты «Вывести список », печатные формы — всё это табличные документы. Сохраняются они одинаково.

Отчёт в Excel, PDF или Word

  1. Сформируйте отчёт с нужным периодом и отборами.
  2. Щёлкните в любую ячейку отчёта, чтобы фокус был на таблице, а не на панели настроек.
  3. Откройте главное меню (три полоски в левом верхнем углу) и выберите Файл → Сохранить как.
  4. В окне сохранения выберите папку и в поле типа файла — нужный формат.
  5. Нажмите «Сохранить».

В формах большинства отчётов есть и отдельная кнопка с изображением дискеты на командной панели — она открывает то же окно. Сочетание клавиш Ctrl+S в открытом отчёте тоже вызывает сохранение.

Какой формат выбрать:

  • 📊 xlsx — для работы в Excel: суммы остаются числами, их можно складывать и фильтровать.
  • 📄 pdf — для отправки, печати и архива: вид документа не изменится ни на каком компьютере.
  • 📝 docx — если документ нужно отредактировать текстом.
  • 🗂 mxl — родной формат 1С. Откроется в любой 1С и в бесплатной программе «1С:Предприятие — Работа с файлами».
  • 🌐 html — для публикации в браузере или вставки в письмо.
  • 🔤 txt — для загрузки в программы, которые читают только текст.

Формата CSV в списке типов нет. Если получатель требует CSV, сохраните таблицу в xlsx, откройте её в Excel и сохраните как «CSV (разделители — точки с запятой)». Для регулярной выгрузки CSV лучше подходит код, о нём ниже.

Печатные формы: счёт, акт, УПД

У печатных форм свой сценарий. Нажмите в документе «Печать» и выберите форму. В окне предварительного просмотра на верхней панели есть кнопка сохранения с дискетой.

Она открывает окно, где можно:

  1. Отметить один или несколько форматов сразу — например, PDF и xlsx.
  2. Включить упаковку в zip-архив, если документов много.
  3. Выбрать, куда сохранить: в папку на диске или прикрепить файл к самому документу в базе.

Если печатаете комплект из нескольких форм (счёт + акт + счёт-фактура), каждая сохранится отдельным файлом. Рядом с кнопкой сохранения обычно есть и кнопка отправки по почте — она сама сформирует вложение в выбранном формате.

Список документов или элементов справочника

Когда нужен не отчёт, а сам список — например, все поступления за месяц или вся номенклатура:

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

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

Прикреплённые файлы

К документам и справочникам можно прикреплять сканы договоров, фото, письма. Чтобы достать такой файл обратно, откройте карточку объекта и перейдите к прикреплённым файлам — обычно это ссылка или кнопка со скрепкой. Выделите файл и выберите команду сохранения на диск. Файл выгрузится в том виде, в каком его загружали: PDF останется PDF, фото — JPG.

Справочники и документы через обработки

Сохранение отчёта даёт «картинку» данных. Её удобно читать, но загрузить обратно в другую 1С так, чтобы появились настоящие документы с проводками, нельзя. Для переноса объектов нужна выгрузка в XML.

Обработка «Выгрузка и загрузка данных XML»

Это внешняя обработка (.epf), которую фирма 1С распространяет на диске ИТС. Её открывают через Файл → Открыть в режиме 1С:Предприятие. Она выгружает выбранные объекты как есть, вместе со всеми реквизитами и ссылками.

Главное ограничение: загружать такой файл можно только в базу с той же конфигурацией и тем же релизом. Между разными конфигурациями (например, из УТ в Бухгалтерию) эта обработка не переносит. Её используют, чтобы:

  • перенести справочники между двумя копиями одной базы;
  • выгрузить часть данных перед экспериментом и вернуть их назад;
  • передать фрагмент базы программисту для разбора ошибки.

Загрузка через эту обработку записывает объекты напрямую, минуя проверки программы. Перед загрузкой в рабочую базу сделайте резервную копию. Объекты с совпадающими ссылками будут перезаписаны.

Внешние обработки под конкретную задачу

Многие внешние сервисы (банки, маркетплейсы, системы сдачи отчётности, сайты) поставляют свою обработку выгрузки. Её подключают в разделе Администрирование → Печатные формы, отчёты и обработки → Дополнительные отчёты и обработки. После подключения команда выгрузки появляется в нужном разделе или в форме документа.

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

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

Это штатный инструмент типовых конфигураций для переноса данных между разными программами 1С. Он работает по правилам обмена — файлу, где описано, какой объект источника превращается в какой объект приёмника.

Где найти

В Бухгалтерии 8.3 и других конфигурациях на БСП обработка входит в состав программы. Открыть её проще всего через полный список объектов:

  1. Включите показ служебных команд: главное меню Сервис → Параметры, флаг «Отображать команду “Все функции”».
  2. В главном меню откройте «Все функции» (в новых версиях платформы пункт называется «Функции для технического специалиста»).
  3. Разверните ветку «Обработки» и откройте «Универсальный обмен данными в формате XML».

Как выгрузить данные

  1. На вкладке выгрузки укажите файл правил обмена (.xml). Правила для пары «откуда — куда» берут на ИТС или в поставке конфигурации-приёмника.
  2. Нажмите загрузку правил. В дереве появится список того, что можно выгрузить.
  3. Отметьте нужные виды данных: например, только «Контрагенты» и «Договоры».
  4. Задайте период и отборы — для документов это обязательно, иначе выгрузится вся история.
  5. Укажите имя файла данных и нажмите «Выгрузить данные».

В базе-приёмнике та же обработка на вкладке загрузки читает файл данных. Правила внутри файла уже есть, отдельно их указывать не нужно.

Сначала выгрузите один месяц и проверьте результат в приёмнике. Ошибку в сопоставлении проще увидеть на 50 документах, чем на 5 000.

Синхронизация вместо разовой выгрузки

Если данные нужно передавать регулярно (например, из УТ в Бухгалтерию каждый день), разовая выгрузка файлом неудобна. Для типовых пар конфигураций есть настройка синхронизации: Администрирование → Синхронизация данных. Она передаёт изменения в формате EnterpriseData по расписанию, через общий каталог, FTP или интернет.

Экспорт в XML, JSON и CSV для внешних систем

Сайт, CRM, складская программа или банк ждут файл в своём формате. Готовой кнопки под каждый формат нет, поэтому есть три пути.

Готовые механизмы конфигурации

Многие сценарии уже встроены:

  • 🏦 платёжные поручения выгружаются в файл для клиент-банка в формате обмена 1CClientBankExchange (текстовый файл .txt);
  • 🧾 документы для ЭДО и отчётность формируются в XML по форматам ФНС;
  • 🛒 обмен с сайтом в БСП-конфигурациях идёт по протоколу CommerceML (XML).

Начните с поиска такой настройки в своей конфигурации: она уже учитывает формат получателя.

Стандартный интерфейс OData

Платформа умеет публиковать данные базы по REST-протоколу OData. Внешняя система сама забирает справочники и документы в JSON или XML, файл вообще не нужен. Для этого базу публикуют на веб-сервере и в настройках открывают доступ к нужным объектам. Подходит для отчётов в Power BI и обмена с сайтами.

Свой код: выгрузка в JSON

Если формат простой, его выгрузит короткая процедура во внешней обработке. Пример выгружает код, наименование и ИНН контрагентов в JSON-файл:

&НаСервере
Процедура ВыгрузитьКонтрагентовНаСервере(ИмяФайла)

    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    |    Контрагенты.Код КАК Код,
    |    Контрагенты.Наименование КАК Наименование,
    |    Контрагенты.ИНН КАК ИНН
    |ИЗ
    |    Справочник.Контрагенты КАК Контрагенты
    |ГДЕ
    |    НЕ Контрагенты.ЭтоГруппа
    |    И НЕ Контрагенты.ПометкаУдаления";

    Выборка = Запрос.Выполнить().Выбрать();
    Данные = Новый Массив;

    Пока Выборка.Следующий() Цикл
        Элемент = Новый Структура("code,name,inn",
            Выборка.Код, Выборка.Наименование, Выборка.ИНН);
        Данные.Добавить(Элемент);
    КонецЦикла;

    Запись = Новый ЗаписьJSON;
    Запись.ОткрытьФайл(ИмяФайла, "UTF-8");
    ЗаписатьJSON(Запись, Данные);
    Запись.Закрыть();

КонецПроцедуры

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

Свой код: выгрузка в CSV

Для CSV удобен объект ЗаписьТекста. Разделитель — точка с запятой, так файл без настроек откроется в русской версии Excel:

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

Пока Выборка.Следующий() Цикл
    Запись.ЗаписатьСтроку(СтрШаблон("%1;%2;%3",
        Выборка.Код,
        СтрЗаменить(Выборка.Наименование, ";", ","),
        Выборка.ИНН));
КонецЦикла;

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

Точку с запятой внутри названий заменяем на запятую, иначе строка «развалится» на лишние колонки. Если получатель — старая программа, которая не понимает UTF-8, укажите кодировку "windows-1251".

Для XML есть объекты ЗаписьXML и XDTO. Их выбирают, когда получатель прислал XSD-схему: XDTO проверит файл на соответствие схеме ещё до отправки.

Большие объёмы: как выгрузить и не повесить программу

Отчёт на 200 строк сохраняется мгновенно. На 300 000 строк 1С может думать минутами или выдать ошибку нехватки памяти. Несколько правил:

ПроблемаПричинаЧто делать
Excel не открывает весь файлЛимит листа: 1 048 576 строк в xlsx, 65 536 в старом xlsДелить выгрузку по периодам или организациям
«Вывести список» работает очень долгоТаблица строится на клиенте целикомСузить отбор, убрать лишние колонки, выгружать частями
Отчёт формируется, но не сохраняетсяНе хватает памяти клиентского процессаСохранять в mxl или txt, разбить отчёт по периодам
Универсальный обмен выгружает часамиВыбраны все документы за все годыОтбор по периоду, выгрузка по одному виду документов

Ещё приёмы:

  • 📅 Выгружайте помесячно и собирайте файлы уже в Excel — это быстрее, чем один гигантский отчёт.
  • 🧹 Отключите в отчёте детализацию, которая не нужна: развёрнутые субконто и группировки по дням множат строки.
  • 🖥 Тяжёлую выгрузку кодом запускайте на сервере и в нерабочее время, чтобы не тормозить коллег.
  • 🔢 Для выборок в сотни тысяч записей в коде используйте Выбрать() и запись построчно, а не Выгрузить() в таблицу значений: так данные не копятся в памяти целиком.

Вся база одним файлом

Если цель — перенести всю базу или отдать её программисту, отчёты и обмены не нужны. Откройте базу в Конфигураторе и выберите Администрирование → Выгрузить информационную базу. Получится файл .dt со всеми данными и конфигурацией.

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

Почему файл не выгружается или выгружается неправильно

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

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

Можно ли выгрузить из 1С сразу несколько отчётов в один файл Excel?
Штатно — нет, каждый отчёт сохраняется отдельным файлом. Объединяют их уже в Excel, копируя листы. Для регулярной задачи пишут обработку, которая собирает отчёты в один табличный документ.
Чем открыть файл mxl, если 1С не установлена?
Бесплатной программой «1С:Предприятие — Работа с файлами». Она открывает и печатает mxl, а также пересохраняет его в xlsx и pdf.
Нужна ли лицензия 1С, чтобы выгрузить данные?
Да, выгрузка идёт из запущенной программы, а без лицензии платформа базу не запускает. Исключение — учебная версия, но в ней своя ограниченная база.
Почему выгрузка в xlsx занимает больше места, чем в mxl?
Размер зависит от оформления: рамки, шрифты и объединённые ячейки увеличивают xlsx. Для больших таблиц без оформления разница обычно невелика, а xlsx удобнее для дальнейшей работы.
Можно ли настроить автоматическую выгрузку файла по расписанию?
Да, через регламентное задание в конфигурации или синхронизацию данных. Для типовых обменов это настраивается без программиста, для своих форматов нужна доработка.