Выгрузка документов реализации из 1С 8.3

· 9 мин

Содержание

Выгрузить реализации из 1С можно пятью способами, и выбор зависит от того, куда данные поедут. Разовый список для бухгалтера или аудитора — через команду Еще → Вывести список в Excel. Печатные формы конкретных накладных — через кнопку Печать с сохранением в PDF или Excel. Регулярный перенос документов в другую базу 1С — через обмен данными в формате XML. А если реализации должны уходить в стороннюю программу (CRM, маркетплейс, склад), подойдёт COM-соединение или стандартный интерфейс OData.

Дальше — по каждому способу: где нажимать, какой формат выбрать и на чём обычно спотыкаются. Примеры даю на Бухгалтерии предприятия 3.0 и Управлении торговлей 11; в других типовых конфигурациях логика та же, отличаются только названия пунктов меню.

Что подготовить перед выгрузкой

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

Откройте список реализаций. В БП 3.0 это раздел Продажи → Реализация (акты, накладные, УПД), в УТ 11 — Продажи → Документы продажи (все) или Реализация товаров и услуг. Название документа в этих конфигурациях разное, но по сути это одна и та же продажа покупателю, и способы выгрузки для них совпадают. В метаданных документ обычно называется РеализацияТоваровУслуг — это имя понадобится для OData и запросов.

Задайте отбор прямо в списке:

  • 📅 период — по кнопке выбора периода над списком;
  • 🏢 организация — если в базе их несколько, иначе выгрузятся документы всех юрлиц;
  • 👤 контрагент или склад — через быстрый отбор в командной панели списка.

Если нужны только проведённые документы, добавьте отбор по колонке проведения. В списке это делается через настройку отбора в меню Еще → Настроить список.

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

Что нужноСпособФормат на выходе
Таблица для Excel, свод для аудитаВывести список.xlsx, .mxl
Накладные, УПД, счета-фактурыПечать документа.pdf, .xlsx
Перенос в другую базу 1СОбмен данными XML.xml
Передача в стороннюю программуCOM-соединениепо объектной модели
Регулярная интеграция без кодаOData / HTTP-сервисJSON, Atom/XML

Выгрузка списка реализаций в Excel

Самый быстрый способ получить реализации таблицей — команда вывода списка. Она не требует ни прав разработчика, ни внешних обработок.

  1. Откройте список реализаций и задайте отбор (период, организация).
  2. Нажмите Еще → Вывести список.
  3. В окне настройки отметьте колонки, которые нужны в файле: дата, номер, контрагент, сумма, сумма НДС.
  4. Выберите тип вывода — табличный документ (его удобнее сохранять в Excel).
  5. Нажмите ОК — программа сформирует таблицу.

Полученную таблицу сохраните на диск: главное меню (значок в левом верхнем углу) → Файл → Сохранить как, в типе файла выберите Лист Excel 2007 (*.xlsx). Формат .mxl оставляйте, только если файл будет открываться снова в 1С.

Есть и быстрый путь для разовой задачи: выделите нужные строки в списке, нажмите Ctrl+C и вставьте в открытый лист Excel. Так переносятся видимые колонки без диалога настройки — удобно, когда нужно показать коллеге три-четыре документа, а не весь месяц.

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

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

Печать и сохранение накладных, УПД и счетов-фактур

Когда нужен не свод, а сами подписанные накладные или УПД, работает кнопка печати.

Откройте документ реализации, нажмите Печать и выберите нужную форму — Товарная накладная (ТОРГ-12), УПД, Счёт-фактура или Акт. Откроется предпросмотр печатной формы.

В окне предпросмотра есть две полезные команды:

  • Сохранить — выгружает форму в файл. В списке форматов доступны PDF документ (*.pdf) и Лист Excel.
  • Вложения — в типовых конфигурациях можно сразу сформировать комплект PDF и приложить к письму.

Чтобы выгрузить сразу пачку накладных, выделите несколько документов в списке мышью с Ctrl или Shift, нажмите Печать и выберите форму — программа соберёт их в один табличный документ, который сохраняется одним файлом.

Если нужной печатной формы нет в списке, она либо не входит в типовую поставку, либо отключена. Подключённые дополнительные печатные формы собираются в разделе Администрирование → Печатные формы, отчёты и обработки. Собственный макет добавляют расширением конфигурации — это не ломает типовую и переживает обновления.

Перед массовой печатью проверьте, что у всех документов проставлены подписанты и реквизиты — незаполненные поля печатаются пустыми и в PDF это уже не исправить.

Перенос реализаций в другую базу через обмен данными XML

Для переноса документов между базами 1С без потери структуры используют выгрузку в формате XML. Это способ, когда реализации нужно целиком воссоздать в другой базе — со ссылками на контрагентов, договоры и номенклатуру.

Штатный инструмент — внешняя обработка «Выгрузка и загрузка данных XML». Она поставляется в комплекте поддержки и открывается через главное меню → Файл → Открыть (выбрать файл обработки .epf).

Порядок работы:

  1. В базе-источнике откройте обработку и перейдите на закладку выгрузки.
  2. Отметьте объект Документ.РеализацияТоваровУслуг (или РеализацияТоваровУслуг — в зависимости от конфигурации).
  3. Задайте отбор по периоду, чтобы не тянуть всю историю.
  4. Включите выгрузку по ссылкам — тогда вместе с документами выгрузятся связанные контрагенты, договоры и номенклатура.
  5. Укажите файл .xml и запустите выгрузку.
  6. В базе-приёмнике той же обработкой выполните загрузку этого файла.

При загрузке обработка ищет совпадения по уникальному идентификатору объекта. Если документ с таким идентификатором в приёмнике уже есть, он обновится, а не задвоится — поэтому повторная загрузка того же файла безопасна. Новые контрагенты и номенклатура создаются, существующие сопоставляются по тому же идентификатору.

Этот способ работает между базами одной конфигурации или близких по структуре. Переносить реализации из УТ в БП через него нельзя — там метаданные различаются, нужен настроенный план обмена или КонвертацияДанных.

Для регулярного двустороннего обмена между типовыми (например, УТ ↔ БП) не используйте разовую выгрузку — настройте синхронизацию в разделе Администрирование → Синхронизация данных. Она сама отслеживает изменённые документы и передаёт только их, а правила сопоставления номенклатуры и контрагентов задаются один раз при настройке. Разовая выгрузка в XML остаётся инструментом для переноса архива или восстановления отдельных документов.

Выгрузка реализаций через COM-соединение

COM-соединение подходит, когда данные забирает внешняя программа или другая база 1С напрямую, без промежуточного файла. Внешнее соединение поднимает сеанс 1С в фоне и даёт доступ к объектной модели.

Объект соединения — V83.COMConnector. Он регистрируется автоматически при установке платформы (файл comcntr.dll). Пример подключения к файловой базе:

Соединитель = Новый COMОбъект("V83.COMConnector");
Соединение = Соединитель.Connect("File=""C:\Bases\Buh"";Usr=""Петров"";Pwd=""***""");

Для серверной базы строка подключения другая:

Соединение = Соединитель.Connect("Srvr=""server-1c"";Ref=""buh"";Usr=""Петров"";Pwd=""***""");

Дальше через Соединение доступны те же объекты, что и внутри базы: менеджер документов, запросы, выборки. Реализации удобнее получать запросом к Документ.РеализацияТоваровУслуг: вы задаёте текст запроса с отбором по периоду и организации, выполняете его на стороне Соединение и обходите результат, забирая нужные реквизиты шапки и табличной части. Такой подход экономит трафик — из базы приходят только отобранные поля, а не целиком объекты.

COM-соединение чаще применяют для фоновой синхронизации по расписанию: внешний скрипт раз в час подключается, выгружает новые реализации и отключается. Для разовой задачи он избыточен — проще обойтись выгрузкой в XML или OData.

На что обратить внимание:

  • ⚙️ разрядность. 32-битная программа подключается к 32-битному comcntr.dll, 64-битная — к 64-битному. При несовпадении соединение не создаётся.
  • 🔑 права. Пользователь из строки подключения должен иметь право на внешнее соединение и на чтение документов.
  • 🪪 лицензия. Внешнее соединение занимает отдельный сеанс и, соответственно, лицензию.

Пароль в коде открытым текстом — плохая практика. Для боевых интеграций храните реквизиты в защищённом хранилище, а не в теле скрипта.

Автоматическая выгрузка через OData и HTTP-сервисы

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

Чтобы его включить, базу публикуют на веб-сервере (Apache или IIS). В диалоге публикации отмечают пункт публикации стандартного интерфейса OData и задают состав объектов, которые будут отдаваться наружу.

После публикации документы доступны по адресу вида:

http://server-1c/buh/odata/standard.odata/Document_РеализацияТоваровУслуг?$format=json

Можно сразу накладывать фильтры средствами OData, не выгружая всю базу. Отбор за период задаётся параметром $filter по полю даты, а нужные колонки — параметром $select:

.../Document_РеализацияТоваровУслуг?$filter=Date ge datetime'2026-01-01T00:00:00'&$format=json

Ответ приходит в JSON или Atom/XML, его разбирает принимающая система. Пагинацию больших выборок делают через $top и $skip — так веб-сервер не отдаёт десятки тысяч документов одним ответом.

Когда стандартного OData не хватает (нужна своя логика, агрегация, особый формат ответа), в конфигураторе создают HTTP-сервис: он тоже публикуется на веб-сервере и отдаёт данные по заданному вами URL. Это уже требует доработки конфигурации и прав разработчика.

Доступ к веб-методам защищайте: отдельный служебный пользователь с минимальными правами (только чтение реализаций) и HTTPS на веб-сервере. Открытый OData-интерфейс без авторизации — прямой путь к утечке данных о продажах.

Типичные ошибки при выгрузке

Проблемы при выгрузке почти всегда сводятся к отбору, формату файла или регистрации компонентов.

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

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

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

Можно ли выгрузить реализации вместе с построчным составом товаров?
Через Вывести список — нет, выгружается только шапка. Построчный состав дают отчёты по продажам или выгрузка в XML, где документ сохраняется целиком с табличной частью.
Как выгрузить реализации за период одним файлом?
Задайте период над списком, выделите документы и выберите нужный способ: для таблицы — Вывести список, для накладных — Печать по нескольким выделенным документам, для переноса в другую базу — обмен XML с отбором по периоду.
Нужны ли права разработчика, чтобы выгрузить документы?
Для выгрузки списка в Excel и печати — нет, это делает любой пользователь с доступом к документам. Права разработчика нужны только для HTTP-сервисов и настройки публикации.
Чем OData лучше COM-соединения?
OData не требует установленной платформы на стороне получателя и работает по обычному HTTP — его читает почти любая система. COM быстрее для связки двух баз 1С на одной машине, но привязан к разрядности и лицензии.
Как выгрузить реализации в стороннюю CRM или на маркетплейс?
Через стандартный интерфейс OData или HTTP-сервис: приёмник запрашивает документы по URL и забирает данные в JSON. Для типовых маркетплейсов часто есть готовые модули обмена в разделе синхронизации данных.