|
Программное выполнение СКД | ☑ | ||
---|---|---|---|---|
0
onx1
21.10.19
✎
14:32
|
Почему-то не работает даже простой отчет при попытках программно сформировать через СКД. Где я мог ошибиться или что ещё забыл?
СхемаКомпоновки = Новый СхемаКомпоновкиДанных; Источник = СхемаКомпоновки.ИсточникиДанных.Добавить(); Источник.Имя = "ЛокальнаяБаза"; Источник.СтрокаСоединения = ""; Источник.ТипИсточникаДанных = "Local"; НаборДанных = СхемаКомпоновки.НаборыДанных.Добавить(Тип("НаборДанныхЗапросСхемыКомпоновкиДанных")); НаборДанных.ИсточникДанных = "ЛокальнаяБаза"; НаборДанных.АвтоЗаполнениеДоступныхПолей = Истина; НаборДанных.Имя = "ДанныеЗапрос"; НаборДанных.Запрос = "ВЫБРАТЬ | ПодразделенияОрганизаций.Ссылка КАК Подразделение |ИЗ | Справочник.ПодразделенияОрганизаций КАК ПодразделенияОрганизаций"; ПолеПодразделение = НаборДанных.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных")); ПолеПодразделение.Заголовок = "Подразделение"; ПолеПодразделение.ПутьКДанным = "Подразделение"; ПолеПодразделение.Поле = "Подразделение"; Настройки = СхемаКомпоновки.НастройкиПоУмолчанию; ГруппировкаПодразделение = Настройки.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных")); ПолеГруппировки = ГруппировкаПодразделение.ПоляГруппировки.Элементы.Добавить(Тип("ПолеГруппировкиКомпоновкиДанных")); ПолеГруппировки.Использование = Истина; ПолеГруппировки.Поле = Новый ПолеКомпоновкиДанных("Подразделение"); ПолеГруппировки.ТипГруппировки = ТипГруппировкиКомпоновкиДанных.Элементы; ВыбранноеПоле = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных")); ВыбранноеПоле.Заголовок = "Подразделение"; ВыбранноеПоле.Использование = Истина; ВыбранноеПоле.Поле = Новый ПолеКомпоновкиДанных("Подразделение"); КомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных; КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновки)); КомпоновщикНастроек.ЗагрузитьНастройки(Настройки); КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; Макет = КомпоновщикМакета.Выполнить(СхемаКомпоновки, КомпоновщикНастроек.ПолучитьНастройки()); ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновки.Инициализировать(Макет); ТабДок = Новый ТабличныйДокумент; ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(ТабДок); ПроцессорВывода.Вывести(ПроцессорКомпоновки); Табличный документ в результате получается пустой. |
|||
1
mikecool
21.10.19
✎
14:34
|
настрой руками в гуи, в ПриКомпоновкеРезультата смотришь - что получилось и что у тебя написано
|
|||
2
onx1
21.10.19
✎
14:44
|
(1) Спасиб за совет. А смотреть только переменную "СхемаКомпоновкиДанных" можно или ещё какие-нибудь есть?
|
|||
3
mikecool
21.10.19
✎
14:45
|
(2) для настроек по умолчанию хватит
|
|||
4
onx1
21.10.19
✎
14:48
|
(3) Это да, просто как всегда не понятно какие переменные по умолчанию доступны в модуле отчета.
|
|||
5
Kigo_Kigo
21.10.19
✎
14:50
|
||||
6
onx1
21.10.19
✎
15:02
|
Даже визуально сравнивая настройки в ПриКомпоновкеРезультата, всё равно не могу найти ошибку.
Существует ли программный генератор кода по схеме, так чтобы на входе схема, а на выходе табличный документ? |
|||
7
toypaul
гуру
21.10.19
✎
15:15
|
||||
8
toypaul
гуру
21.10.19
✎
15:18
|
ГруппировкаПодразделение.Использование = Истина
|
|||
9
onx1
21.10.19
✎
15:29
|
(8) Не помогло, к сожалению.
(7) А за это спасибо. Действительно помогает! |
|||
10
Tonik992
21.10.19
✎
15:37
|
КомпоновщикНастроек.ПолучитьНастройки()
Посмотри, структура отчета заполнена? |
|||
11
runoff_runoff
21.10.19
✎
15:39
|
автополе в группировке есть (в выборе у группировки)?..
|
|||
12
Tonik992
21.10.19
✎
15:39
|
Вам нужно в ГруппировкаПодразделение
Добавить в Выбор добавить поле. |
|||
13
onx1
21.10.19
✎
16:05
|
(12) Да, действительно разобрался, что надо было добавить "авто поле" по группировке "Подразделение":
ГруппировкаПодразделение.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных")); |
|||
14
onx1
21.10.19
✎
16:08
|
Всем спасибо! Миста прям порадовала, теперь даже можно получить ответ )
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |