Имя: Пароль:
1C
1С v8
Несколько схем компоновки.
0 UserMista
 
24.05.13
10:14
Итак Есть отчет на скд. В нем 2 схемы компоновки данных. По умолчанию загружается одна, при определенном условии должна загружаться вторая и строиться по ней отчет.
Проблема в том что список полей выводимых в отчет при смене компоновки не меняется, и нестановится доступным в настройках. Походу не вытаскиваются настройки из новой схемы.

Код смены схемы компоновки:

СтандартнаяОбработка = Ложь;    
ЭтотОбъект.СхемаКомпоновкиДанных = ЭтотОбъект.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанныхОстатки");
Компоновщик = Новый КомпоновщикНастроекКомпоновкиДанных;
Компоновщик.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(ЭтотОбъект.СхемаКомпоновкиДанных));
Компоновщик.ЗагрузитьНастройки(ЭтотОбъект.КомпоновщикНастроек.ПолучитьНастройки());
Компоновщик.Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("Склад",Склады);
ОбщегоНазначенияРТКлиентСервер.ДобавитьВыбранноеПоле(Компоновщик,"КоличествоОстаток","Количество");
ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновкиДанных = КомпоновщикМакета.Выполнить(ЭтотОбъект.СхемаКомпоновкиДанных, Компоновщик.Настройки, ДанныеРасшифровки, , );
//На данном этапе в ДанныеРасшифровки - содержатся все нужные поля, со статусом используются        
ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных();
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных, , ДанныеРасшифровки,);
       
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент();
ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных, Истина);

Где я не так подгружаю настройки?
1 Defender aka LINN
 
24.05.13
10:17
Компоновщик.ЗагрузитьНастройки(ЭтотОбъект.КомпоновщикНастроек.ПолучитьНастройки());

Это гениально, ящетаю
2 UserMista
 
24.05.13
10:25
Да. именно эта строчка грузит старые настройки в новый компоновщик. Это я уже понял сразу после постинга почемуто))
Сейчас встал вопрос. а как вытащить настройки с новой схемы компоновки...
3 Defender aka LINN
 
24.05.13
10:29
(2) Кэп нашептывает, что они где-то в новой схеме спрятались
4 UserMista
 
24.05.13
10:31
Да это то логично) Какой фразой объяснить ему чтоб он их из новой схемы тянул?
Тупо
ЭтотОбъект.КомпоновщикНастроек.ЗагрузитьНастройки(ЭтотОбъект.СхемаКомпоновкиДанных.НастройкиПоУмолчанию); ?
тянет настройки оплей. осталось отборы и группировки. но я уже на верном пути)
5 eklmn
 
гуру
24.05.13
10:32
наверняка можно было сделать в одной схеме...
6 UserMista
 
24.05.13
10:36
(5) Можно было. Вот найду косяк сейчас и буду пробовать.. Я не так давно с скд познакомился. Пока многое методом тыка.