Как установить видимость движений регистра на управляемой форме документа

Программист 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

В процессе разработки новых объектов в конфигурациях на платформе 1С:Предприятие 8.3 программисты часто сталкиваются с ситуацией, когда после создания нового документа и подчиненного ему регистра (сведений или накопления) ссылка на переходы к движениям не появляется в командной панели или панели навигации формы. Это может происходить как в форме документа, так и в форме списка. Разберем подробно, почему это происходит и как настроить корректное отображение движений по шагам.

Проверка основных свойств регистра в конфигураторе

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

  1. Откроем окно свойств нужного регистра (сведений, накопления или бухгалтерии).
  2. На вкладке «Основные» проверим флаг «Использовать стандартные команды». Если этот флаг снят, платформа автоматически не сформирует команду перехода к записям этого регистра из связанных объектов. Обязательно установим его.
  3. Перейдем на вкладку «Регистраторы». Убедимся, что наш новый документ отмечен галочкой в списке регистраторов. Без этого документ не сможет делать записи в этот регистр, и связь «объект — движения» не будет установлена.
  4. Для регистров сведений крайне важна вкладка «Основные» и свойство «Режим записи». Если установлено значение Независимый, регистр не связан с регистратором. Чтобы видеть движения конкретного документа, режим записи должен быть установлен в значение Подчинение регистратору.

Настройка командного интерфейса формы документа

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

Откроем форму документа в конфигураторе. В верхней части окна редактора формы (над деревом реквизитов) перейдем на закладку «Командный интерфейс». Здесь мы увидим структуру панели навигации формы. Развернем группу «Перейти». Именно здесь должны располагаться ссылки на связанные регистры. Найдем наш регистр в списке и установим флаг в колонке «Видимость». Если флаг стоит, но текст бледный, значит, видимость ограничена функциональными опциями или правами доступа, что мы разберем далее.

Проанализируем ситуацию, когда документ добавлен в типовую конфигурацию. В современных решениях (ERP, УТ 11, БП 3.0) панель навигации часто управляется программно или через настройки БСП (Библиотеки стандартных подсистем). Проверим, не скрыта ли панель навигации целиком в свойствах самой формы (свойство СоставКомандногоИнтерфейса). Для быстрой диагностики видимости элементов интерфейса на лету можно использовать обработку для редактирования управляемых форм в режиме предприятия.

Использование «ведущих» измерений

Рассмотрим специфику регистров сведений. В 1С существует понятие «Ведущее» измерение. Если в регистре сведений одно из измерений имеет тип ДокументСсылка.ВашДокумент и у него установлен признак «Ведущее», то в форме этого документа автоматически появится возможность перехода к записям регистра, даже если документ не является регистратором (для независимых регистров). Однако для регистров, подчиненных регистратору, основным механизмом связи остается поле Регистратор.

Проверка прав доступа и ролей

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

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

Интеграция с подсистемами БСП

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

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


Процедура ПриОпределенииКомандПодключенныхОтчетов(НастройкиОтчетов, Параметры) Экспорт
    // Здесь указывается логика подключения отчета "Движения документа"
    // Обычно это делается через добавление записи в таблицу НастройкиОтчетов
КонецПроцедуры

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

Настройка видимости в режиме «1С:Предприятие»

Иногда настройки конфигуратора верны, но пользователь случайно скрыл панель навигации в режиме самого приложения. Выясним, как это проверить:

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

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

Программное управление видимостью

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

Пример программного обращения к элементам интерфейса:


// Пример управления видимостью перехода к регистру "Продажи"
Элементы.ГруппаПерейтиПродажи.Видимость = Объект.Проведен;

Если вы обнаружили подобный код, убедитесь, что условия, при которых устанавливается Видимость = Истина, выполняются в вашем случае.

Функциональные опции

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

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

← На главную