Выгрузка документов из 1С 8.3 — от одной накладной до обмена по расписанию
Содержание
Выгрузить документы из
1С быстрее всего так: откройте журнал документов
, нажмите Ещё → Вывести список…, затем сохраните полученную таблицу через главное меню ☰ → Файл → Сохранить как… в формате xlsx. Одну накладную или акт удобнее выгружать из печатной формы: кнопка сохранения на панели печати даёт PDF, Excel или Word.
Остальные способы нужны под конкретную задачу. XML — для переноса между базами, банка и контролирующих органов. JSON — для сайтов и веб-сервисов. Программная выгрузка и расписание — когда одни и те же документы нужно отдавать каждый день без участия бухгалтера. Всё ниже описано для платформы 8.3 с интерфейсом «Такси»; пути разделов приведены для «1С:Бухгалтерии предприятия» 3.0.
Какой способ выгрузки выбрать под задачу
Сначала ответьте себе на два вопроса: кто будет читать файл (человек или программа) и нужен ли документ целиком со строками товаров.
| Задача | Способ | Формат | Кто делает |
|---|---|---|---|
| Реестр документов за период | Ещё → Вывести список… | xlsx, ods | бухгалтер |
| Одна или несколько накладных «как на бумаге» | Печать → сохранить | pdf, xlsx, docx | бухгалтер |
| Строки товаров по многим документам | отчёт с нужными полями | xlsx | бухгалтер |
| Перенос документов в другую базу | обработки обмена XML | xml | администратор |
| Платёжки в банк | обмен с банком | txt (формат 1CClientBankExchange) | бухгалтер |
| Сайт, CRM, маркетплейс | код на встроенном языке | json, xml | программист |
Выгрузка не меняет данные в базе. Резервная копия нужна только перед загрузкой файла в другую базу, а не перед выгрузкой.
Выгрузка документов вручную через интерфейс 1С
Список документов в Excel
- Откройте нужный журнал, например
Продажи → Реализация (акты, накладные, УПД). - Настройте отбор: период, организация, контрагент. Выгрузится ровно то, что видно в списке после отбора.
- Нажмите
Ещё → Вывести список…. - В окне отметьте колонки. По умолчанию предлагаются видимые колонки списка.
- Нажмите «ОК» — откроется табличный документ.
- Сохраните его:
☰ → Файл → Сохранить как…, тип файла — «Лист Excel 2007-…» (xlsx).
Если в списке не хватает колонки (например, «Ответственный» или «Комментарий»), добавьте её до выгрузки через Ещё → Изменить форму…. После этого колонка попадёт и в окно вывода.
Печатная форма документа
Откройте документ, нажмите «Печать» и выберите форму: ТОРГ-12, УПД, акт, счёт. В окне печати есть кнопка с дискетой — «Сохранить». В типовых конфигурациях она открывает окно, где можно:
- 📄 отметить сразу несколько форматов (PDF, Excel, Word, ODS);
- 📁 сохранить в папку на компьютере;
- 📎 приложить файл к самому документу как присоединённый файл.
Чтобы выгрузить печатные формы пачкой, выделите в списке несколько документов (Ctrl или Shift + щелчок) и только потом нажимайте «Печать». Формы всех выделенных документов откроются в одном окне, и сохранение отработает для всех сразу.
Отчёт со строками товаров
«Вывести список
» выгружает только «шапку»: номер, дату, контрагента, сумму. Если нужны строки — номенклатура, количество, цена по каждому документу, — используйте отчёт. В БП 3.0 для этого подходит Отчеты → Универсальный отчет: выберите тип объекта «Документ», вид «Реализация товаров и услуг», табличную часть «Товары» и настройте поля. Готовый отчёт сохраняется тем же Сохранить как….
Пакетная выгрузка документов: обработки обмена XML
Когда документы нужно не прочитать, а перенести в другую базу, Excel не поможет. Для этого служат две обработки, и их часто путают.
| Обработка | Когда подходит | Ограничение |
|---|---|---|
| «Выгрузка и загрузка данных XML» | обе базы на одной и той же конфигурации и релизе | при разной структуре метаданных загрузка падает или теряет данные |
| «Универсальный обмен данными в формате XML» | конфигурации разные (например, УТ → БП) | нужен файл правил обмена, подготовленный в «Конвертации данных» |
Первую обработку скачивают с диска ИТС как внешний файл .epf и открывают через ☰ → Файл → Открыть. Вторая встроена в большинство типовых конфигураций. Её проще всего найти через Все функции → Обработки. Если команды «Все функции» нет в меню, включите её: ☰ → Сервис и настройки → Параметры → Отображать команду «Все функции».
Порядок работы с «Выгрузкой и загрузкой данных XML»:
- Укажите период и отметьте в дереве нужные виды документов.
- Включите выгрузку связанных объектов, если в базе-приёмнике может не быть контрагентов и номенклатуры из этих документов.
- Задайте имя файла и нажмите «Выгрузить данные».
- В базе-приёмнике откройте ту же обработку, вкладку загрузки, и загрузите файл.
Перед загрузкой файла в рабочую базу сделайте её резервную копию. Загрузка создаёт и перезаписывает объекты. Откатить её штатно нельзя.
После загрузки документы обычно приходят непроведёнными или требуют перепроведения. Проведите их групповой обработкой в базе-приёмнике и сверьте обороты по ключевым счетам.
Выгрузка документов в XML для банка, контрагентов и отчётности
XML в 1С встречается в трёх разных ролях, и у каждой свой путь.
Платёжные поручения в банк
Клиент-банк принимает файл в формате обмена 1CClientBankExchange — это текстовый файл, чаще всего с именем 1c_to_kl.txt. В списке платёжных поручений (Банк и касса → Платежные поручения) есть команда отправки в банк, она открывает обработку «Обмен с банком». На вкладке отправки отметьте платёжки, укажите файл и выгрузите. Если банк подключён через DirectBank, файл не нужен: платёжки уходят напрямую.
💡 Кодировку файла (Windows или DOS) задают в настройках обмена с конкретным банком. Если клиент-банк показывает «кракозябры» в назначении платежа, дело в ней.
Электронные документы для контрагента
Счёт-фактура, УПД и акт в электронном виде — это XML по формату ФНС. Если с контрагентом нет общего оператора ЭДО, такой файл можно выгрузить на диск и передать любым способом. Команды ЭДО находятся прямо в форме документа, в группе «ЭДО»; там же доступна выгрузка электронного документа в файл. Учтите: счёт-фактура в электронном виде имеет силу только с квалифицированной электронной подписью, а первичку стороны могут договориться подписывать и неквалифицированной.
Регламентированная отчётность
Декларации и расчёты выгружаются из формы самого отчёта: Отчеты → Регламентированные отчеты, открыть отчёт, кнопка «Выгрузить». Программа сначала проверяет контрольные соотношения и формат, затем пишет XML с именем по правилам ФНС или СФР. Имя файла не переименовывайте — в нём закодированы получатель и отправитель.
Сохранение документов в PDF
PDF выбирают, когда документ должен выглядеть как бумажный и не редактироваться: архив, отправка покупателю, ответ на требование налоговой.
Способы получить PDF:
- 🖨️ из окна печати — кнопка «Сохранить», формат PDF;
- 📧 там же кнопка отправки по почте: форма уйдёт вложением, формат выбирается в окне отправки;
- 📊 любой отчёт — через
☰ → Файл → Сохранить как…с типом «Документ PDF».
Для архива за год выделите в журнале все документы за период и сохраните печатные формы пачкой, как описано выше. Включите вариант «каждую форму в отдельный файл»: один PDF на 2000 страниц неудобно искать и пересылать.
Печать на виртуальный принтер «Microsoft Print to PDF» тоже даёт PDF, но только по одному документу за раз. Встроенное сохранение 1С работает пачкой и сразу раскладывает файлы по папке.
Выгрузка документов в JSON для интеграции с веб-сервисами
Штатной кнопки «Выгрузить в JSON» в типовых конфигурациях нет. JSON формирует программист — во внешней обработке, расширении или HTTP-сервисе. Объекты ЗаписьJSON и метод ЗаписатьJSON есть в платформе с версии 8.3.6.
Ссылки на справочники и документы в JSON напрямую не записываются. Их нужно превратить в строки или уникальные идентификаторы. Ниже пример для документа «Реализация товаров и услуг» в БП 3.0: функция собирает шапку и строки товаров и возвращает JSON-строку.
&НаСервере
Функция ДокументВJSON(Ссылка)
Данные = Новый Структура;
Данные.Вставить("uuid", Строка(Ссылка.УникальныйИдентификатор()));
Данные.Вставить("number", Ссылка.Номер);
Данные.Вставить("date", Ссылка.Дата);
Данные.Вставить("counterparty", Строка(Ссылка.Контрагент));
Данные.Вставить("total", Ссылка.СуммаДокумента);
Позиции = Новый Массив;
Для Каждого СтрокаТЧ Из Ссылка.Товары Цикл
Позиция = Новый Структура;
Позиция.Вставить("item", Строка(СтрокаТЧ.Номенклатура));
Позиция.Вставить("qty", СтрокаТЧ.Количество);
Позиция.Вставить("sum", СтрокаТЧ.Сумма);
Позиции.Добавить(Позиция);
КонецЦикла;
Данные.Вставить("items", Позиции);
Запись = Новый ЗаписьJSON;
Запись.УстановитьСтроку();
ЗаписатьJSON(Запись, Данные);
Возврат Запись.Закрыть();
КонецФункции
Дальше строку отправляют на сервис через HTTPСоединение и HTTPЗапрос (тело задают методом УстановитьТелоИзСтроки) или пишут в файл. Названия полей в JSON берите из документации принимающей стороны, а не из реквизитов 1С.
💡 Передавайте uuid документа. По нему внешний сервис отличит повторную выгрузку того же документа от нового и не создаст дубль.
Программная выгрузка и запуск по расписанию
Выгрузка в XML кодом
Для обмена между базами одной конфигурации удобна стандартная XML-сериализация платформы. Пример выгружает все проведённые реализации за период в один файл:
&НаСервере
Процедура ВыгрузитьРеализацииВXML(ИмяФайла, НачалоПериода, КонецПериода)
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Док.Ссылка КАК Ссылка
|ИЗ
| Документ.РеализацияТоваровУслуг КАК Док
|ГДЕ
| Док.Дата МЕЖДУ &Начало И &Конец
| И Док.Проведен";
Запрос.УстановитьПараметр("Начало", НачалоДня(НачалоПериода));
Запрос.УстановитьПараметр("Конец", КонецДня(КонецПериода));
Выборка = Запрос.Выполнить().Выбрать();
Запись = Новый ЗаписьXML;
Запись.ОткрытьФайл(ИмяФайла, "UTF-8");
Запись.ЗаписатьОбъявлениеXML();
Запись.ЗаписатьНачалоЭлемента("Документы");
Пока Выборка.Следующий() Цикл
ЗаписатьXML(Запись, Выборка.Ссылка.ПолучитьОбъект());
КонецЦикла;
Запись.ЗаписатьКонецЭлемента();
Запись.Закрыть();
КонецПроцедуры
КонецДня в параметре нужен, чтобы не потерять документы последнего дня: без него граница периода — полночь. Код выполняется на сервере, поэтому в клиент-серверной базе файл появится на диске сервера 1С, а не у пользователя.
Печатную форму кодом сохраняют в PDF методом табличного документа: ТабДок.Записать(ИмяФайла, ТипФайлаТабличногоДокумента.PDF). Сам табличный документ в типовых конфигурациях получают через подсистему печати БСП.
Расписание
Варианты автоматического запуска, от простого к сложному:
| Вариант | Как настроить | Подходит для |
|---|---|---|
| Дополнительная обработка БСП | Администрирование → Печатные формы, отчеты и обработки → Дополнительные отчеты и обработки, у команды обработки задать расписание | типовые конфигурации без доработки кода |
| Регламентное задание | добавить в конфигурацию или расширение, расписание в его свойствах | постоянные интеграции |
| Планировщик Windows | запуск 1cv8.exe ENTERPRISE с ключом /Execute и путём к .epf | файловые базы, разовые решения |
Расписание у дополнительной обработки можно задать только для команд, которые выполняются на сервере, — это определяет разработчик обработки.
В файловой базе регламентные задания выполняются только тогда, когда в базу зашёл хотя бы один пользователь. Если ночью база закрыта, ночная выгрузка не случится. Для гарантированного запуска нужен клиент-сервер или планировщик Windows.
В клиент-серверной базе выгрузка идёт от имени учётной записи службы сервера 1С (обычно USR1CV8). Сетевая папка, куда пишется файл, должна быть доступна этой учётной записи на запись — иначе задание завершится ошибкой доступа, хотя у пользователя всё открывается.
Частые ошибки при выгрузке документов
Можно ли выгрузить документы из 1С без прав администратора?
Как выгрузить документы вместе с проводками?
Как выгрузить документы только одного контрагента?
Ещё → Вывести список…. В выгрузку попадут лишь отобранные строки.Можно ли выгрузить документы из 1С в формате CSV?
ЗаписьТекста.