![]() |
|
Как программно сменить компоновщик данных? | ☑ | ||
---|---|---|---|---|
0
idw
21.01.12
✎
22:48
|
Я деалю так, но пишет, что "Поле такое то не найдено":
КомпоновщикНастроек.Настройки.Отбор.Элементы.Очистить(); КомпоновщикНастроек.Настройки.Структура.Очистить(); ЭлементыФормы.Результат.Очистить(); ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных; Если флажок = 1 тогда Макет = ОтчетОбъект.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); Настройки=Макет.НастройкиПоУмолчанию; КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(Макет)); КомпоновщикНастроек.ЗагрузитьНастройки(Настройки); Иначе Макет = ОтчетОбъект.ПолучитьМакет("СКД_строки"); Настройки=Макет.НастройкиПоУмолчанию; КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(Макет)); КомпоновщикНастроек.ЗагрузитьНастройки(Настройки); КонецЕсли; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроек.Настройки, ДанныеРасшифровки); ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновки.Инициализировать(МакетКомпоновки,,ДанныеРасшифровки); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(ЭлементыФормы.Результат); |
|||
1
idw
21.01.12
✎
22:56
|
В первой схеме есть поле "Количество", во второй его нет. Наверное из-за этого выходит ошибка. Но вот почему схема компоновки данных не загружается?
|
|||
2
idw
22.01.12
✎
08:56
|
up
|
|||
3
idw
22.01.12
✎
10:30
|
Надо делать вот так:
ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных; Если флажок = 1 тогда СхемаКомпоновкиДанных = ОтчетОбъект.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); Иначе СхемаКомпоновкиДанных = ОтчетОбъект.ПолучитьМакет("СКД_строки"); КонецЕсли; Настройки=СхемаКомпоновкиДанных.НастройкиПоУмолчанию; КомпоновщикНастроек.ЗагрузитьНастройки(Настройки); КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроек.Настройки, ДанныеРасшифровки); ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновки.Инициализировать(МакетКомпоновки,,ДанныеРасшифровки); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; |
|||
4
ЧеловекДуши
22.01.12
✎
10:32
|
А зачем?
Поди все делал во внешнем отчете ;) |
|||
6
idw
22.01.12
✎
10:40
|
(4) у меня две схемы компоновки данных. Как бы два отчета. Вот поэтому и делал.
(5) злобный спамер. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |