|
Результат СКД в таблицу значений | ☑ | ||
---|---|---|---|---|
0
IAleksa
13.10.11
✎
16:05
|
Подскажите пожалуйста как результат СКД в таблицу значений загрузить? Программа ЗУП, отчет правлю типовой по исполнительным листам...
|
|||
1
Санта
13.10.11
✎
16:10
|
ручами надо все делать
|
|||
2
Санта
13.10.11
✎
16:10
|
+(1) в смысле, что конструктором не обойтись тут.
Надо всю компоновку кодом строить. |
|||
3
IAleksa
13.10.11
✎
16:12
|
т.е. надо сделать отчет внешним и скопировать в него весь код из общих модулей, а потом править его?
|
|||
4
Maxus43
13.10.11
✎
16:16
|
в книге Хрусталёвой есть пример как делать
|
|||
5
zippygrill
13.10.11
✎
16:17
|
пример. ....Программно формируем отчет и дальше через МВТ....
ДанныеРасшифровки= Новый ДанныеРасшифровкиКомпоновкиДанных; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(ЭтотОбъект.СхемаКомпоновкиДанных,КомпоновщикНастроек.Настройки,ДанныеРасшифровки); МВТ = Новый МенеджерВременныхТаблиц; Запрос = Новый Запрос; Запрос.МенеджерВременныхТаблиц = МВТ; Запрос.Текст = МакетКомпоновки.НаборыДанных[0].Запрос; Для Каждого Параметр из МакетКомпоновки.ЗначенияПараметров Цикл Запрос.УстановитьПараметр(Параметр.Имя, Параметр.Значение); КонецЦикла; ТЗ = Запрос.Выполнить().Выгрузить(); |
|||
6
Amiralnar
13.10.11
✎
16:20
|
(5) Тут будет только запрос. А как-же вычисляемые поля, ресурсы, отборы?
|
|||
7
sivalor
13.10.11
✎
16:22
|
СКД = Новый СхемаКомпоновкиДанных;
//Опишем источники как они есть в отчете ИсточникДанных = СКД.ИсточникиДанных.Добавить(); ИсточникДанных.Имя = "ИсточникДанных1"; ИсточникДанных.ТипИсточникаДанных = "Local"; НаборДанных = СКД.НаборыДанных.Добавить(Тип("НаборДанныхЗапросСхемыКомпоновкиДанных")); НаборДанных.Имя = "НаборДанных1"; НаборДанных.ИсточникДанных = "ИсточникДанных1"; НаборДанных.Запрос = ТекстЗапроса; Компоновщик = Новый КомпоновщикНастроекКомпоновкиДанных; Компоновщик.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СКД)); Компоновщик.ЗагрузитьНастройки(КомпоновщикНастроек.Настройки); //Настрой получим из настоящего отчета Компоновщик.Восстановить(); КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СКД, Компоновщик.Настройки,,, Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений")); ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки); ТаблицаЗначений = Новый ТаблицаЗначений; ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений; ПроцессорВывода.УстановитьОбъект(ТаблицаЗначений); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных); |
|||
8
also
13.10.11
✎
16:23
|
||||
9
sivalor
13.10.11
✎
16:25
|
или так?)
ТаблицаЗначений = Новый ТаблицаЗначений; ТиповыеОтчеты.СформироватьТиповойОтчет(ЭтотОбъект, ТаблицаЗначений, ДанныеРасшифровки, Ложь); |
|||
10
zippygrill
13.10.11
✎
16:26
|
(6) я думал она знает как программно доводить отчета до экрана :)
|
|||
11
sivalor
13.10.11
✎
16:29
|
(10) тебе сказали, что твой вариант не учитывает настройки СКД. Экран тут не при чем.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |