Выгрузка документов из 1С 8.3 — от одной накладной до обмена по расписанию

· 9 мин

Содержание

Выгрузить документы из 1С быстрее всего так: откройте журнал документов , нажмите Ещё → Вывести список…, затем сохраните полученную таблицу через главное меню ☰ → Файл → Сохранить как… в формате xlsx. Одну накладную или акт удобнее выгружать из печатной формы: кнопка сохранения на панели печати даёт PDF, Excel или Word.

Остальные способы нужны под конкретную задачу. XML — для переноса между базами, банка и контролирующих органов. JSON — для сайтов и веб-сервисов. Программная выгрузка и расписание — когда одни и те же документы нужно отдавать каждый день без участия бухгалтера. Всё ниже описано для платформы 8.3 с интерфейсом «Такси»; пути разделов приведены для «1С:Бухгалтерии предприятия» 3.0.

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

Сначала ответьте себе на два вопроса: кто будет читать файл (человек или программа) и нужен ли документ целиком со строками товаров.

ЗадачаСпособФорматКто делает
Реестр документов за периодЕщё → Вывести список…xlsx, odsбухгалтер
Одна или несколько накладных «как на бумаге»Печать → сохранитьpdf, xlsx, docxбухгалтер
Строки товаров по многим документамотчёт с нужными полямиxlsxбухгалтер
Перенос документов в другую базуобработки обмена XMLxmlадминистратор
Платёжки в банкобмен с банкомtxt (формат 1CClientBankExchange)бухгалтер
Сайт, CRM, маркетплейскод на встроенном языкеjson, xmlпрограммист

Выгрузка не меняет данные в базе. Резервная копия нужна только перед загрузкой файла в другую базу, а не перед выгрузкой.

Выгрузка документов вручную через интерфейс 1С

Список документов в Excel

  1. Откройте нужный журнал, например Продажи → Реализация (акты, накладные, УПД).
  2. Настройте отбор: период, организация, контрагент. Выгрузится ровно то, что видно в списке после отбора.
  3. Нажмите Ещё → Вывести список….
  4. В окне отметьте колонки. По умолчанию предлагаются видимые колонки списка.
  5. Нажмите «ОК» — откроется табличный документ.
  6. Сохраните его: ☰ → Файл → Сохранить как…, тип файла — «Лист Excel 2007-…» (xlsx).

Если в списке не хватает колонки (например, «Ответственный» или «Комментарий»), добавьте её до выгрузки через Ещё → Изменить форму…. После этого колонка попадёт и в окно вывода.

Печатная форма документа

Откройте документ, нажмите «Печать» и выберите форму: ТОРГ-12, УПД, акт, счёт. В окне печати есть кнопка с дискетой — «Сохранить». В типовых конфигурациях она открывает окно, где можно:

  • 📄 отметить сразу несколько форматов (PDF, Excel, Word, ODS);
  • 📁 сохранить в папку на компьютере;
  • 📎 приложить файл к самому документу как присоединённый файл.

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

Отчёт со строками товаров

«Вывести список » выгружает только «шапку»: номер, дату, контрагента, сумму. Если нужны строки — номенклатура, количество, цена по каждому документу, — используйте отчёт. В БП 3.0 для этого подходит Отчеты → Универсальный отчет: выберите тип объекта «Документ», вид «Реализация товаров и услуг», табличную часть «Товары» и настройте поля. Готовый отчёт сохраняется тем же Сохранить как….

Пакетная выгрузка документов: обработки обмена XML

Когда документы нужно не прочитать, а перенести в другую базу, Excel не поможет. Для этого служат две обработки, и их часто путают.

ОбработкаКогда подходитОграничение
«Выгрузка и загрузка данных XML»обе базы на одной и той же конфигурации и релизепри разной структуре метаданных загрузка падает или теряет данные
«Универсальный обмен данными в формате XML»конфигурации разные (например, УТ → БП)нужен файл правил обмена, подготовленный в «Конвертации данных»

Первую обработку скачивают с диска ИТС как внешний файл .epf и открывают через ☰ → Файл → Открыть. Вторая встроена в большинство типовых конфигураций. Её проще всего найти через Все функции → Обработки. Если команды «Все функции» нет в меню, включите её: ☰ → Сервис и настройки → Параметры → Отображать команду «Все функции».

Порядок работы с «Выгрузкой и загрузкой данных XML»:

  1. Укажите период и отметьте в дереве нужные виды документов.
  2. Включите выгрузку связанных объектов, если в базе-приёмнике может не быть контрагентов и номенклатуры из этих документов.
  3. Задайте имя файла и нажмите «Выгрузить данные».
  4. В базе-приёмнике откройте ту же обработку, вкладку загрузки, и загрузите файл.

Перед загрузкой файла в рабочую базу сделайте её резервную копию. Загрузка создаёт и перезаписывает объекты. Откатить её штатно нельзя.

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

Выгрузка документов в 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С без прав администратора?
Да, список и печатные формы выгружает обычный пользователь, если у него есть право «Вывод». Обработки обмена и регламентные задания обычно требуют прав администратора.
Как выгрузить документы вместе с проводками?
Список документов проводок не содержит. Сформируйте отчёт по проводкам за период, например карточку счёта или журнал проводок, и сохраните его в Excel.
Как выгрузить документы только одного контрагента?
Установите отбор по контрагенту в журнале документов и только потом выполните Ещё → Вывести список…. В выгрузку попадут лишь отобранные строки.
Можно ли выгрузить документы из 1С в формате CSV?
Прямого варианта CSV в окне сохранения нет. Сохраните таблицу в xlsx и пересохраните в Excel как CSV либо сформируйте CSV программно через ЗаписьТекста.
Сохранится ли файл, присоединённый к документу, при выгрузке в XML?
Только если присоединённые файлы отмечены к выгрузке и хранятся в базе. Файлы в томах на диске переносят отдельно.