|
УФ запомнить все настройки интерфеса и панелей убрать/вернуть на место | ☑ | ||
---|---|---|---|---|
0
Kigo_Kigo
20.12.23
✎
08:41
|
требуется запомнить настройки пользователя, с определенным типом клиента(веб), при старте их запомнить, куда нибудь сохранить, при тонком клиенте надо вернуть все как было, есть каие нибудь примеры? как убрать впринципе знаю, как вернуть в стандарт тоже, но это так не устраивает
|
|||
1
Кондер
20.12.23
✎
09:01
|
Скопировать все настройки с другого пользователя?
|
|||
2
Kigo_Kigo
20.12.23
✎
10:01
|
(1) Нет, запомнить текущие, особенно настроенные панели
|
|||
3
Галахад
гуру
20.12.23
✎
10:11
|
Если знаете, то что мешает выгрузить куда-нибудь сериализировав?
|
|||
4
Кондер
20.12.23
✎
10:20
|
(2) Я бы делал не так наверное, я бы бы настройку пользователя сохранял бы на другого пользователя и восстанавливал путем копировать все настройки
|
|||
5
Kigo_Kigo
20.12.23
✎
10:24
|
делаю вот так
Функция Расш1_ВыполнитьНастройкуПанелей(ПолучатьСоставИзХранилища=Ложь, ВосстановитьНастройкуПанелей=Ложь) Экспорт //Возврат Ложь; Если ТекущийРежимЗапуска() = Неопределено Тогда // Можно расширить условия на тип запуска и если не "тонкий, веб" то возврат. Возврат Ложь; КонецЕсли; УстановитьПривилегированныйРежим(Истина); Если ПолучатьСоставИзХранилища Тогда НастройкиИнтерфейса = ХранилищеСистемныхНастроек.Загрузить("Общее/НастройкиИнтерфейсаКлиентскогоПриложения"); Если НастройкиИнтерфейса = Неопределено Тогда НастройкиИнтерфейса = Новый НастройкиИнтерфейсаКлиентскогоПриложения; Иначе НастройкиСостава = НастройкиИнтерфейса.ПолучитьСостав(); // Состав не то, что в конфигураторе, а то, что пользователь установил себе. КонецЕсли; Иначе НастройкиИнтерфейса = Новый НастройкиИнтерфейсаКлиентскогоПриложения; НастройкиСостава = НастройкиИнтерфейса.ПолучитьСостав(); // С помощью пустого объекта настроек получим настройки состава, установленные в конфигураторе. КонецЕсли; Если НЕ ВосстановитьНастройкуПанелей Тогда // Очищаем настройки состава. НастройкиСостава.Верх.Очистить(); НастройкиСостава.Лево.Очистить(); НастройкиСостава.Низ.Очистить(); НастройкиСостава.Право.Очистить(); // Добавлем панели интерфейса ГруппаНастройкиСостава = Новый ГруппаНастройкиСоставаИнтерфейсаКлиентскогоПриложения; ГруппаНастройкиСостава.Добавить(Новый ЭлементНастройкиСоставаИнтерфейсаКлиентскогоПриложения("ПанельИзбранного")); ГруппаНастройкиСостава.Добавить(Новый ЭлементНастройкиСоставаИнтерфейсаКлиентскогоПриложения("ПанельОткрытых")); НастройкиСостава.Верх.Добавить(ГруппаНастройкиСостава); //// Очищаем избранное //Избранное = ХранилищеСистемныхНастроек.Загрузить("Общее/ИзбранноеРаботыПользователя"); //Если Избранное = Неопределено Тогда // Избранное = Новый ИзбранноеРаботыПользователя; //КонецЕсли; //Пока Избранное.Количество() Цикл // Избранное.Удалить(0); //КонецЦикла; // //// Добавляем элементы в избранное //мНавигационныеСсылки = Новый Массив; //мНавигационныеСсылки.Добавить("e1cib/command/Справочник.Контрагенты.Команда.Контрагенты"); //мНавигационныеСсылки.Добавить("e1cib/command/Справочник.ДоговорыКонтрагентов.Команда.Договоры"); // //Для каждого тНвСсылка Из мНавигационныеСсылки Цикл // Элемент = Новый ЭлементИзбранногоРаботыПользователя; // Элемент.НавигационнаяСсылка = тНвСсылка; // Избранное.Добавить(Элемент); //КонецЦикла; // ХранилищеСистемныхНастроек.Сохранить("Общее/ИзбранноеРаботыПользователя", "", Избранное); КонецЕсли; НастройкиИнтерфейса.УстановитьСостав(НастройкиСостава); ХранилищеСистемныхНастроек.Сохранить("Общее/НастройкиИнтерфейсаКлиентскогоПриложения", , НастройкиИнтерфейса); // Поместим объект настроек текущему пользователю в хранилище. Возврат Истина; КонецФункции но почему то не восстонавливает обратно из хранилища, а делает стандартную настройку |
|||
6
Галахад
гуру
20.12.23
✎
10:42
|
А где тут пункт "куда-нибудь сохранить"?
|
|||
7
Kigo_Kigo
20.12.23
✎
10:44
|
(6) ХранилищеСистемныхНастроек.Сохранить("Общее/НастройкиИнтерфейсаКлиентскогоПриложения", , НастройкиИнтерфейса);
|
|||
8
Галахад
гуру
20.12.23
✎
10:46
|
(7) Это же не куда-нибудь, а именно туда откуда пользователь возьмет при входе в программу. Или я не прав?
|
|||
9
Kigo_Kigo
20.12.23
✎
11:00
|
(8) прав, только что то не берется, может я что то делаю не так?
|
|||
10
unenu
20.12.23
✎
11:08
|
(5) о узнаю, на инфостаре или тут постил)
|
|||
11
Галахад
гуру
20.12.23
✎
11:09
|
(9) Ну, насколько я понял ты ложишь в хранилище уже измененную настройку, а нужно оригинал.
|
|||
12
unenu
20.12.23
✎
11:15
|
(5)
но почему то не восстонавливает обратно из хранилища, а делает стандартную настройку в методе ХранилищеСистемныхНастроек.Загрузить(...) более одного параметра. вероятно, если указать ключ и пользователя, то восстановит. |
|||
13
Kigo_Kigo
20.12.23
✎
11:22
|
(12) А есть пример, тогда и сохранить надо с ключем и пользователем, никогда с этим не работал
инфа в иненете скупа |
|||
14
Kigo_Kigo
20.12.23
✎
11:32
|
Вроде пишут, если пользователя не указывать, то делается все для текущего
|
|||
15
Kigo_Kigo
20.12.23
✎
12:15
|
Все нашел свой косяк, пока эксперементировал
ПолучатьСоставИзХранилища=Ложь, передавал ложь |
|||
16
Kigo_Kigo
20.12.23
✎
12:23
|
+ Надо было переделать режим сохранения
эта строчка не нужна ХранилищеСистемныхНастроек.Сохранить("Общее/НастройкиИнтерфейсаКлиентскогоПриложения", , НастройкиИнтерфейса); // Поместим объект настроек текущему она тогда сохраняет настройку без панелей и в тонкий заходит с теми же что и на веб |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |