Имя: Пароль:
1C
1С v8
УФ. Пользовательские настройки СКД в ОБРАБОТКЕ
0 fisher
 
27.02.13
18:10
Есть задачка на УФ. Короче хочу СКД использовать для генерации дерева значений в итоге, но параметры чтобы пользователь на форме настраивал как в отчете. Но интересно это победить в форме обработки.
Уткнулся в следующую проблему: не могу понять, как выполнить начальную инициализацию пользовательских настроек в компоновщике настроек (сделал его реквизитом формы). Метод Инициализировать() компоновщика их не инициализирует. Обычные настройки инициализирует, а пользовательские - нет (список элементов пользовательских настроек остается пустым).
Есть метод ЗагрузитьПользовательскиеНастройки(). Но как их сгенерировать первоначальные, как они в схеме настроены? Неужели только руками?
1 fisher
 
27.02.13
18:28
Метод Восстановить() пользовательские настройки также не затрагивает...
2 Жан Пердежон
 
27.02.13
18:33
держи готовое

&НаСервере
Функция ИнициализироватьКомпоновщик(Компоновщик,ИмяМакета,УникальныйИдентификатор) Экспорт

   СхемаКомпоновкиДанных = Обработки.ИмяОбработки.ПолучитьМакет(ИмяМакета);
   АдресСКД = ПоместитьВоВременноеХранилище(СхемаКомпоновкиДанных, УникальныйИдентификатор);
   
   ИсточникНастроек = Новый ИсточникДоступныхНастроекКомпоновкиДанных(АдресСКД);
   
   
   Компоновщик.Инициализировать(ИсточникНастроек);
   Компоновщик.ЗагрузитьНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию);

   Возврат АдресСКД;
   
КонецФункции // ИнициализироватьКомпоновщик()
3 SherifSP
 
27.02.13
18:33
(0) На обычных формах пробовал?
4 SherifSP
 
27.02.13
18:34
(2) Зачем так резко)
5 fisher
 
27.02.13
18:54
(2) О! Сенк!
ЗагрузитьНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию)
инициализирует пользовательские настройки.
А я уж начал было программно заполнять, но нифига не понял, как это сделать. У "КоллекцииПользовательскихНастроекКомпоновкиДанных есть метод Добавить(). Но в СП он вообще не принимает параметров! А отладчик ругается на их отсутствие. Я уже туда и нужные элементы настроек совал и идентификаторы пользовательских настроек - болт. Так и не понял, чего ему надо.
6 fisher
 
27.02.13
19:04
(2) Слу, а признайся, откуда ты такой умный, а? Я б до такого финта с временным хранилищем никогда в жизни не догадался. Чтобы у компоновщика связь с источником на клиенте оставалась. Это из типовых? Или где еще подглядел?
Еще раз огромное спасибо!
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший