|   |   | 
| 
 | УФ запомнить все настройки интерфеса и панелей убрать/вернуть на место | ☑ | ||
|---|---|---|---|---|
| 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 | 
        + Надо было переделать режим сохранения
 эта строчка не нужна ХранилищеСистемныхНастроек.Сохранить("Общее/НастройкиИнтерфейсаКлиентскогоПриложения", , НастройкиИнтерфейса); // Поместим объект настроек текущему она тогда сохраняет настройку без панелей и в тонкий заходит с теми же что и на веб | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |