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

Документы и Печать · 9 мин

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

Как сделать ссылку на договор в 1С: выбор договора в документах, навигационная ссылка, ссылка в печатной форме и программное получение ссылки.

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

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

Выбор договора в поле документа

Самый частый сценарий — указать договор в заказе, реализации, счёте или акте. Откройте документ, найдите поле «Договор» (обычно рядом с полями «Организация» и «Контрагент») и нажмите кнопку выбора или клавишу F4. Откроется форма списка договоров, уже отфильтрованная по контрагенту и организации документа.

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

В большинстве типовых конфигураций (УТ, ERP, Бухгалтерия, УНФ) договор можно выбрать только после заполнения контрагента — поле остаётся недоступным или пустым до этого момента. Это нормальное поведение, а не ошибка.

Порядок действий
  1. 1
    Откройте документ и заполните поля «Организация» и «Контрагент»
  2. 2
    Нажмите кнопку выбора в поле «Договор» или клавишу F4
  3. 3
    В открывшемся списке найдите нужный договор или создайте новый
  4. 4
    Дважды щёлкните по договору — он подставится в документ
  5. 5
    Запишите документ и проверьте, что договор отображается в печатной форме

Как скопировать навигационную ссылку на договор

Навигационная ссылка нужна, чтобы быстро открыть конкретный договор: её можно отправить коллеге в чат, вставить в письмо или задачу. Откройте карточку договора, затем в меню «Ещё» выберите команду «Получить ссылку» (в некоторых конфигурациях — «Получить навигационную ссылку» или комбинация Ctrl+F11 в форме объекта).

В появившемся окне будет показана строка вида e1cib/data/Справочник.ДоговорыКонтрагентов?ref=.... Нажмите «Скопировать» — ссылка попадёт в буфер обмена. Получатель вставит её в поле «Перейти по ссылке» (меню «Сервис» или команда «Открыть» в стартовой странице) либо просто в адресную строку клиента 1С, и договор откроется у него напрямую.

Учтите ограничение: навигационная ссылка работает только внутри той же информационной базы. Если коллега работает в другой базе (например, в копии для тестирования), ссылка не откроется или откроет не тот объект.

Ссылка на договор в печатной форме

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

В 1С:Бухгалтерии для счёта на оплату основание можно задать вручную: в форме документа есть поле «Основание», куда подставляется договор либо произвольный текст. В УТ и ERP текст основания для печати редактируется в карточке договора или в дополнительных реквизитах документа.

Если нужна гиперссылка на файл договора (например, скан в PDF), прикрепите файл к карточке договора через кнопку «Присоединённые файлы» (скрепка в командной панели). Тогда любой пользователь откроет скан прямо из договора, а документы будут ссылаться на этот договор стандартным образом.

Внешняя ссылка на договор через веб или расширенную ссылку

В некоторых конфигурациях доступна команда «Получить расширенную ссылку» или публикация базы на веб-сервере — тогда договор можно открыть в браузере по URL вида https://сервер/База/ru_RU/#e1cib/data/.... Такой вариант требует, чтобы база была опубликована администратором и у получателя были права доступа.

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

Сравнение вариантов

Выбор в поле документа

Подходит для проведения продаж и закупок по договору; не даёт ссылки для передачи другому человеку

Навигационная ссылка (Получить ссылку)

Быстрый способ поделиться объектом внутри одной базы; не работает между разными базами

Веб-ссылка

Открывается в браузере; требует публикации базы на веб-сервере и настройки прав

Присоединённый файл договора

Позволяет хранить и передавать скан договора; не заменяет ссылку на объект справочника

Программное получение ссылки на договор

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

// Ссылка на найденный договор

ДоговорСсылка = Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию("Договор № 15 от 12.01", Истина);

// Навигационная ссылка для открытия формы объекта

НавСсылка = ПолучитьНавигационнуюСсылку(ДоговорСсылка);

// Открыть форму договора программно

ПоказатьЗначение(, ДоговорСсылка);

Если нужно сформировать ссылку заранее, до записи объекта, используют ПолучитьСсылку(Новый УникальныйИдентификатор). Это применяется в обменах данными, чтобы связать объекты до их фактической записи. Без необходимости этот приём не используйте — ссылка на несуществующий объект приведёт к «битым» ссылкам в базе.

bsl
НавСсылка = ПолучитьНавигационнуюСсылку(ДоговорСсылка);

Частые ошибки и их устранение

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

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

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

Типичные ошибки
01
Создание договора на другую организацию — он не появится в выборе документов нужной организации
02
Передача навигационной ссылки пользователю другой базы — ссылка не откроется
03
Программное создание ссылки через ПолучитьСсылку без последующей записи объекта — возникают битые ссылки
04
Ожидание договора в печатной форме при незаполненном поле «Основание» документа
Контрольные точки

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

Договор в документе
Норма

Поле «Договор» заполнено, документ проводится, договор виден в печатной форме

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

Поле пустое или сбрасывается после записи — проверьте отборы и права

Навигационная ссылка
Норма

По команде «Перейти по ссылке» открывается именно нужный договор

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

Открывается другой объект или ошибка — база другая или объект удалён

Основание в печатной форме
Норма

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

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

Строка основания пуста — заполните поле «Основание» или «Договор» в документе

FAQ

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

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

Почему договор не виден при выборе в документе?

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

Можно ли сделать ссылку на договор для контрагента, у которого нет 1С?

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

Чем навигационная ссылка отличается от обычной ссылки в базе?

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

Как вывести номер и дату договора в печатную форму автоматически?

Заполните поле «Договор» (и «Основание», если оно есть) в документе — типовые макеты счёта, акта и УПД подставляют реквизиты договора в строку основания без доработок.

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

Само по себе — нет, но если объект со сгенерированной ссылкой не будет записан, в базе останутся «битые» ссылки. Используйте метод только в обменах и всегда обеспечивайте запись объекта.

Итог

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

Ссылка на договор в 1С создаётся выбором в поле документа, копированием навигационной ссылки через «Ещё → Получить ссылку» или программно. Предварительное условие — корректно заведённый договор в справочнике с нужной организацией, контрагентом и видом. Навигационные ссылки работают только внутри своей базы.