|
Вопрос по СКД | ☑ | ||
---|---|---|---|---|
0
pavelul73
24.03.14
✎
13:12
|
Добрый день.
Пытаюсь программно сформировать отчет на скд и вывести его на форму обработки. На форме размещен элемент "Результат" - тип Табличный документ. Код: ОСВ = Отчеты.ОборотноСальдоваяВедомость.Создать(); СхемаКомпоновкиДанных = ОСВ.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию; ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки); ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, , ДанныеРасшифровки); Результат.Очистить(); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(Результат); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных); Но Результат не заполняется, поле на форме обработки - пустое. Подскажите, в чем может быть ошибка? |
|||
1
Cube
24.03.14
✎
13:14
|
(0) Думаю, что элемент формы не связан с переменной "Результат"...
|
|||
2
Cube
24.03.14
✎
13:15
|
+(1) Либо, СКД возвращает пустой результат. Установи заголовок отчета в СКД для проверки.
|
|||
3
pavelul73
24.03.14
✎
13:20
|
СКД возвращает пустой результат, но вот почему - не могу понять
|
|||
4
pavelul73
24.03.14
✎
13:22
|
как установить заголовок отчета?
|
|||
5
pavelul73
24.03.14
✎
13:39
|
Заголовок выводится, но результат СКД пустой. Никто не сталкивался?
|
|||
6
Fram
24.03.14
✎
13:41
|
(5) Настройка пустая, скорее всего
|
|||
7
pavelul73
24.03.14
✎
13:44
|
(6) не подскажете, как заполнить настройку?
было бы здорово, если бы был пример заполнения настройки |
|||
8
vicof
24.03.14
✎
13:44
|
(7) Для начала можно пройти бесплатный курс по СКД
|
|||
9
AlexITGround
24.03.14
✎
14:03
|
(0) период установи
|
|||
10
pavelul73
24.03.14
✎
14:46
|
(9)
Сделал так: ОСВ = Отчеты.ОборотноСальдоваяВедомость.Создать(); СхемаКомпоновкиДанных = ОСВ.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных; Компоновщик = Новый КомпоновщикНастроекКомпоновкиДанных; //Компоновщик.Настройки.ПараметрыДанных.Элементы[0].Значение Компоновщик.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных)); Компоновщик.ЗагрузитьФиксированныеНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию); Компоновщик.Настройки.ПараметрыДанных.Элементы[0].Значение = Объект.КонецПериода;//конец периода Компоновщик.Настройки.ПараметрыДанных.Элементы[1].Значение = Объект.НачалоПериода;//начало периода КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Компоновщик.Настройки, ДанныеРасшифровки); ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, , ДанныеРасшифровки); Результат.Очистить(); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(Результат); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных); Но все равно не выводит |
|||
11
pavelul73
24.03.14
✎
16:21
|
Подскажите, пожалуйста:
Получился вот такой код: ОСВ = Отчеты.ОборотноСальдоваяВедомость.Создать(); СКД = ОСВ.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных; Компоновщик = Новый КомпоновщикНастроекКомпоновкиДанных; Компоновщик.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СКД)); Компоновщик.ЗагрузитьНастройки(Компоновщик.ПолучитьНастройки()); ПарамНачПериода = Компоновщик.Настройки.ПараметрыДанных.Элементы.Найти("НачалоПериода") ; Если ПарамНачПериода <> Неопределено Тогда ПарамНачПериода.Использование = Истина; ПарамНачПериода.Значение = Объект.НачалоПериода; КонецЕсли; ПарамКонПериода = Компоновщик.Настройки.ПараметрыДанных.Элементы.Найти("КонецПериода") ; Если ПарамКонПериода <> Неопределено Тогда ПарамКонПериода.Использование = Истина; ПарамКонПериода.Значение = Объект.КонецПериода; КонецЕсли; ОтборОрганизация=Компоновщик.Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ОтборОрганизация.Использование=Истина; ОтборОрганизация.ВидСравнения=ВидСравненияКомпоновкиДанных.Равно; ОтборОрганизация.ЛевоеЗначение=Новый ПолеКомпоновкиДанных("Организация"); ОтборОрганизация.ПравоеЗначение=Объект.Организация; ПолеКомпоновки = Компоновщик.Настройки.Отбор.Элементы.Добавить(Тип("ПолеКомпоновкиДанных")); ПолеКомпоновки.Использование=Истина; ПолеКомпоновки.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ПолеКомпоновки.ЛевоеЗначение = Новый полеКомпоновкиДанных("ПоказательБУ"); ПолеКомпоновки.ПравоеЗначение = Истина; Компоновщик.Настройки.ПараметрыВывода.Элементы.Найти("Title").Использование = истина; Компоновщик.Настройки.ПараметрыВывода.Элементы.Найти("Title").Значение = "Мой заголовок отчета"; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СКД, Компоновщик.Настройки, ДанныеРасшифровки); ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, , ДанныеРасшифровки); Результат.Очистить(); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(Результат); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных); но в табличный документ выводит только заголовок отчета и параметры отбора. Почему сам отчет не выводит? |
|||
12
France
24.03.14
✎
16:25
|
Мне в аналогичной ситуации очень помогла Хрусталева
|
|||
13
pavelul73
24.03.14
✎
16:35
|
(12)Нет под рукой этой книги, не подскажете, в чем же проблема?
|
|||
14
Пеппи
24.03.14
✎
16:48
|
А в ТЗ выводит данные из запроса?
|
|||
15
Пеппи
24.03.14
✎
16:52
|
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений
ТаблицаЗначений = Новый ТаблицаЗначений; ПроцессорВывода.УстановитьОбъект(ТаблицаЗначений); ПроцессорВывода.Вывести(ПроцессорКомпоновки); |
|||
16
pavelul73
24.03.14
✎
17:48
|
Дело в том, что в схеме СКД ОСВ не задана структура отчета, поэтому и выводит пусто. Нужно свою структуру создавать
|
|||
17
pavelul73
24.03.14
✎
18:30
|
Может кто сталкивался с подобным?
Как правильно создать структуру отчета программным способом? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |