|
Программно получить результат отчета СКД в таблицу значений | ☑ | ||
|---|---|---|---|---|
|
0
ac13
04.09.19
✎
12:13
|
Есть отчет на СКД, где у нескольких параметров установлен флажок - Ограничение доступности
и в выражении этих параметров определены подобные значения: "Справочники.Пользователи.НайтиПоКоду("00001")" Нужно программно получить результат такого отчета. СхемаКомпоновкиДанных = ОтчетОбъект.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); ВариантНастройки = СхемаКомпоновкиДанных.ВариантыНастроек.Найти("Основной"); Настройки = ВариантНастройки.Настройки; Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("... // заполняю параметры КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; Макет = КомпоновщикМакетаОСКД.Выполнить(СхемаКомпоновкиДанных, Настройки, , , Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений")); ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновки.Инициализировать(Макет); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений; ТаблицаЗначений = Новый ТаблицаЗначений; ПроцессорВывода.УстановитьОбъект(ТаблицаЗначений); ПроцессорВывода.Вывести(ПроцессорКомпоновки); При инициализации выдает ошибку о том, что такие параметры не найдены (с флагом ограничения доступности), либо синтаксическую ошибку на выражение таких параметров: Справочники.Пользователи.НайтиПоКоду("00001") Как получить результат в таблицу значений подобного отчета? |
|||
|
1
Вафель
04.09.19
✎
12:15
|
очевидно что параметры заполняешь как то не так
|
|||
|
2
ac13
04.09.19
✎
12:17
|
(1) как заполнять такие параметры?
|
|||
|
3
ac13
04.09.19
✎
12:27
|
Пользователь = Настройки.ПараметрыДанных.Элементы.Найти("Пользователь");
Пользователь.Значение = Справочники.Пользователи.НайтиПоКоду("ПП0987"); Пользователь.Использование = Истина; при этом в СКД для этого параметра задано выражение "Справочники.Пользователи.НайтиПоКоду("ПП0987")" и получаю ошибку: Ошибка при вызове метода контекста (Инициализировать) Синтаксическая ошибка "Справочники.Пользователи.НайтиПоКоду" |
|||
|
4
ac13
04.09.19
✎
12:34
|
все оказалось просто: ПроцессорКомпоновки.Инициализировать(Макет,,,Истина)
|
|||
|
5
aleks_default
04.09.19
✎
12:37
|
Да там внешние функции нужно включать
|
|||
|
6
GGDots
04.09.19
✎
12:39
|
Недавно похожую проблему решали:
СКД. Удалить Выражение из Параметра. Как? |
| Форум | Правила | Описание | Секции | Поиск |