Экспорт из 1С 8.3 в Excel, PDF, XML и JSON: от одного отчёта до всей базы
Содержание
Чтобы выгрузить файл из 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С | Универсальный обмен данными в формате XML | xml | Да |
| Данные для сайта, банка, внешнего сервиса | Обработка или код | xml, json, csv, txt | Да |
| Вся база целиком | Конфигуратор, выгрузка информационной базы | dt | Да |
Сохранение отчётов и табличных документов в файл
Всё, что 1С показывает в виде таблицы с ячейками, — это табличный документ. Отчёты, оборотно-сальдовые ведомости, результаты «Вывести список », печатные формы — всё это табличные документы. Сохраняются они одинаково.
Отчёт в Excel, PDF или Word
- Сформируйте отчёт с нужным периодом и отборами.
- Щёлкните в любую ячейку отчёта, чтобы фокус был на таблице, а не на панели настроек.
- Откройте главное меню (три полоски в левом верхнем углу) и выберите
Файл → Сохранить как. - В окне сохранения выберите папку и в поле типа файла — нужный формат.
- Нажмите «Сохранить».
В формах большинства отчётов есть и отдельная кнопка с изображением дискеты на командной панели — она открывает то же окно. Сочетание клавиш Ctrl+S в открытом отчёте тоже вызывает сохранение.
Какой формат выбрать:
- 📊
xlsx— для работы в Excel: суммы остаются числами, их можно складывать и фильтровать. - 📄
pdf— для отправки, печати и архива: вид документа не изменится ни на каком компьютере. - 📝
docx— если документ нужно отредактировать текстом. - 🗂
mxl— родной формат 1С. Откроется в любой 1С и в бесплатной программе «1С:Предприятие — Работа с файлами». - 🌐
html— для публикации в браузере или вставки в письмо. - 🔤
txt— для загрузки в программы, которые читают только текст.
Формата CSV в списке типов нет. Если получатель требует CSV, сохраните таблицу в xlsx, откройте её в Excel и сохраните как «CSV (разделители — точки с запятой)». Для регулярной выгрузки CSV лучше подходит код, о нём ниже.
Печатные формы: счёт, акт, УПД
У печатных форм свой сценарий. Нажмите в документе «Печать» и выберите форму. В окне предварительного просмотра на верхней панели есть кнопка сохранения с дискетой.
Она открывает окно, где можно:
- Отметить один или несколько форматов сразу — например, PDF и xlsx.
- Включить упаковку в zip-архив, если документов много.
- Выбрать, куда сохранить: в папку на диске или прикрепить файл к самому документу в базе.
Если печатаете комплект из нескольких форм (счёт + акт + счёт-фактура), каждая сохранится отдельным файлом. Рядом с кнопкой сохранения обычно есть и кнопка отправки по почте — она сама сформирует вложение в выбранном формате.
Список документов или элементов справочника
Когда нужен не отчёт, а сам список — например, все поступления за месяц или вся номенклатура:
- Откройте список (журнал документов или справочник).
- Настройте отбор и колонки:
Ещё → Настроить список, если нужны дополнительные поля. - Нажмите
Ещё → Вывести список. - В появившемся окне отметьте колонки и выберите вывод в табличный документ.
- Полученную таблицу сохраните через
Файл → Сохранить каквxlsx.
«Вывести список» выгружает только то, что видно с учётом текущего отбора. Если в списке включён отбор по организации или периоду, в файл попадёт только эта часть. Проверьте строку отбора над списком до выгрузки.
Прикреплённые файлы
К документам и справочникам можно прикреплять сканы договоров, фото, письма. Чтобы достать такой файл обратно, откройте карточку объекта и перейдите к прикреплённым файлам — обычно это ссылка или кнопка со скрепкой. Выделите файл и выберите команду сохранения на диск. Файл выгрузится в том виде, в каком его загружали: PDF останется PDF, фото — JPG.
Справочники и документы через обработки
Сохранение отчёта даёт «картинку» данных. Её удобно читать, но загрузить обратно в другую 1С так, чтобы появились настоящие документы с проводками, нельзя. Для переноса объектов нужна выгрузка в XML.
Обработка «Выгрузка и загрузка данных XML»
Это внешняя обработка (.epf), которую фирма 1С распространяет на диске ИТС. Её открывают через Файл → Открыть в режиме 1С:Предприятие. Она выгружает выбранные объекты как есть, вместе со всеми реквизитами и ссылками.
Главное ограничение: загружать такой файл можно только в базу с той же конфигурацией и тем же релизом. Между разными конфигурациями (например, из УТ в Бухгалтерию) эта обработка не переносит. Её используют, чтобы:
- перенести справочники между двумя копиями одной базы;
- выгрузить часть данных перед экспериментом и вернуть их назад;
- передать фрагмент базы программисту для разбора ошибки.
Загрузка через эту обработку записывает объекты напрямую, минуя проверки программы. Перед загрузкой в рабочую базу сделайте резервную копию. Объекты с совпадающими ссылками будут перезаписаны.
Внешние обработки под конкретную задачу
Многие внешние сервисы (банки, маркетплейсы, системы сдачи отчётности, сайты) поставляют свою обработку выгрузки. Её подключают в разделе Администрирование → Печатные формы, отчёты и обработки → Дополнительные отчёты и обработки. После подключения команда выгрузки появляется в нужном разделе или в форме документа.
Перед подключением чужой обработки проверьте источник: внешняя обработка получает те же права, что и пользователь, который её запустил.
Универсальный обмен данными в формате XML
Это штатный инструмент типовых конфигураций для переноса данных между разными программами 1С. Он работает по правилам обмена — файлу, где описано, какой объект источника превращается в какой объект приёмника.
Где найти
В Бухгалтерии 8.3 и других конфигурациях на БСП обработка входит в состав программы. Открыть её проще всего через полный список объектов:
- Включите показ служебных команд: главное меню
Сервис → Параметры, флаг «Отображать команду “Все функции”». - В главном меню откройте «Все функции» (в новых версиях платформы пункт называется «Функции для технического специалиста»).
- Разверните ветку «Обработки» и откройте «Универсальный обмен данными в формате XML».
Как выгрузить данные
- На вкладке выгрузки укажите файл правил обмена (
.xml). Правила для пары «откуда — куда» берут на ИТС или в поставке конфигурации-приёмника. - Нажмите загрузку правил. В дереве появится список того, что можно выгрузить.
- Отметьте нужные виды данных: например, только «Контрагенты» и «Договоры».
- Задайте период и отборы — для документов это обязательно, иначе выгрузится вся история.
- Укажите имя файла данных и нажмите «Выгрузить данные».
В базе-приёмнике та же обработка на вкладке загрузки читает файл данных. Правила внутри файла уже есть, отдельно их указывать не нужно.
Сначала выгрузите один месяц и проверьте результат в приёмнике. Ошибку в сопоставлении проще увидеть на 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 пользователям лучше выйти из базы: данные, которые они меняют во время выгрузки, могут попасть в файл не в согласованном виде. Делайте это вне рабочего времени и предупредите коллег заранее.