К статье
Практический материал

Справочники и Данные · 12 мин

Как в 1С сделать выгрузку договоров

Как выгрузить договоры из 1С в Excel, XML и другие форматы: штатные способы, универсальная обработка, обмен между базами, типичные ошибки и проверка результата.

Выгрузка договоров из 1С нужна в нескольких типовых ситуациях: перенос данных в другую базу или другую конфигурацию, передача реестра договоров аудиторам или в головной офис, массовая обработка данных в Excel, резервное копирование справочной информации. В зависимости от цели подходят разные инструменты — от простого вывода списка в табличный документ до обмена через универсальный формат EnterpriseData.

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

Ниже разобраны рабочие способы: от самого простого (список в Excel) до полноценного обмена между базами, а также проверка результата и типичные ошибки, из-за которых выгрузка приходится переделывать.

Определите цель выгрузки: от неё зависит инструмент

Прежде чем открывать обработки, ответьте на вопрос: что будет делаться с файлом дальше. Если нужен «читаемый» реестр — список договоров с номерами, датами, суммами и контрагентами для анализа или передачи третьим лицам — подходит выгрузка в табличный документ (Excel, mxl, PDF). Никакие связи и ссылки при этом не сохраняются, файл пригоден только для просмотра.

Если задача — перенести договоры в другую информационную базу 1С так, чтобы они стали полноценными объектами (с владельцами-контрагентами, валютой, сроками действия), нужна выгрузка в XML с сохранением ссылочной структуры. Простая таблица Excel здесь не поможет: при загрузке из неё потребуется отдельная обработка и сопоставление данных.

Третий сценарий — регулярный обмен между базами (например, между «Управлением торговлей» и «Бухгалтерией»). В этом случае разовая выгрузка не нужна вовсе: настраивается план обмена, и договоры синхронизируются автоматически вместе с контрагентами и документами.

Маршрут решения

Как выбрать способ

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

Способ 1: выгрузка списка договоров в Excel

Самый быстрый вариант, не требующий прав администратора и доработок. Откройте раздел «Справочники» (или «Покупатели/Продажи» — зависит от конфигурации) → «Договоры контрагентов». Если договоры нужны по конкретному контрагенту, откройте карточку контрагента и перейдите по ссылке «Договоры» — список будет уже отфильтрован.

Настройте вид списка: через меню «Ещё» → «Изменить форму» (или «Настроить список») добавьте нужные колонки — номер, дату, организацию, валюту, срок действия, вид договора. Чем меньше лишних колонок, тем чище получится выгрузка. Затем через «Ещё» → «Вывести список» отметьте нужные колонки и выведите список в табличный документ.

Полученный табличный документ сохраните через «Файл» → «Сохранить как», выбрав формат «Лист Excel (*.xlsx)». Проверьте результат: откройте файл и убедитесь, что количество строк соответствует количеству договоров в списке, а колонки не «съехали». Длинные наименования и номера с ведущими нулями — зона риска: Excel может обрезать нули в номерах вида «00123», поэтому при необходимости заранее задайте текстовый формат столбца.

Порядок выгрузки списка в Excel
  1. 1
    Откройте справочник «Договоры контрагентов» и при необходимости установите отбор по контрагенту или организации
  2. 2
    Через «Ещё» → «Изменить форму» добавьте нужные колонки (номер, дата, валюта, срок действия)
  3. 3
    Через «Ещё» → «Вывести список» сформируйте табличный документ
  4. 4
    Сохраните документ через «Файл» → «Сохранить как» в формате xlsx
  5. 5
    Откройте файл и сверьте количество строк и корректность номеров договоров

Способ 2: выгрузка через обработку «Выгрузка и загрузка данных XML»

Этот способ подходит для переноса договоров между базами одной конфигурации (например, из рабочей базы БП 3.0 в копию или в другую базу БП 3.0 той же версии). Обработка входит в состав поставки многих конфигураций, также доступна на диске ИТС и в составе Библиотеки стандартных подсистем.

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

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

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

Способ 3: обмен между разными конфигурациями

Когда договоры нужно передать, например, из «Управления торговлей» в «Бухгалтерию предприятия», простая XML-выгрузка не подойдёт — структуры объектов различаются. Здесь используется универсальный формат обмена EnterpriseData: в разделе «Администрирование» → «Синхронизация данных» настраивается обмен между конкретными конфигурациями.

При настройке синхронизации договоры передаются в составе данных по контрагентам и документам. В правилах синхронизации можно ограничить состав передаваемых данных — например, передавать только договоры с определённой организацией или только действующие. Обратите внимание: в разных конфигурациях набор реквизитов договора различается (в УТ есть соглашения и условия продаж, в БП их нет), поэтому часть информации при переносе теряется — это нормальное поведение формата, а не ошибка.

Альтернатива для нестандартных пар конфигураций — «Конвертация данных 2.1/3.0», где правила обмена пишутся или дорабатываются вручную. Это инструмент для специалиста по интеграции: самостоятельная настройка без опыта чревата некорректным сопоставлением реквизитов.

Сравнение способов выгрузки

Список в Excel

Быстро, не требует прав администратора. Подходит только для просмотра и анализа, ссылки не сохраняются

Выгрузка/загрузка XML

Полный перенос объектов со ссылками. Работает только между базами одной конфигурации и близких версий

Синхронизация (EnterpriseData)

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

Конвертация данных

Гибкие правила для нестандартных случаев. Требует квалификации разработчика

Выгрузка печатных форм и сканов договоров

Частая задача — выгрузить не данные справочника, а сами тексты договоров: печатные формы или прикреплённые файлы. Печатные формы формируются из документов или карточки договора кнопкой «Печать» (если для договоров настроены шаблоны) и сохраняются как обычный табличный документ — в PDF или Excel.

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

Проверка результата и типичные ошибки

После любой выгрузки результат нужно проверить, а не считать операцию завершённой по факту создания файла. Для табличной выгрузки сравните количество строк в файле с количеством элементов в списке справочника (с учётом отборов). Для XML-переноса сверьте количество загруженных договоров с количеством выгруженных — обработка показывает статистику после загрузки.

Также проверьте случайную выборку: откройте несколько договоров в базе-приёмнике и убедитесь, что заполнены владелец (контрагент), организация, валюта и сроки. Битая ссылка обычно выглядит как строка вида «<Объект не найден>» — это признак того, что связанный объект не был перенесён.

Контрольные точки

Как проверить результат

Количество записей
Норма

Совпадает с количеством в источнике с учётом отборов

Тревожный признак

Записей меньше — часть данных не выгрузилась или отфильтрована

Ссылка на контрагента в договоре
Норма

Владелец заполнен и открывается

Тревожный признак

«Объект не найден» — контрагенты не перенесены

Номера договоров в Excel
Норма

Ведущие нули сохранены, формат текстовый

Тревожный признак

Номера преобразованы в числа, нули потеряны

Реквизиты договора
Норма

Организация, валюта, сроки заполнены

Тревожный признак

Пустые поля — версии конфигураций различаются

Типичные ошибки
01
Выгрузка договоров без контрагентов — в базе-приёмнике появляются договоры с битыми ссылками на владельцев
02
Загрузка XML в рабочую базу без резервной копии — при ошибке откатить изменения невозможно
03
Перенос между разными версиями конфигурации без теста — часть реквизитов теряется или заполняется некорректно
04
Попытка перенести договоры между разными конфигурациями через простую XML-выгрузку — структуры несовместимы
05
Выгрузка списка в Excel без проверки форматов — теряются ведущие нули в номерах и искажаются даты

Ограничения и когда нужен специалист

Штатные инструменты покрывают большинство задач, но у них есть границы. Права: для работы обработок выгрузки/загрузки обычно требуются права администратора или роль с доступом к сервисным обработкам — рядовой пользователь их не запустит. Объёмы: при выгрузке сотен тысяч объектов XML-файл становится большим, и загрузка может занять часы.

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

Итог

Что важно запомнить

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

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

Можно ли выгрузить договоры только по одной организации?

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

Почему после загрузки в другую базу договоры есть, а контрагенты пустые?

Договоры были выгружены без связанных контрагентов, и ссылки на владельцев «повисли». Решение — повторить выгрузку, отметив также справочник «Контрагенты», или включить выгрузку связанных объектов. Уже созданные «битые» элементы в приёмнике придётся удалить или исправить вручную.

Можно ли выгрузить договоры из 1С в формате CSV?

Штатной кнопки «в CSV» нет, но табличный документ можно сохранить в Excel, а затем средствами Excel пересохранить в CSV. Альтернатива — написать простую внешнюю обработку, которая формирует CSV напрямую с нужным разделителем и кодировкой.

Как выгрузить договоры вместе со сканами?

Данные справочника и присоединённые файлы выгружаются отдельно. Сначала переносите договоры и контрагентов (XML или синхронизация), затем извлекайте присоединённые файлы специализированной обработкой выгрузки файлов на диск. Если файлы хранятся в томах, достаточно скопировать каталог тома и настроить том в новой базе.

Выгрузка XML не открывается в другой базе — в чём причина?

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

Можно ли автоматизировать регулярную выгрузку договоров?

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