Почему в меню "Перейти" документа 1С нет ссылки на регистр и как ее добавить?

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

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

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

Шаг 1. Проверка основной настройки «Использовать стандартные команды»

Это первая и самая главная причина, по которой платформа может не отображать навигационные ссылки. Платформа 1С умеет автоматически генерировать команды для перехода к связанным данным (регистрам, журналам и т.д.). За это отвечает свойство «Использовать стандартные команды».

Важно понимать, что эту настройку нужно проверить у самого объекта метаданных, а не у его формы.

  1. Откройте дерево конфигурации, найдите нужный документ.
  2. Нажмите на него правой кнопкой мыши и выберите «Свойства» (или выделите его и нажмите Alt+Enter).
  3. В палитре свойств найдите группу «Стандартные команды».
  4. Убедитесь, что установлен флажок «Использовать стандартные команды».

Кроме того, проверьте аналогичное свойство и у самого регистра, движения по которому должны отображаться. Хотя это менее критично, для полноты картины стоит убедиться, что и там эта опция включена.

Чаще всего установка этого флага решает проблему. Но что делать, если он уже стоит, а ссылки все равно нет?

Шаг 2. Проблема с кэшем конфигуратора

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

Рассмотрим несколько способов «заставить» платформу обновить свое состояние:

  1. Закрыть и открыть конфигурацию. Самый простой и быстрый метод. В дереве метаданных просто закройте ветку с вашей конфигурацией (нажмите на «-» рядом с ее названием), а затем откройте снова. Этот простое действие часто заставляет конфигуратор перестроить внутреннее представление объектов и команд.
  2. Перезапустить Конфигуратор. Если предыдущий шаг не помог, полностью закройте Конфигуратор и запустите его заново. Это более надежный способ очистить временные данные сеанса разработки.
  3. Полная очистка кэша. Это радикальный, но самый эффективный метод. Платформа 1С хранит кэш в специальных папках на компьютере пользователя. Их удаление заставит систему пересоздать все временные файлы с нуля.
    • Закройте все сеансы 1С (и Конфигуратор, и Предприятие).
    • Откройте «Проводник» и введите в адресную строку %APPDATA%, нажмите Enter. Вы попадете в папку C:\Users\<ИмяПользователя>\AppData\Roaming.
    • Найдите в ней папку 1C и внутри нее папку 1cv8. В ней будут каталоги с длинными буквенно-цифровыми именами — это и есть кэш баз.
    • Вы можете смело удалить эти папки. При следующем запуске 1С создаст их заново.
    • Аналогичную операцию можно проделать и для папки %LOCALAPPDATA% (папка AppData\Local), где также находится папка 1C.

В большинстве случаев после выполнения этих действий долгожданная ссылка на регистр в меню «Перейти» появится.

Шаг 3. Проверка видимости в Командном интерфейсе

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

Давайте проверим эти настройки:

  1. В дереве конфигурации найдите подсистему, в которую входит ваш документ.
  2. Нажмите на нее правой кнопкой мыши и выберите «Открыть командный интерфейс».
  3. В открывшемся окне слева выберите ваш документ.
  4. Справа вы увидите несколько групп команд. Нас интересует «Панель навигации» (иногда «Перейти»).
  5. Раскройте эту группу и убедитесь, что напротив вашего регистра накопления стоит флажок видимости. Если он снят, установите его.

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

Шаг 4. Проверка прав доступа

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

Проанализируем права:

  1. В Конфигураторе перейдите в раздел «Администрирование» -> «Пользователи» и посмотрите, какие роли назначены вашему пользователю.
  2. Далее в дереве конфигурации в ветке «Общие» -> «Роли» откройте каждую из назначенных ролей.
  3. Найдите в списке объектов ваш регистр накопления.
  4. Убедитесь, что для него установлено как минимум право «Чтение». Если его нет — команда «Перейти» отображаться не будет.

Шаг 5. Влияние Библиотеки стандартных подсистем (БСП)

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

Выясним, не в этом ли причина:

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

Подводя итог, можно составить следующий чек-лист для решения проблемы:

  1. Проверить свойство Использовать стандартные команды у объекта-документа.
  2. Очистить кэш: закрыть/открыть конфигурацию, перезапустить Конфигуратор или удалить папки кэша вручную. Это решает проблему в 90% "загадочных" случаев.
  3. Проверить видимость команды в настройках командного интерфейса подсистемы.
  4. Проверить права доступа у текущей роли на чтение регистра — для этого удобно использовать отчет по анализу прав доступа и ограничений RLS.
  5. Если используется БСП — проверить, не связана ли видимость регистра с отключенной функциональной опцией, а упростить контроль доступа поможет обработка детального анализа прав доступа пользователей.

Следуя этим шагам, вы гарантированно найдете причину и восстановите нужную навигационную ссылку в форме вашего документа.

← На главную