Работа с пользовательскими настройками
Область применения: управляемое приложение, обычное приложение.
1.1. Для хранения персональных настроек пользователя следует использовать хранилище общих настроек. Например, чтение и запись значения настройки «Задавать вопрос при выходе из программы» для текущего пользователя реализуется на встроенном языке с помощью объекта ХранилищеОбщихНастроек :
ЗначениеНастройки = ХранилищеОбщихНастроек.Загрузить(«НастройкиПрограммы», «ЗадаватьВопросПриВыходе»);
ХранилищеОбщихНастроек.Сохранить(«НастройкиПрограммы», «ЗадаватьВопросПриВыходе», ЗначениеНастройки);
При этом для хранения настроек пользователя не следует использовать какие-либо другие способы, в частности, другие объекты метаданных (регистры, реквизиты и табличные части справочников и др.), внешние файлы и пр.
1.2. Для работы с пользовательскими настройками требуется, чтобы для пользователя было доступно право СохранениеДанныхПользователя .
1.3. Для обращения к каждой настройке в хранилище общих настроек необходимо использовать уникальный строковый ключ настройки. Например, значения основной организации и основного склада, с которыми работает текущий пользователь – это две разные настройки, которые хранятся раздельно под ключами «ОсновнаяОрганизация» и «ОсновнойСклад» .
В то же время, некоторые настройки могут быть объединены в структуру, массив или соответствие, если все обращения к ним выполняются одновременно, как к одной настройке. Например, параметры прокси-сервера для доступа к сети Интернет представляют из себя набор из нескольких значений (адрес прокси-сервер, имя и пароль пользователя), однако хранятся все вместе в виде одной структуры как одна самостоятельная настройка.
2.1. В конфигурации должно быть предусмотрено общее место для редактирования всех пользовательских настроек. Как правило, это общая форма персональных настроек пользователя.
Пример реализации формы персональных настроек «Мои настройки» имеется в демонстрационной конфигурации Библиотеки стандартных подсистем .
2.2. В то же время, форма персональных настроек может являться не единственным местом для их редактирования. Для повышения удобства работы пользователя поля с отдельными настройками могут быть размещены непосредственно в тех рабочих местах, к которым эти настройки относятся. Например, флажок «Больше не показывать подсказки при редактировании файла» может быть размещен прямо на форме с самой подсказкой, которая выводится при работе с файлами.
2.3. Форма персональных настроек пользователя, другие формы (рабочие места), а также отдельные элементы форм для работы с персональными настройками должны быть доступны только пользователям с правом СохранениеДанныхПользователя .
3.1. При работе с хранилищем общих настроек следует иметь в виду, что настройки не мигрируют между узлами информационной базы, а специфичны для определенного узла. При необходимости, передача настроек пользователей между узлами может быть реализована дополнительно средствами встроенного языка.
3.2. Все настройки в хранилище общих настроек сохраняются в разрезе пользователей информационной базы, по строковому имени пользователя. Поэтому в случае переименования пользователя прежние настройки теряются. В частности, если впоследствии будет создан пользователь, имя которого совпадает с именем переименованного пользователя, то для него будут использованы ранее сохраненные настройки.
Для того чтобы этого избежать, рекомендуется переносить настройки при переименовании пользователя, и очищать настройки при удалении.
При использовании в конфигурации Библиотеки стандартных подсистем (БСП) в распоряжении разработчика имеются обработчики записи и удаления пользователя информационной базы (см. процедуры ПриЗаписиПользователяИнформационнойБазы и ПослеУдаленияПользователяИнформационнойБазы в общем модуле ПользователиПереопределяемый ), в которых возможно выполнить перенос и удаление настроек. Пример использования см. в демонстрационной конфигурации БСП.
Очистка хранилища настроек пользователей
Не секрет, что периодически, в 1С нужно чистить настройки пользователей!
т.к. в процессе обновления программы или доработки нового функционала, форма документа, отчета меняется и старые сохраненные настройки могут неверно отображаться с новым интерфейсом. Чтобы это исправить — нужно очистить старые настройки и сохранить по новой.
Тут же хранятся настройки печатных форм документов, если документ не печатается из 1С или печатается криво, то нужно очистить настройки 1C.
Обработка очистки настроек пользователя работает в 2-х режимах:
1. Выбираете пользователя — нажимаете Очистить ВСЕ настройки пользователя — у выбранного пользователя будет очищены все старые настройки, и программу будет работать и отображаться так , как это было заложено разработчиками. Этот способ помогает избавиться от проблем кроивого отображения форм в 1С.
2. Выборочно — Нажмите Получить настройки всех пользователей — отметьте галочками то — что нужно удалить и нажмите Удалить помеченные. Данный способ позволяет удалить только те настройки, которые вы считаете проблемными или не нужными.
Очистить настройки пользователя 1С
В программе 1С периодически обязательно требуется проводить очистку настроек пользователей. Программа обновляется со временем, появляются новые формы документов. С новым интерфейсом прежние настройки могут выдавать системные ошибки. Для исправления ситуации необходимо очистить старые настройки и сохранить очищенные. Технические проблемы, связанные с настройками пользователей во всех конфигурациях программы 1С идентичны.
Ошибки, которые связаны с повреждением базы, можно выявить с помощью тестирования и затем исправить. Наиболее часто появляется информационное сообщение об ошибке — «Файл базы данных повреждён».
Для проведения очистки необходимо выполнить действия в определенной последовательности.
Резервное копирование базы
В процессе проведения тестирования может произойти ошибка и серьезное повреждение базы. Резервная копия — гарантия восстановления информационной базы до копирования.
При наличии базы в виде файла, требуется скопировать папку с базой. Также можно использовать конфигуратор и провести выгрузку через него.
При наличии серверной базы, резервная копия может быть создана только через выгрузку в dt.
Для этого потребуется в меню конфигураторе «Администрирование»/«Выгрузить информационную базу» и затем нажать «Сохранить».
Тестирование и поиск ошибок
Сначала надо открыть конфигуратор 1С и в меню «Администрирование» нажать «Тестирование и исправление». В окошке провести настройку проверок и нажать «Выполнить».
При наличии файловой базы, можно проверить базу и с использованием утилиты chbdfl (находится в папке с платформой 1С Предприятие 8).
Необходимо запустить утилиту chbdfl в папке с базой выбрать файлик 1Cv8.1CD в папке, где расположена база. Потребуется поставить галочку «Исправлять ошибки»/«Выполнить».
Как полностью очистить все настройки пользователя
Для этого необходимо в подсистеме «Администрирование» найти «Настройки пользователей и прав»/«Настройки пользователей».
Выбрать интересующего вас пользователя, у которого необходимо очистить настройки в программе 1С, нажать «Очистить всё»/«Все настройки». Установятся настройки «По умолчанию». Настройки пользователя будут очищены.
Если самостоятельно не удается исправить ошибки и очистить настройки, рекомендуется обратиться за помощью к специалисту — профессионалу.
Хотите получать подобные статьи по четвергам?
Быть в курсе изменений в законодательстве?
Подпишитесь на рассылку
Очистка хранилища настроек пользователей
Тут же хранятся настройки печатных форм документов, если документ не печатается из 1С или печатается криво, то нужно очистить настройки 1C:
Обработка очистки настроек пользователя работает в 2-х режимах:
1. Выбираете пользователя — нажимаете Очистить ВСЕ настройки пользователя — у выбранного пользователя будет очищены все старые настройки, и программу будет работать и отображаться так , как это было заложено разработчиками. Этот способ помогает избавиться от проблем кривого отображения форм в 1С.
2. Выборочно — Нажмите: «Получить настройки всех пользователей», отметьте галочками то, что нужно удалить и нажмите: Удалить помеченные. Данный способ позволяет удалить только те настройки, которые вы считаете проблемными или не нужными.
Related Posts
5 Comments
При получении настроек желательно фильтровать их по пользователю, а не минут 10 в больших базах перебирать все настройки по совпадению имени пользователя.
Если ПользовательИБ = Неопределено Тогда
Сообщить(«Не найден пользователь ИБ с именем » + СокрЛП(Пользователь.Код) + «. Настройки не выбраны!»);
Выб = ХранилищеСистемныхНастроек.Выбрать(Новый Структура(«Пользователь», ПользовательИБ));