Экспорт данных из 1С 8.3: от кнопки «Сохранить» до автоматической выгрузки

· 10 мин

Содержание

Любой отчёт или список в 1С 8.3 выгружается в файл кнопкой «Сохранить» (значок дискеты) или через Ещё → Сохранить как: выбираете формат — Excel, PDF, Word, ODS, HTML — и папку. Для печатных форм документов та же кнопка есть в окне печати, а для переноса данных между базами служит обработка «Универсальный обмен данными в формате XML».

Частое заблуждение — что «выгрузить файлы из 1С» можно только через программиста. На деле отчёты, списки и печатные формы выгружаются стандартными командами без единой строки кода. Код нужен в двух случаях: когда выгрузка повторяется по расписанию и когда объём не помещается в табличный документ.

Какой способ выгрузки выбрать под задачу

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

Что нужноФорматИнструмент
Отчёт для руководителя, сверкаXLSX, PDFКнопка «Сохранить» в отчёте
Список справочника или журналаXLSXЕщё → Вывести список…
Счёт, акт, накладная для контрагентаPDF«Сохранить» в форме печати
Перенос данных в другую базу 1СXMLУниверсальный обмен данными в формате XML
Загрузка в стороннюю систему, сайтCSV, TXTВнешняя обработка
Полная копия базыDTКонфигуратор, выгрузка информационной базы
Вложения к документам (сканы, договоры)Исходный файлКоманда «Файлы» в карточке документа

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

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

Выгрузка отчётов и списков в Excel

Отчёт в файл

  1. Сформируйте отчёт с нужным периодом и отборами.
  2. Нажмите значок дискеты на панели отчёта. Если его не видно — Ещё → Сохранить как.
  3. В поле типа файла выберите «Лист Microsoft Excel 2007-…» (.xlsx).
  4. Укажите имя и папку, нажмите «Сохранить».

Формат .xls (Excel 97) тоже доступен, но в нём жёсткий потолок — 65 536 строк. Для .xlsx предел около 1 млн строк. Выбирайте .xls только если получатель сидит на очень старом офисе.

Табличный документ 1С сохраняется и в другие форматы:

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

Список справочника или журнала

Выгрузить список номенклатуры, контрагентов или журнал документов можно без отчёта:

  1. Откройте список, настройте отбор (например, только нужная группа).
  2. В командной панели нажмите Ещё → Вывести список….
  3. Отметьте колонки, которые нужны в файле. Флажок «Только выделенные» выгрузит лишь отмеченные строки.
  4. 1С откроет табличный документ — сохраните его кнопкой с дискетой в .xlsx.

Колонки, которых нет в списке, сначала добавьте через Ещё → Изменить форму… или Ещё → Настроить список. Тогда «Вывести список» их тоже подхватит.

Когда нужен не отчёт, а «плоская» таблица

Отчёты на СКД сохраняются с группировками, итогами и объединёнными ячейками. Сортировать и фильтровать такой файл в Excel неудобно. Решение — перестроить отчёт перед выгрузкой:

  • откройте Настройки отчёта (кнопка «Настройки» в форме, расширенный режим);
  • уберите группировки или оставьте одну группировку «Детальные записи»;
  • отключите общие итоги.

Получится обычная таблица «одна строка — одна запись», с которой Excel работает без ручной чистки.

Сохранение печатных форм документов в PDF

Счёт, акт, УПД или накладную не нужно печатать на виртуальный принтер. В формах типовых конфигураций (БП 3.0, УТ 11, ЗУП 3.1) выгрузка встроена:

  1. Откройте документ и нажмите «Печать», выберите форму.
  2. В окне печати нажмите значок дискеты «Сохранить».
  3. Отметьте формат — PDF, а при необходимости ещё XLSX или DOCX.
  4. Выберите: сохранить в папку на компьютере или прикрепить к документу как файл.
  5. Флажок упаковки в ZIP пригодится, когда выгружаете сразу несколько форм.

Так можно выгрузить и пачку документов. Выделите в журнале несколько счетов (Ctrl или Shift + клик), нажмите «Печать» — все формы откроются в одном окне и сохранятся одним действием.

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

Файлы, прикреплённые к документам

Сканы, договоры и фото, прикреплённые к документу, лежат не в отчётах, а в присоединённых файлах. Откройте документ, нажмите кнопку со скрепкой или команду «Файлы», выделите файл и сохраните его на диск через команду сохранения в командной панели списка файлов. Файл выгрузится в исходном виде — тот же PDF или JPG, что когда-то загружали.

Выгрузка данных в XML для переноса между базами

Когда данные нужно перенести в другую базу 1С — например, справочник номенклатуры из УТ в Бухгалтерию, — табличный файл не подходит. Связи между объектами в Excel теряются. Для этого используют XML.

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

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

  1. Найдите обработку. В БП 3.0 и других конфигурациях на БСП она доступна через «Все функции»: включите их в Сервис и настройки → Параметры, затем откройте Все функции → Обработки. Если её там нет — откройте файл обработки через Файл → Открыть как внешнюю.
  2. На вкладке «Выгрузка данных» укажите файл правил обмена.
  3. Задайте период и отметьте объекты, которые выгружаются.
  4. Укажите имя файла данных и нажмите «Выгрузить данные».
  5. В базе-приёмнике откройте ту же обработку, вкладку «Загрузка данных», укажите файл и загрузите.

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

Без правил: выгрузка между одинаковыми конфигурациями

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

Правила для разных конфигураций под типовые переходы (например, со старых релизов на новые) публикуются вместе с обновлениями. Под нестандартную пару баз правила пишет специалист в «Конвертации данных».

Полная выгрузка базы в файл .dt

Если нужна вся база целиком — для переноса на другой компьютер или в техподдержку, — используйте выгрузку информационной базы:

  • в конфигураторе: Администрирование → Выгрузить информационную базу…;
  • из командной строки: 1cv8.exe DESIGNER /F "D:\Base" /N "Admin" /P "pass" /DumpIB "D:\backup\base.dt".

Запускайте выгрузку, когда в базе никто не работает : так копия гарантированно отразит одно согласованное состояние данных.

Большие объёмы данных: что тормозит и как обойти

Отчёт на 300 тысяч строк формируется минутами, а при сохранении клиент 1С может упасть с ошибкой нехватки памяти. Табличный документ держит всё в оперативной памяти вместе с оформлением.

Что помогает:

  • ✂️ Дробите по периодам. Вместо года — 12 выгрузок по месяцу. Каждая проходит быстро, склеить файлы потом проще, чем ждать час.
  • 🎯 Сужайте отборы. Организация, склад, группа номенклатуры. Чем меньше строк, тем меньше памяти.
  • 🧹 Убирайте лишние колонки и итоги. Каждая колонка с форматированием умножает размер документа.
  • 💻 Используйте 64-битный клиент. 32-битный клиент упирается в 2–4 ГБ адресного пространства, 64-битный использует всю доступную память.
  • 📃 Пишите в CSV, а не в XLSX. Для сотен тысяч строк правильнее выгружать данные запросом прямо в текстовый файл, минуя табличный документ. Как — в следующем разделе.
ОбъёмРекомендация
До 50 тыс. строкОбычное сохранение отчёта в XLSX
50–500 тыс. строкДробление по периодам или отборам
Больше 500 тыс. строкВыгрузка обработкой в CSV

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

Автоматизация выгрузки внешней обработкой

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

Пример: остатки номенклатуры в CSV

Ниже — процедура для модуля обработки. Она выбирает номенклатуру запросом и пишет её в CSV с разделителем «;» — его Excel в русской локали понимает без настройки.

Функция ПолеCSV(Значение)
	Стр = Строка(Значение);
	Возврат """" + СтрЗаменить(Стр, """", """""") + """";
КонецФункции

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

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

Функция ПолеCSV берёт каждое значение в кавычки и удваивает кавычки внутри. Без неё наименование вроде Болт М8; оцинк. разломает строку на лишние колонки.

ЗаписьТекста с кодировкой UTF8 пишет файл с меткой BOM — по ней Excel понимает кодировку и показывает кириллицу правильно.

Как запускать по расписанию

Есть два рабочих пути:

  1. Дополнительная обработка в базе. В БП 3.0 и УТ 11 внешние обработки регистрируются в Администрирование → Печатные формы, отчеты и обработки → Дополнительные отчеты и обработки. Для обработки, у которой в модуле описана серверная команда, в карточке можно задать расписание — 1С будет запускать её сама как регламентное задание.
  2. Планировщик Windows. Задание запускает 1С с ключом /Execute, который открывает обработку при старте:
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F "D:\Base" /N "Exchange" /P "pass" /Execute "D:\epf\vygruzka.epf"

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

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

Типовые проблемы при экспорте и их решение

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

Отдельно про PDF. Если в сохранённой печатной форме съехала таблица или пропали буквы, проверьте шрифт макета. Формы рассчитаны на Arial, и если на компьютере стоит урезанный набор шрифтов, PDF собирается с заменой. Установка стандартных шрифтов Windows обычно решает проблему.

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

Можно ли выгрузить из 1С сразу несколько отчётов одним файлом?
Стандартно — нет, каждый отчёт сохраняется отдельно. Для пачки печатных форм используйте выделение нескольких документов в журнале и сохранение в ZIP-архив из окна печати.
Чем открыть файл .mxl без 1С?
Бесплатной программой «1С:Предприятие — Работа с файлами». Она открывает и сохраняет табличные документы 1С в XLSX и PDF без лицензии на платформу.
Почему в XLSX сохраняется оформление, но нет формул?
1С выгружает уже посчитанные значения. Формул в табличном документе нет, поэтому суммы в Excel — это числа, а не ссылки на ячейки.
Подойдёт ли выгрузка в Excel для переноса данных в другую базу 1С?
Для простых справочников — да, через загрузку из табличного документа в приёмнике. Документы с табличными частями и связями переносите через XML: в Excel ссылки между объектами теряются.
Как выгрузить данные, если 1С работает в облаке через браузер?
Так же, кнопкой «Сохранить». Файл скачает браузер — ищите его в папке загрузок. Полную копию облачной базы запрашивайте средствами вашего провайдера — способ у каждого свой.