Как вернуть пропавшие группы номенклатуры в 1С:УНФ после обновления?

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

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

Выясним причину: архитектурные особенности 1С:УНФ

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

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

Способ 1: Ручная перезапись групп номенклатуры

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

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

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

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

Способ 2: Программная перезапись при массовых сбоях

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

Нам потребуется написать скрипт, который переберет все элементы справочника с признаком ЭтоГруппа и программно их перезапишет. Разберем пример кода, который делает именно это:


Выборка = Справочники.Номенклатура.ВыбратьИерархически();
Пока Выборка.Следующий() Цикл
    Если Выборка.ЭтоГруппа Тогда
        ОбъектГруппы = Выборка.ПолучитьОбъект();
        // Принудительно записываем группу для обновления регистра
        ОбъектГруппы.Записать();
    КонецЕсли;
КонецЦикла;

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

Способ 3: Проверка настроек формы (Категории или Группы)

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

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

  1. В шапке левой боковой панели найдите переключатель видов отображения.
  2. Убедитесь, что там выбрано значение Группы, а не Категории.
  3. Если форма визуально "сломалась", перейдите в меню Еще (в правой верхней части списка номенклатуры) -> Изменить форму.
  4. В открывшемся окне снова нажмите Еще и выберите Установить стандартные настройки.

Способ 4: Настройка видимости и очистка кэша

В завершение разберем дополнительные меры, которые помогают восстановить корректное отображение интерфейса.

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

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

← На главную