|   |   | 
| 
 | Как сохранить настройки с неколькими схемами СКД? | ☑ | ||
|---|---|---|---|---|
| 0
    
        camomile 14.08.12✎ 16:53 | 
        Людт добрые, помогите девушке разобраться с этим вопросом,  кому не жалко. На форме есть список вариантов отчетов, подскажите как сохранить настройки вместе с вариантом? гуглила, мистила, нашла подобное здесь v8: Сохранение параметров при использовании нескольких схем , но так и не поняла как сделать.
  вот код: //выбрали вариант отчета из списка Процедура СписокВариантовПриИзменении(Элемент) СхемаКомпоновкиДанных = ЭтотОбъект.ПолучитьМакет(Элемент.Значение); Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию; КомпоновщикНастроек.ЗагрузитьНастройки(Настройки); //если при открытии нужно восстановить настройку Процедура ПриОткрытии() СтруктураНастройки = Новый Структура; СтруктураНастройки.Вставить("Пользователь", глЗначениеПеременной("глТекущийПользователь")); СтруктураНастройки.Вставить("ИмяОбъекта", Строка(ЭтотОбъект)); Если УниверсальныеМеханизмы.ПолучитьНастройкуИспользоватьПриОткрытии(СтруктураНастройки) Тогда мТекущаяНастройка = СтруктураНастройки; КомпоновщикНастроек.ЗагрузитьНастройки(мТекущаяНастройка.СохраненнаяНастройка.Получить()); КонецЕсли; КонецПроцедуры //если при закрытии нужно сохранить настройку Процедура ПриЗакрытии() Если мТекущаяНастройка <> Неопределено И мТекущаяНастройка.НаименованиеНастройки <> Неопределено И мТекущаяНастройка.Свойство("СохранятьАвтоматически") И мТекущаяНастройка.СохранятьАвтоматически Тогда ТекПользователь = глЗначениеПеременной("глТекущийПользователь"); Если ТекПользователь<> мТекущаяНастройка.Пользователь Тогда Ответ = Вопрос("Вы восстановили настройку другого пользователя, сохранить ее в |ваших настройках?", РежимДиалогаВопрос.ДаНет); Если Ответ = КодВозвратаДиалога.Да Тогда Если ВвестиСтроку(мТекущаяНастройка.НаименованиеНастройки, "Укажите наименование сохраняемой настройки") Тогда мТекущаяНастройка.Пользователь = ТекПользователь; УниверсальныеМеханизмы.СохранитьНастройку(мТекущаяНастройка); КонецЕсли; КонецЕсли; Иначе УниверсальныеМеханизмы.СохранитьНастройку(мТекущаяНастройка); КонецЕсли; КонецЕсли; КонецПроцедуры КонецПроцедуры //переопеределние кнопки Сохранить значения Процедура СохранитьНастройки() Экспорт Перем СохраненнаяНастройка; Если мТекущаяНастройка<>Неопределено Тогда СтруктураНастройки = мТекущаяНастройка; Иначе СтруктураНастройки = Новый Структура; СтруктураНастройки.Вставить("ИмяОбъекта", Строка(ЭтотОбъект)); СтруктураНастройки.Вставить("НаименованиеНастройки", Неопределено); СтруктураНастройки.Вставить("ИспользоватьПриОткрытии", Ложь); СтруктураНастройки.Вставить("СохранятьАвтоматически", Ложь); КонецЕсли; СтруктураНастройки.Вставить("Пользователь", глЗначениеПеременной("глТекущийПользователь")); СохраненнаяНастройка = Новый ХранилищеЗначения(КомпоновщикНастроек.ПолучитьНастройки()); СтруктураНастройки.Вставить("СохраненнаяНастройка", СохраненнаяНастройка); ВозвращаемаяСтруктура = УниверсальныеМеханизмы.СохранениеНастроек(СтруктураНастройки); Если ВозвращаемаяСтруктура <> Неопределено Тогда мТекущаяНастройка = ВозвращаемаяСтруктура; Иначе мТекущаяНастройка = СтруктураНастройки; КонецЕсли; КонецПроцедуры //переопеределние кнопки Восстановить значение Процедура ВосстановитьНастройки() Экспорт СтруктураНастройки = Новый Структура; СтруктураНастройки.Вставить("Пользователь", глЗначениеПеременной("глТекущийПользователь")); СтруктураНастройки.Вставить("ИмяОбъекта", Строка(ЭтотОбъект)); СтруктураНастройки.Вставить("НаименованиеНастройки", ?(мТекущаяНастройка = Неопределено, Неопределено, мТекущаяНастройка.НаименованиеНастройки)); ВозвращаемаяСтруктура = УниверсальныеМеханизмы.ВосстановлениеНастроек(СтруктураНастройки); Если ВозвращаемаяСтруктура <> Неопределено Тогда мТекущаяНастройка = ВозвращаемаяСтруктура; КомпоновщикНастроек.ЗагрузитьНастройки(мТекущаяНастройка.СохраненнаяНастройка.Получить()); КонецЕсли; КонецПроцедуры т.е сохранение настроек самих схем работает нормально, но как к ним еще пристроить и вариант самой схемы не пойму | |||
| 1
    
        camomile 14.08.12✎ 17:09 | 
        ну пожааалуйста, не жадничайте , сама то разберусь, но с подсказкой быстрее )     | |||
| 2
    
        Новенький_2009 14.08.12✎ 17:14 | 
        А что за конфа?     | |||
| 3
    
        camomile 14.08.12✎ 17:17 | 
        это 8.1     | |||
| 4
    
        camomile 14.08.12✎ 17:17 | 
        конфа Консолидация     | |||
| 5
    
        sanja26 14.08.12✎ 17:19 | 
        перейти на управляемые формы и хотя бы 8.2     | |||
| 6
    
        camomile 14.08.12✎ 17:24 | 
        (5) это в ближайшем будущем, а без УФ и в 8.1 есть варианты?     | |||
| 7
    
        GenV 14.08.12✎ 17:24 | 
        (0) Добавляй к ИмяОбъекта имена схем.     | |||
| 8
    
        camomile 14.08.12✎ 17:34 | 
        (7)  т.е сюда СтруктураНастройки.Вставить("ИмяОбъекта", Строка(ЭтотОбъект))?
  непонимаю, каким образом? | |||
| 9
    
        GenV 14.08.12✎ 17:37 | 
        Например так:
  СтруктураНастройки.Вставить("ИмяОбъекта", Строка(ЭтотОбъект)) + ИмяТекущейСхемы | |||
| 10
    
        camomile 14.08.12✎ 17:44 | 
        давайте только без вредных советов обойдемся     | |||
| 11
    
        GenV 14.08.12✎ 18:51 | 
        (10) Скобку переставить не догадался ?!     | |||
| 12
    
        GenV 14.08.12✎ 18:52 | 
        11+ лась     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |