Выгрузка отчёта 1С 8.3 в Excel, PDF, MXL и в отдельный файл .erf
Содержание
Сформированный отчёт в 1С 8.3 сохраняют во внешний файл так: щёлкните мышью внутри таблицы отчёта, нажмите Ctrl+S или откройте главное меню (кнопка с тремя полосками слева вверху) → Файл → Сохранить как. В окне сохранения выберите тип файла: Excel (.xlsx), PDF, Word (.docx), табличный документ 1С (.mxl) или HTML.
Это функция платформы, поэтому путь одинаков в Бухгалтерии 3.0, ЗУП 3.1, УТ 11 и других конфигурациях на интерфейсе «Такси». Отличаются только дополнительные сервисы: рассылки, архивирование печатных форм. Если же «сохранить как внешний» нужно сам отчёт — его схему или объект целиком, чтобы перенести в другую базу, — это делают в Конфигураторе, об этом ниже.
Какой формат выбрать при сохранении отчёта в файл
Выбор формата зависит от того, что будут делать с файлом дальше. Коротко:
| Формат | Расширение | Когда выбирать | Ограничения |
|---|---|---|---|
| 📊 Лист Excel 2007+ | .xlsx | Дальнейшие расчёты, сводные таблицы, отправка аудитору | Расшифровки 1С не сохраняются |
| 📊 Лист Excel 97 | .xls | Только если у получателя очень старый Excel | Не больше 65 536 строк на лист |
.pdf | Отправка контрагенту, банку, руководителю «как есть» | Редактировать нельзя, зависит от шрифтов | |
| 📝 Документ Word | .docx | Отчёт нужно вставить в пояснительную записку | Широкие таблицы переносятся плохо |
| 🗂 Табличный документ | .mxl | Передать коллеге с 1С, сохранить оформление один в один | Открывается программами 1С |
| 🌐 HTML | .html | Публикация во внутреннем портале | Оформление упрощается |
| 🔤 Текст / ODS | .txt, .ods | Загрузка в другую программу, LibreOffice | Без форматирования (txt) |
Для большинства задач хватает двух форматов: .xlsx, если с цифрами будут работать, и PDF, если отчёт отправляют на чтение.
Файл .mxl можно открыть без установленной платформы: фирма 1С бесплатно распространяет программу «1С:Предприятие — Работа с файлами». В ней же MXL можно пересохранить в Excel.
Сохранение отчёта во внешний файл из рабочей базы: пошагово
В тонком клиенте (обычный запуск 1С)
- Откройте отчёт и нажмите
Сформировать. Сохраняется только то, что уже выведено на экран. Пустая форма даст пустой файл. - Щёлкните по любой ячейке результата. Фокус должен быть на таблице, а не на поле периода или фильтра.
- Нажмите
Ctrl+Sили главное меню →Файл → Сохранить как. - В поле «Тип файла» выберите формат. По умолчанию стоит «Табличный документ (*.mxl)» — его часто пропускают и потом не могут открыть файл.
- Укажите папку и имя файла, нажмите
Сохранить.
В некоторых формах отчётов на панели есть кнопка с дискетой или команда сохранения в меню Ещё. Она делает то же самое.
В веб-клиенте и через браузер
В веб-клиенте шаги те же, но файл не записывается в выбранную папку напрямую. 1С формирует его и передаёт браузеру, а дальше всё решает браузер: файл окажется в папке «Загрузки» или браузер спросит, куда его положить.
Если ничего не скачивается, проверьте, не блокирует ли браузер всплывающие окна и загрузки для адреса базы. Для облачных сервисов (1С:Фреш и аналоги) это самая частая причина.
Печатные формы документов
Счёт, акт или накладная в 1С — тоже табличный документ, только открытый из документа кнопкой Печать. В типовых конфигурациях в форме печати есть своя кнопка сохранения. Её удобство в том, что можно отметить сразу несколько форматов, например PDF и Excel, и включить упаковку в ZIP-архив.
Это удобнее, чем Сохранить как, когда печатается пакет документов: все формы сохранятся отдельными файлами за один раз.
Что настроить в отчёте до выгрузки: параметры страницы и вывод
Файл повторяет то, что вы видите на экране, плюс параметры печати. Поэтому порядок такой: сначала довести отчёт до нужного вида, потом сохранять.
Настройки самого отчёта
Кнопка Настройки в форме отчёта (в отчётах на системе компоновки данных) управляет тем, что попадёт в файл:
- 🔹 Группировки. Лишние уровни лучше убрать. В Excel многоуровневые группировки превращаются в длинную простыню строк.
- 🔹 Показатели и колонки. Отключите ненужные — файл станет уже и читаемее.
- 🔹 Отбор. Выгружайте нужный срез, а не всю базу, особенно в
.xlsс его лимитом строк. - 🔹 Оформление. Заголовок отчёта, параметры и отборы выводятся в шапке, их можно отключить в настройках вывода.
Если такой отчёт нужен регулярно, сохраните настройки как вариант отчёта. В следующий раз выберите вариант, сформируйте и сохраните файл без повторной настройки.
Параметры страницы для PDF и Word
Для PDF и Word важны параметры печати: ориентация, поля и масштаб. Они задаются в предварительном просмотре или в окне параметров страницы, которое открывается через главное меню → Файл.
- 📐 Ориентация. Широкие отчёты (оборотно-сальдовая ведомость, анализ счёта) сохраняйте в альбомной ориентации.
- 📐 Масштаб. Режим «по ширине страницы» убирает обрезанные справа колонки.
- 📐 Повторяющиеся строки. Шапку таблицы можно повторять на каждой странице. В PDF на 30 листов без этого не разобраться.
Перед сохранением посмотрите отчёт в предварительном просмотре: PDF получится ровно таким, каким его показывает просмотр.
Как сохранить сам отчёт как внешний файл: схема, макет, .erf
Иногда под «сохранить отчёт как внешний файл» имеют в виду не результат, а сам отчёт: передать его в другую базу, отдать разработчику или сделать резервную копию перед доработкой. Для этого нужен Конфигуратор и права администратора.
Отчёт из конфигурации — во внешний отчёт .erf
- Откройте базу в режиме
Конфигуратор, затемКонфигурация → Открыть конфигурацию. - В дереве метаданных раскройте ветку
Отчетыи выделите нужный отчёт. - Нажмите правой кнопкой и выберите команду сохранения как внешней обработки или отчёта. Укажите имя файла с расширением
.erf.
Полученный файл открывается в любой базе через Файл → Открыть. Работать он будет, только если в той базе есть те же справочники, регистры и реквизиты, к которым обращается запрос отчёта. Перенос между разными конфигурациями почти всегда требует правки запроса.
Схема компоновки данных — в XML
Схему компоновки удобно сохранить отдельно, например чтобы сравнить две версии отчёта или перенести запрос.
- В Конфигураторе откройте отчёт и на вкладке макетов откройте основную схему компоновки данных.
- В открывшемся конструкторе схемы вызовите контекстное меню и выберите
Сохранить схему в файл.... - Схема запишется в XML. Обратная команда —
Загрузить схему из файла....
Макет печатной формы — в .mxl
Макет (табличный документ внутри отчёта или обработки) открывается двойным щелчком в ветке «Макеты». Пока он открыт, команда Файл → Сохранить как сохраняет его в .mxl. Так разработчики передают друг другу оформление, не трогая код.
Правки типового отчёта в самой конфигурации снимают её с полной поддержки и усложняют обновления. Безопаснее вынести доработку в расширение или во внешний отчёт, а исходную конфигурацию не трогать.
Автоматическое сохранение отчётов в файлы: код и рассылки
Если один и тот же отчёт нужно выгружать каждый день или неделю, руками это делать не надо. Есть два пути.
Рассылка отчётов в типовых конфигурациях
В конфигурациях на Библиотеке стандартных подсистем (Бухгалтерия 3.0, ЗУП 3.1, УТ 11, КА, ERP) есть подсистема «Рассылка отчётов». Она по расписанию формирует выбранные варианты отчётов и отправляет их по почте, кладёт в сетевую папку или на FTP в нужных форматах.
Функцию включают в разделе Администрирование, после чего рассылку можно создать прямо из формы отчёта. Расписание выполняется регламентным заданием, поэтому в файловой базе оно сработает, только пока кто-то работает в программе. Надёжнее всего рассылки работают в клиент-серверном варианте.
Выгрузка отчёта кодом во внешней обработке
Разработчик может сформировать отчёт на системе компоновки и записать результат в файл несколькими строками. Пример для серверного модуля внешней обработки или расширения:
&НаСервере
Процедура ВыгрузитьОтчетВФайл(ИмяФайла)
Схема = Отчеты.ОборотноСальдоваяВедомость.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
Настройки = Схема.НастройкиПоУмолчанию;
Компоновщик = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновки = Компоновщик.Выполнить(Схема, Настройки);
Процессор = Новый ПроцессорКомпоновкиДанных;
Процессор.Инициализировать(МакетКомпоновки);
ТабДок = Новый ТабличныйДокумент;
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ТабДок);
ПроцессорВывода.Вывести(Процессор);
ТабДок.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
ТабДок.АвтоМасштаб = Истина;
ТабДок.Записать(ИмяФайла, ТипФайлаТабличногоДокумента.XLSX);
КонецПроцедуры
Имя отчёта и схемы подставьте свои: у типовых отчётов БСП схема может называться иначе, а параметры (период, организация) задаются через Настройки.ПараметрыДанных. Для PDF замените последний параметр на ТипФайлаТабличногоДокумента.PDF, для MXL — на ТипФайлаТабличногоДокумента.MXL.
Код на сервере пишет файл в файловую систему сервера 1С, а не компьютера пользователя. Путь C:\Отчеты\ окажется на сервере, и у учётной записи службы 1С должны быть права на запись в эту папку.
Чтобы отдать файл пользователю, на сервере запишите его во временный файл (ПолучитьИмяВременногоФайла("xlsx")), поместите двоичные данные во временное хранилище, а на клиенте вызовите получение файла. Временный файл после этого удалите.
PDF из 1С: шрифты, кириллица и обрезанные колонки
PDF доставляет больше всего хлопот, потому что внешний вид файла зависит от шрифтов, установленных там, где файл формируется.
- 🔤 Квадраты или «кракозябры» вместо букв. Обычно это сервер 1С на Linux, где нет шрифтов, которыми оформлен отчёт (чаще всего Arial). Установите на сервер пакет со шрифтами Microsoft или шрифты, использованные в макете, и перезапустите службу сервера 1С.
- 🔤 Текст вылезает за границы ячеек. Шрифт подменён похожим, но другой ширины. Лечится тем же — установкой нужного шрифта, либо переносом по словам в ячейках макета.
- 📏 Колонки обрезаны справа. Не задан масштаб «по ширине» или выбрана книжная ориентация. Настройте параметры страницы и сохраните заново.
- 📏 Одна строка на странице или пустые листы. В макете стоят принудительные разрывы страниц или ширина таблицы чуть больше листа. Помогает уменьшение полей или автоматический масштаб.
Перезапуск службы сервера 1С обрывает сеансы всех пользователей. Делайте это вечером или в согласованное окно, предупредив коллег.
Если PDF нужен срочно, а шрифты на сервере поставить нельзя, обходной путь — печать на виртуальный принтер. Выберите Печать, затем принтер «Microsoft Print to PDF» в Windows. Файл сформирует ваш компьютер со своими шрифтами.
Почему отчёт не сохраняется во внешний файл или открывается с ошибками
Отдельно о расшифровках. В 1С по двойному щелчку на сумме открывается её расшифровка. В сохранённом файле этого нет ни в каком формате, даже в MXL: данные расшифровки живут только в открытом отчёте. Если получателю нужна детализация, сформируйте отдельный отчёт с более подробной группировкой.