Как очистить серверные настройки пользователя в 1С:ERP на управляемых формах?

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

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

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

Способ 1. Очистка через карточку пользователя (штатный инструмент)

Рассмотрим самый быстрый способ, позволяющий администратору сбросить накопленные интерфейсные параметры конкретного сотрудника без написания кода и вызова внешних обработок. Разберем по шагам порядок действий в интерфейсе 1С:ERP:

  1. Открываем раздел НСИ и администрирование (или Администрирование в зависимости от версии интерфейса).
  2. Переходим в справочник Пользователи.
  3. Находим в списке нужного пользователя и открываем его карточку.
  4. На панели навигации формы пользователя нажимаем кнопку Настройки.
  5. В открывшемся окне управления настройками нажимаем команду Очистить и подтверждаем действие.

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

Способ 2. Очистка через специальную панель администрирования прав (БСП)

В конфигурациях, использующих Библиотеку стандартных подсистем (включая 1С:ERP, КА, УТ), предусмотрен специализированный интерфейс для более гибкого управления пользовательскими настройками. Он позволяет очищать не только все параметры сразу, но и точечно выбирать определенные формы или списки.

Разберем последовательность действий:

  1. Переходим в меню Администрирование (или НСИ и администрирование) — Настройки пользователей и прав.
  2. Раскрываем блок Персональные настройки пользователей.
  3. Выбираем пункт Очистка настроек.
  4. В открывшейся обработке указываем одного или нескольких пользователей, для которых требуется выполнить сброс.
  5. Выбираем режим очистки: очистить все параметры целиком или перейти к выбору конкретных объектов (отдельных форм справочников, журналов или документов).
  6. Нажимаем кнопку Очистить.

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

Способ 3. Самостоятельный сброс настроек формы пользователем

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

  1. В открытой проблемной форме нажимаем кнопку Еще в командной панели и выбираем пункт Изменить форму.
  2. В появившемся окне редактора нажимаем Еще — Установить стандартные настройки и сохраняем изменения кнопкой ОК.
  3. Для таблиц и динамических списков: в подменю Еще выбираем Настроить список, затем внутри окна настроек нажимаем Еще — Стандартные настройки.

Способ 4. Программная очистка с помощью платформенных менеджеров хранилищ

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


// Удаление системных настроек пользователя (настройки форм, списков и т.д.)
ХранилищеСистемныхНастроек.Удалить(Неопределено, Неопределено, ИмяПользователя);

// Удаление общих настроек
ХранилищеОбщихНастроек.Удалить(Неопределено, Неопределено, ИмяПользователя);

// Удаление сохраненных данных форм
ХранилищеНастроекДанныхФорм.Удалить(Неопределено, Неопределено, ИмяПользователя);

// Удаление пользовательских вариантов и настроек отчетов
ХранилищеПользовательскихНастроекОтчетов.Удалить(Неопределено, Неопределено, ИмяПользователя);

Проанализируем параметры: если первыми двумя аргументами передать Неопределено, менеджер удалит абсолютно все настройки указанного пользователя в этом хранилище. Если же требуется сбросить настройки только одного объекта, первыми параметрами передаются конкретные КлючОбъекта и КлючНастроек.

Обратите внимание: выполнение этого кода для другого пользователя требует полных административных прав (наличия роли с правом Администрирование).

Способ 5. Низкоуровневая работа с таблицами СУБД и важные нюансы

На стороне СУБД серверные настройки 1С распределяются по системным таблицам. Например, в MS SQL Server параметры хранятся в следующих таблицах:

  1. _SystemSettings — хранит настройки форм, списков и интерфейсных элементов;
  2. _CommonSettings — системные и общие параметры конфигурации;
  3. Дополнительные системные таблицы пользовательских хранилищ.

Некоторые администраторы практикуют удаление записей прямыми запросами DELETE по полю _UserId. Однако мы настоятельно рекомендуем избегать этого метода из-за следующих архитектурных особенностей платформы:

  1. Кэширование на сервере 1С: процессы кластера rphost активно кэшируют пользовательские настройки в оперативной памяти сервера. Удаление строк напрямую в SQL не сбрасывает кэш сервера приложений: при выходе пользователя из системы его активная сессия может повторно перезаписать старые данные обратно в таблицы базы.
  2. Клиентский кэш: часть геометрии окон и визуальных состояний кэшируется локально на рабочей станции пользователя. При возникновении глубоких визуальных ошибок очистку сервера необходимо дополнять запуском клиента с параметром /ClearCache либо ручным удалением каталогов в AppData\Local\1C\1cv8 и AppData\Roaming\1C\1cv8.
  3. Целостность данных: прямое вмешательство в структуры СУБД в обход механизмов платформы нарушает лицензионное соглашение и может привести к логической несогласованности базы данных.

Таким образом, наиболее надежным и безопасным решением для управляемых форм 1С:ERP остается использование встроенных инструментов БСП через меню администрирования или программный вызов методов ХранилищеСистемныхНастроек.

← На главную