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

Разработка и Конфигурация · 9 мин

Как добавить кнопку «Связанные документы» в 1С

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

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

Способ добавления зависит от режима работы: управляемое приложение (Бухгалтерия 3.0, УТ 11, ERP) или обычное приложение (УТ 10.3, старые конфигурации на платформе 8.2). В первом случае связь строится через критерии отбора и структуру подчиненности, во втором — через команду интерфейса или программный вызов.

Как работает механизм связанных документов

Платформа 1С связывает документы через реквизиты типа «ДокументСсылка». Если в накладной есть реквизит «ДокументОснование» со ссылкой на заказ, система может построить цепочку: заказ → накладная → счет-фактура. Чтобы эта цепочка отображалась пользователю, нужны два объекта метаданных.

Первый — критерий отбора «Связанные документы» (в типовых конфигурациях он уже создан). Критерий отбора объединяет документы по общему реквизиту и позволяет получить список связанных объектов. Второй — стандартная обработка «Структура подчиненности», которая визуализирует цепочку в виде дерева.

Проверка в типовой конфигурации: кнопка уже есть

Прежде чем что-то дорабатывать, проверьте типовые механизмы. В Бухгалтерии 8.3, УТ 11 и ERP откройте любой документ, например «Реализация товаров и услуг». В форме документа, рядом с печатью и кнопкой «Еще», обычно есть поле-ссылка или кнопка, показывающая связанные документы. Также работает путь: «Еще → Связанные документы» или гиперссылка в шапке формы.

Если кнопки нет, причины обычно такие: форма документа дорабатывалась и команда была удалена; у пользователя ограничены права на связанные объекты; документ не входит в состав критерия отбора. Проверьте также командный интерфейс: в списке документов кнопка «Структура подчиненности» часто находится в меню «Еще».

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

Как проверить, что механизм работает

Открыть проведенный документ с заполненным основанием
Норма

Кнопка или ссылка «Связанные документы» открывает форму со списком связанных объектов

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

Кнопки нет или форма пустая при заведомо заполненном основании

Построить структуру подчиненности из документа-основания
Норма

Дерево показывает все введенные на основании документы

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

Часть документов не отображается — они не включены в критерий отбора

Управляемые формы: добавление через критерий отбора

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

Порядок действий следующий. Откройте ветку «Общие → Критерии отбора» и найдите критерий «Связанные документы» (если его нет — создайте новый). В свойстве «Состав» отметьте реквизиты вашего документа, которые хранят ссылки на основания, например «ДокументОснование». В свойстве «Тип» убедитесь, что включены все типы документов, участвующих в цепочке.

Подключение документа к критерию отбора
  1. 1
    Откройте конфигуратор и найдите «Общие → Критерии отбора → Связанные документы»
  2. 2
    В свойстве «Состав» отметьте реквизиты документа со ссылками на основания
  3. 3
    Проверьте свойство «Тип»: туда должны входить все документы цепочки
  4. 4
    Обновите конфигурацию базы данных (F7)
  5. 5
    Откройте документ в режиме предприятия и проверьте появление кнопки

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

Управляемые формы: программная кнопка на форме

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

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

bsl
&НаКлиенте
Процедура СвязанныеДокументы(Команда)
	ПараметрыФормы = Новый Структура("ОбъектОтбора", Объект.Ссылка);
	ОткрытьФорму("Обработка.СтруктураПодчиненности.Форма", ПараметрыФормы, ЭтотОбъект);
КонецПроцедуры

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

Обычные формы: кнопка «Перейти» и структура подчиненности

В обычном приложении (платформа 8.2, УТ 10.3, УПП 1.3) механизм устроен иначе. На форме документа есть стандартная кнопка «Перейти», которая открывает меню переходов, включая структуру подчиненности. Если её нет, добавьте на форму кнопку с обработчиком, вызывающим стандартную команду интерфейса.

Альтернатива — программный вызов. В обычных формах структуру подчиненности открывают через обработку или через стандартное действие «СтруктураПодчиненности» объекта. Состав связей здесь также определяется критериями отбора, поэтому настройку состава реквизитов выполняют так же, как в управляемом режиме.

Где добавлять кнопку

Критерий отбора + панель навигации

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

Своя команда на форме

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

Расширение конфигурации

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

Добавление через расширение конфигурации

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

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

Типичные ошибки и их устранение

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

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

Типичные ошибки
01
Реквизит основания не добавлен в состав критерия отбора — список связанных документов пуст
02
Кнопка активна для нового незаписанного документа — обработка открывается с ошибкой или пустой формой
03
Доработка внесена в типовую форму без расширения — изменения теряются при обновлении конфигурации
04
Не выданы права на обработку структуры подчиненности — у пользователей кнопка не работает

Проверка результата

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

Дополнительно проверьте цепочку в обе стороны: от основания к подчиненным документам и обратно. Если обратный переход не работает, убедитесь, что тип документа-основания включен в тип критерия отбора.

Итог

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

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

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

Почему кнопка «Связанные документы» есть у одних документов и нет у других?

Наличие кнопки определяется включением документа в критерий отбора и настройками командного интерфейса его формы. Документы без реквизитов-оснований или не подключенные к критерию кнопку не получают.

Можно ли добавить кнопку без изменения конфигурации?

Да, через расширение конфигурации: в него добавляют форму документа, команду и обработчик. Это сохраняет типовую поддержку и не мешает обновлениям.

Список связанных документов пустой, хотя основание заполнено. Что делать?

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

Как показать связанные документы в журнале, а не в форме документа?

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

Кнопка работает у администратора, но не у менеджеров. В чем причина?

Недостаточно прав: проверьте доступ к обработке «Структура подчиненности» и права на просмотр связанных видов документов в профилях групп доступа или ролях.