|
v8: Перенос настроек СКД между компановщиками
| ☑ |
0
simol
05.09.11
✎
18:18
|
Имею два КомпановщикНастроекКомпановкиДанных.
Как из одного в другой перенести только выбранные поля?
Метод ЗагрузитьНастройки на входе ждет полные НастройкиКомпановкиДанных.
Предыстория: УПП, произвольные отчеты, есть отчет с большим числом выбранных полей. В СКД были добавлены новые доступные поля. Настроек этого очета тоже много. Не хочется в каждую настройку руками добавлять. Добавил в один и хочу прокопировать в остальные.
|
|
1
detec
05.09.11
✎
18:50
|
(0) Можно превратить выбранные поля в объект XDTO, схему компоновки туда же, записать в схему настройки и восстановить из объекта XDTO схему.
В типовой УПП видел процедуру, которая делает это с настройками. Т.е. настройки записывает в схему по этому алгоритму.
|
|
2
detec
05.09.11
✎
18:51
|
к (1) т.е. записывать не в схему, а в настройки-приёмник, превращённые в объект XDTO.
|
|
3
simol
05.09.11
✎
18:56
|
(1)спасибо за идею
|
|
4
simol
16.09.11
✎
11:18
|
Достучался программно и сделал так:
....
ИсходныяСКД = ВыбранныйОтчет.СхемаКомпоновкиДанных.Получить();
ВыходнаяСКД = ВыбраннаяНастройкаОбъект.ХранилищеНастроек.Получить();
ВыходнаяСКД.НастройкиКомпоновщика.Выбор.Элементы.Очистить();
ТиповыеОтчеты.СкопироватьЭлементы(ВыходнаяСКД.НастройкиКомпоновщика.Выбор, ИсходныяСКД.ВариантыНастроек.Основной.Настройки.Выбор);
ВыбраннаяНастройкаОбъект.ХранилищеНастроек = Новый ХранилищеЗначения(ВыходнаяСКД);
ВыбраннаяНастройкаОбъект.Записать();
|
|