Почему в 1С:БГУ 2.0 после обновления пропали разделы меню и как восстановить интерфейс?

Программист 1С v8.3 (Управляемые формы) Бухгалтерский учет Сфера услуг, туризм и социальный сектор
← На главную

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

Анализ причин: роли, профили и функциональные опции

Для начала проанализируем ситуацию. Если права у пользователя в разных областях одинаковые, но интерфейс различается, проблема может скрываться в трех плоскостях: повреждение справочника Профили групп доступа, некорректное состояние функциональных опций или незавершенное отложенное обновление данных. В БГУ 2.0 видимость разделов жестко привязана к ролям, входящим в профиль, и к константам, отвечающим за включение тех или иных подсистем.

Решение 1. Восстановление поставляемых профилей групп доступа

Часто после автоматического обновления предопределенные профили (например, "Администратор") могут потерять связь с ролями конфигуратора или вовсе стать "пустыми" элементами. Профиль в 1С — это не просто название, а набор ролей, определенных в метаданных. Выясним, как восстановить этот список программно.

Попробуем запустить стандартную процедуру обновления поставляемых профилей. Для этого создадим внешнюю обработку и выполним следующий код:


&НаСервере
Процедура ОбновитьПоставляемыеПрофилиНаСервере()
    Справочники.ПрофилиГруппДоступа.ОбновитьПоставляемыеПрофили();
КонецПроцедуры

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


&НаСервере
Процедура ИсправитьПрофильАдминистратораНаСервере()
    // Находим проблемный профиль
    ПрофильОбъект = Справочники.ПрофилиГруппДоступа.НайтиПоНаименованию("Администратор").ПолучитьОбъект();
    
    Если ПрофильОбъект <> Неопределено Тогда
        // Снимаем признак предопределенности
        ПрофильОбъект.ИмяПредопределенныхДанных = "";
        ПрофильОбъект.ОбменДанными.Загрузка = Истина;
        ПрофильОбъект.Записать();
        
        // Рекомендуется пометить на удаление или удалить, если нет ссылок
        // ПрофильОбъект.Удалить(); 
    КонецЕсли;

    // Вызываем принудительное создание поставляемых профилей
    Справочники.ПрофилиГруппДоступа.ОбновитьПоставляемыеПрофили();
КонецПроцедуры

Решение 2. Ручное создание профиля с корректным идентификатором

Если автоматическое обновление не восстанавливает нужные роли в профиле (например, отсутствует роль Администратор системы), можно создать профиль вручную через код, указав точный ИдентификаторПоставляемыхДанных. Это гарантирует, что система распознает его как системный.

Разберем пример создания элемента справочника ПрофилиГруппДоступа с нужным GUID:


НовыйЭлемент = Справочники.ПрофилиГруппДоступа.СоздатьЭлемент();
НовыйЭлемент.Наименование = "Администратор";
НовыйЭлемент.ИмяПредопределенныхДанных = "Администратор";
// Используем уникальный идентификатор для БСП
НовыйЭлемент.ИдентификаторПоставляемыхДанных = Новый УникальныйИдентификатор("6c4b0307-43a4-4141-9c35-3dd7e9586d41");
НовыйЭлемент.Записать();

// После этого обязательно запускаем обновление
Справочники.ПрофилиГруппДоступа.ОбновитьПоставляемыеПрофили();

После выполнения этого кода обязательно зайдите в справочник и проверьте табличную часть профиля. В ней должны появиться две критически важные роли: Полные права и Администратор системы. Именно отсутствие второй роли часто приводит к "обрезанному" интерфейсу в режиме Такси.

Решение 3. Проверка функциональных опций

Если с правами всё в порядке, а разделов всё равно нет, проанализируем состояние функциональных опций. В 1С:БГУ 2.0 видимость почти каждого раздела (Налоги, Учет запасов, Обязательства) зависит от того, включена ли соответствующая опция в настройках параметров учета.

Рассмотрим, что нужно сделать:

  1. Перейдите в раздел Администрирование — Настройка параметров учета.
  2. Проверьте все закладки на наличие включенных флажков (например, "Вести учет расчетов по принятым обязательствам").
  3. Важный нюанс: даже если флажки стоят, попробуйте их снять, нажать "Записать", а затем снова установить и записать. Это инициирует пересчет функциональных опций для текущей области данных.

Решение 4. Завершение отложенного обновления

В современных версиях БГУ обновление состоит из двух этапов. Первый этап проходит при запуске, а второй — в фоновом режиме. Если фоновые задания по обработке данных прервались с ошибкой, интерфейс может отображаться некорректно.

Посмотрим на последовательность действий для проверки:

  1. Зайдите в Администрирование — Обслуживание.
  2. Откройте пункт Результаты обновления программы.
  3. Перейдите по ссылке Результаты обновления и дополнительные процедуры обработки данных.
  4. Если в списке есть процедуры со статусом "Ошибка" или "Не выполнялась", запустите их вручную. Пока эти процедуры не завершатся, доступ к некоторым разделам может быть ограничен на уровне метаданных.

Решение 5. Очистка кэша и настроек пользователя

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

Выполним следующие шаги:

Итоги

Для восстановления видимости разделов в БГУ 2.0 мы рекомендуем действовать последовательно: сначала убедиться в наличии роли Администратор системы в профиле пользователя, затем принудительно обновить поставляемые профили через программный вызов, и в завершение проверить включение функциональных опций в настройках учета. Как правило, сочетание обновления профилей и переподключения функциональных опций решает проблему в 90% случаев.

← На главную