В практике работы с программами на платформе 1С:Предприятие 8.3 часто встречается ситуация, когда один пользователь видит все данные в справочнике или документе, а другой — лишь их часть. При этом стандартные фильтры в шапке списка могут быть отключены, а назначение прав «Администратор» не приносит желаемого результата. Рассмотрим подробнее, почему так происходит, и разберем по шагам алгоритм решения этой проблемы на примере конфигурации 1С:Управление нашей фирмой (УНФ).
Когда мы сталкиваемся с тем, что часть элементов справочника Номенклатура скрыта, первым делом необходимо исключить влияние прав доступа (RLS) и стандартных фильтров. Однако, если под другим пользователем все данные отображаются корректно, а под проблемным — нет (даже с полными правами), значит, причина кроется в персональных настройках отображения данных.
Проанализируем ситуацию: в рассматриваемом случае пользователь не видел именно те позиции номенклатуры, у которых был заполнен реквизит Поставщик. Это явный признак того, что в системе сработал скрытый отбор. Выясним, почему стандартные методы диагностики часто не срабатывают:
ПолныеПрава, система продолжит применять его личные настройки отборов, которые он установил ранее.Прежде чем переходить к радикальным мерам, попробуем найти и отключить некорректный отбор вручную в интерфейсе пользователя. Рассмотрим, как это сделать в управляемых формах 1С:УНФ.
Откроем справочник Номенклатура под тем пользователем, у которого возникла проблема. Далее выполним следующие действия:
Поставщик или другим реквизитам.Если ручной поиск не дал результатов, переходим к системным инструментам очистки.
Это самый эффективный и «чистый» способ решения задачи. Он позволяет сбросить настройки конкретной формы, не удаляя при этом полезные настройки пользователя (такие как избранное, размеры окон или настройки других отчетов).
Для выполнения этой операции нам понадобятся права администратора. Рассмотрим алгоритм действий:
Справочники, найдем там Номенклатура и выделим ФормаСписка. Также обратите внимание на пункт Настройки внешнего вида.После этой процедуры при следующем открытии справочника Номенклатура форма вернется к «заводскому» состоянию, и все скрытые элементы снова станут видимыми.
Важно понимать техническую разницу между двумя этими понятиями, чтобы не выполнять лишнюю работу:
Локальный кэш — это файлы, которые 1С сохраняет на жестком диске пользователя (в папках AppData\Local\1C и AppData\Roaming\1C). В них хранятся скомпилированные формы, программные модули и картинки. Чистка кэша помогает, если форма «развалилась», не нажимаются кнопки или возникают странные ошибки выполнения кода.
Хранилище настроек в базе — это данные, которые хранятся внутри файла .1CD или в таблицах SQL. Это ваши фильтры, положение колонок, сохраненные варианты отчетов. Удаление папок 1С с диска не очистит эти настройки. Поэтому в ситуации с невидимой номенклатурой чистка кэша чаще всего оказывается бесполезной.
Для разработчиков и администраторов важно помнить о существовании Фиксированных настроек динамического списка. Если отбор установлен программно в коде конфигурации, пользователь не сможет его увидеть или отключить через меню «Настроить список».
Проанализируем пример кода, который мог бы привести к подобному поведению (но который нельзя сбросить очисткой пользовательских настроек):
// Пример установки программного отбора, который не виден пользователю
ЭлементОтбора = Список.КомпоновщикНастроек.ФиксированныеНастройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Поставщик");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено;
ЭлементОтбора.Использование = Истина;
Если в вашей конфигурации есть подобные доработки, то даже очистка настроек не поможет. В нашем же случае проблема была вызвана именно пользовательской активностью, поэтому стандартные средства администрирования 1С оказались эффективными.
Резюме: Если данные исчезли для одного пользователя — ищите «забытые» фильтры. Самый быстрый способ — очистка настроек формы через панель администрирования Обслуживание. Это сохранит рабочую среду пользователя и гарантированно вернет видимость элементов справочника Номенклатура.