Справочники и Данные · 12 мин
Как в 1С сделать выгрузку договоров
Как выгрузить договоры из 1С в Excel, XML и другие форматы: штатные способы, универсальная обработка, обмен между базами, типичные ошибки и проверка результата.
Выгрузка договоров из 1С нужна в нескольких типовых ситуациях: перенос данных в другую базу или другую конфигурацию, передача реестра договоров аудиторам или в головной офис, массовая обработка данных в Excel, резервное копирование справочной информации. В зависимости от цели подходят разные инструменты — от простого вывода списка в табличный документ до обмена через универсальный формат EnterpriseData.
В большинстве конфигураций («Бухгалтерия предприятия», «Управление торговлей», «Комплексная автоматизация», ERP) договоры хранятся в справочнике «Договоры контрагентов» и подчинены контрагентам. Это значит, что выгрузить договоры отдельно от контрагентов можно, но при переносе в другую базу без связанных контрагентов они будут бесполезны — ссылки «повиснут». Этот момент определяет выбор способа выгрузки.
Ниже разобраны рабочие способы: от самого простого (список в Excel) до полноценного обмена между базами, а также проверка результата и типичные ошибки, из-за которых выгрузка приходится переделывать.
Определите цель выгрузки: от неё зависит инструмент
Прежде чем открывать обработки, ответьте на вопрос: что будет делаться с файлом дальше. Если нужен «читаемый» реестр — список договоров с номерами, датами, суммами и контрагентами для анализа или передачи третьим лицам — подходит выгрузка в табличный документ (Excel, mxl, PDF). Никакие связи и ссылки при этом не сохраняются, файл пригоден только для просмотра.
Если задача — перенести договоры в другую информационную базу 1С так, чтобы они стали полноценными объектами (с владельцами-контрагентами, валютой, сроками действия), нужна выгрузка в XML с сохранением ссылочной структуры. Простая таблица Excel здесь не поможет: при загрузке из неё потребуется отдельная обработка и сопоставление данных.
Третий сценарий — регулярный обмен между базами (например, между «Управлением торговлей» и «Бухгалтерией»). В этом случае разовая выгрузка не нужна вовсе: настраивается план обмена, и договоры синхронизируются автоматически вместе с контрагентами и документами.
Как выбрать способ
Способ 1: выгрузка списка договоров в Excel
Самый быстрый вариант, не требующий прав администратора и доработок. Откройте раздел «Справочники» (или «Покупатели/Продажи» — зависит от конфигурации) → «Договоры контрагентов». Если договоры нужны по конкретному контрагенту, откройте карточку контрагента и перейдите по ссылке «Договоры» — список будет уже отфильтрован.
Настройте вид списка: через меню «Ещё» → «Изменить форму» (или «Настроить список») добавьте нужные колонки — номер, дату, организацию, валюту, срок действия, вид договора. Чем меньше лишних колонок, тем чище получится выгрузка. Затем через «Ещё» → «Вывести список» отметьте нужные колонки и выведите список в табличный документ.
Полученный табличный документ сохраните через «Файл» → «Сохранить как», выбрав формат «Лист Excel (*.xlsx)». Проверьте результат: откройте файл и убедитесь, что количество строк соответствует количеству договоров в списке, а колонки не «съехали». Длинные наименования и номера с ведущими нулями — зона риска: Excel может обрезать нули в номерах вида «00123», поэтому при необходимости заранее задайте текстовый формат столбца.
- 1Откройте справочник «Договоры контрагентов» и при необходимости установите отбор по контрагенту или организации
- 2Через «Ещё» → «Изменить форму» добавьте нужные колонки (номер, дата, валюта, срок действия)
- 3Через «Ещё» → «Вывести список» сформируйте табличный документ
- 4Сохраните документ через «Файл» → «Сохранить как» в формате xlsx
- 5Откройте файл и сверьте количество строк и корректность номеров договоров
Способ 2: выгрузка через обработку «Выгрузка и загрузка данных XML»
Этот способ подходит для переноса договоров между базами одной конфигурации (например, из рабочей базы БП 3.0 в копию или в другую базу БП 3.0 той же версии). Обработка входит в состав поставки многих конфигураций, также доступна на диске ИТС и в составе Библиотеки стандартных подсистем.
Откройте обработку через «Файл» → «Открыть» (файл ВыгрузкаЗагрузкаДанныхXML.epf) или через встроенный пункт «Администрирование» → «Перенос данных», если он есть в вашей конфигурации. На закладке «Выгрузка» в дереве объектов отметьте справочник «Договоры контрагентов». Обратите внимание на флажки «Выгружать при необходимости» и «Выгружать с документом все необходимые ссылки» — они определяют, подтянутся ли связанные объекты.
Критичный момент: договоры подчинены контрагентам, поэтому выгружайте их вместе со справочником «Контрагенты». Если в базе-приёмнике контрагенты уже есть, при загрузке объекты сопоставятся по уникальным идентификаторам или полям поиска. Если же выгрузить только договоры, в приёмнике появятся элементы с битыми ссылками на владельцев — такие записи придётся исправлять вручную или удалять.
Укажите имя файла выгрузки и нажмите «Выгрузить данные». В базе-приёмнике откройте ту же обработку, перейдите на закладку «Загрузка», выберите файл и выполните загрузку. Перед загрузкой в рабочую базу обязательно сделайте резервную копию: операция массовой загрузки необратима без бэкапа.
Способ 3: обмен между разными конфигурациями
Когда договоры нужно передать, например, из «Управления торговлей» в «Бухгалтерию предприятия», простая XML-выгрузка не подойдёт — структуры объектов различаются. Здесь используется универсальный формат обмена EnterpriseData: в разделе «Администрирование» → «Синхронизация данных» настраивается обмен между конкретными конфигурациями.
При настройке синхронизации договоры передаются в составе данных по контрагентам и документам. В правилах синхронизации можно ограничить состав передаваемых данных — например, передавать только договоры с определённой организацией или только действующие. Обратите внимание: в разных конфигурациях набор реквизитов договора различается (в УТ есть соглашения и условия продаж, в БП их нет), поэтому часть информации при переносе теряется — это нормальное поведение формата, а не ошибка.
Альтернатива для нестандартных пар конфигураций — «Конвертация данных 2.1/3.0», где правила обмена пишутся или дорабатываются вручную. Это инструмент для специалиста по интеграции: самостоятельная настройка без опыта чревата некорректным сопоставлением реквизитов.
Сравнение способов выгрузки
Быстро, не требует прав администратора. Подходит только для просмотра и анализа, ссылки не сохраняются
Полный перенос объектов со ссылками. Работает только между базами одной конфигурации и близких версий
Штатный обмен между разными конфигурациями, можно автоматизировать по расписанию. Требует настройки и сопоставления данных
Гибкие правила для нестандартных случаев. Требует квалификации разработчика
Выгрузка печатных форм и сканов договоров
Частая задача — выгрузить не данные справочника, а сами тексты договоров: печатные формы или прикреплённые файлы. Печатные формы формируются из документов или карточки договора кнопкой «Печать» (если для договоров настроены шаблоны) и сохраняются как обычный табличный документ — в PDF или Excel.
Присоединённые файлы (сканы, подписанные версии) хранятся в справочнике присоединённых файлов — либо в информационной базе, либо в томах на диске. Массово извлечь их штатной кнопкой нельзя; используются специализированные обработки выгрузки присоединённых файлов, которые сохраняют файлы на диск с сохранением структуры папок по владельцам. Если файлы хранятся в томах, они уже лежат на диске — достаточно скопировать каталог тома.
Проверка результата и типичные ошибки
После любой выгрузки результат нужно проверить, а не считать операцию завершённой по факту создания файла. Для табличной выгрузки сравните количество строк в файле с количеством элементов в списке справочника (с учётом отборов). Для XML-переноса сверьте количество загруженных договоров с количеством выгруженных — обработка показывает статистику после загрузки.
Также проверьте случайную выборку: откройте несколько договоров в базе-приёмнике и убедитесь, что заполнены владелец (контрагент), организация, валюта и сроки. Битая ссылка обычно выглядит как строка вида «<Объект не найден>» — это признак того, что связанный объект не был перенесён.
Как проверить результат
Совпадает с количеством в источнике с учётом отборов
Записей меньше — часть данных не выгрузилась или отфильтрована
Владелец заполнен и открывается
«Объект не найден» — контрагенты не перенесены
Ведущие нули сохранены, формат текстовый
Номера преобразованы в числа, нули потеряны
Организация, валюта, сроки заполнены
Пустые поля — версии конфигураций различаются
Ограничения и когда нужен специалист
Штатные инструменты покрывают большинство задач, но у них есть границы. Права: для работы обработок выгрузки/загрузки обычно требуются права администратора или роль с доступом к сервисным обработкам — рядовой пользователь их не запустит. Объёмы: при выгрузке сотен тысяч объектов XML-файл становится большим, и загрузка может занять часы.
Обращение к специалисту оправдано, если: нужна выгрузка по сложному отбору с дополнительными полями, требуется перенос между сильно доработанными конфигурациями, нужно выгрузить договоры вместе со всей историей документов, или выгрузка должна выполняться регулярно по расписанию. В этих случаях пишется внешняя обработка или настраивается план обмена — самостоятельные эксперименты на рабочей базе в таких сценариях рискованны.
Что важно запомнить
Для реестра «на просмотр» выводите список справочника в Excel, для переноса между одинаковыми конфигурациями используйте XML-обработку, для разных конфигураций — синхронизацию. Договоры всегда переносите вместе с контрагентами, а перед загрузкой в рабочую базу делайте резервную копию и проверяйте результат на копии.
Частые вопросы
Можно ли выгрузить договоры только по одной организации?
Да. В списке справочника установите отбор по организации перед выводом в табличный документ. В обработке выгрузки XML штатного отбора по организации нет — там фильтрацию делают через правила конвертации или выгружают всё и загружают выборочно с помощью дополнительных обработок.
Почему после загрузки в другую базу договоры есть, а контрагенты пустые?
Договоры были выгружены без связанных контрагентов, и ссылки на владельцев «повисли». Решение — повторить выгрузку, отметив также справочник «Контрагенты», или включить выгрузку связанных объектов. Уже созданные «битые» элементы в приёмнике придётся удалить или исправить вручную.
Можно ли выгрузить договоры из 1С в формате CSV?
Штатной кнопки «в CSV» нет, но табличный документ можно сохранить в Excel, а затем средствами Excel пересохранить в CSV. Альтернатива — написать простую внешнюю обработку, которая формирует CSV напрямую с нужным разделителем и кодировкой.
Как выгрузить договоры вместе со сканами?
Данные справочника и присоединённые файлы выгружаются отдельно. Сначала переносите договоры и контрагентов (XML или синхронизация), затем извлекайте присоединённые файлы специализированной обработкой выгрузки файлов на диск. Если файлы хранятся в томах, достаточно скопировать каталог тома и настроить том в новой базе.
Выгрузка XML не открывается в другой базе — в чём причина?
Чаще всего причина в различии версий конфигураций источника и приёмника: обработка проверяет соответствие структуры метаданных. Обновите обе базы до одной версии релиза и повторите выгрузку. Если версии совпадают, проверьте, не повреждён ли файл при копировании.
Можно ли автоматизировать регулярную выгрузку договоров?
Да. Для обмена между базами 1С настройте синхронизацию данных с расписанием — договоры будут передаваться автоматически. Для выгрузки в файл по расписанию потребуется внешняя обработка, запускаемая регламентным заданием или через планировщик с запуском 1С в пакетном режиме.