Имя: Пароль:
1C
 
СКД: ДанныеРасшифровки в модуле отчета
0 sound
 
13.10.16
16:41
Добрый день.

Есть функция в модуле объекта (отчета):

Функция ПолучитьТабличныйДокумент(ДанныеРасшифровки = Неопределено) Экспорт
    Результат = Новый ТабличныйДокумент;
    КомпоновщикМакета             = Новый КомпоновщикМакетаКомпоновкиДанных;
    Если ДанныеРасшифровки = Неопределено Тогда
        ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
        ДанныеРасшифровки = КомпоновщикНастроек.ПолучитьНастройки();
    КонецЕсли;
    МакетКомпоновкиДанных         = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных,КомпоновщикНастроек.Настройки, ДанныеРасшифровки);
    ПроцессорКомпоновкиДанных     = Новый ПроцессорКомпоновкиДанных;
    ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных,,ДанныеРасшифровки,Истина);
    ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
    ПроцессорВывода.УстановитьДокумент(Результат);
    ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
    Возврат Результат;
КонецФункции // ПолучитьТабличныйДокумент()


Если вызывать ее из модуля формы, то стандартная расшифровка работает нормально:

ТабДок = ПолучитьТабличныйДокумент(ДанныеРасшифровки);
ЭлементыФормы.Результат.Вывести(ТабДок);

А когда создаю отчет программно и вызываю функцию, то кликнув на расшифровку в процедуру ОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка) в параметр Расшифровка приходит значение с типом "ИдентификаторРасшифровкиКомпоновкиДанных".

Как сделать чтобы и при программном вызове работала стандартная расшифровка?
1 sound
 
13.10.16
16:42
Я так понимаю что ДанныеРасшифровки это какая-то надстройка формы видимо
2 sound
 
13.10.16
16:56
Непонятно как-то объяснил?

Есть другой отчет, в нем есть поле табличного документа "ПолеРезультат", хочется взять данные из первого отчета, которые получаются вышеописанной функцией и поместить их в "ПолеРезультат":

Отчет = Отчеты.Отчет1.Создать();
ТабДОк = Отчет.ПолучитьТабличныйДокумент();
ЭлементыФормы.ПолеРезультат.Вывести(ТабДок);

Все выводится, но вместо стандартной расшифровки выходит окошко с цифрами (идентификаторами расшифровки), а хочется чтоб стандартно выпадал список
3 sound
 
14.10.16
12:54
Может сегодня кто ответит?
4 kittystark
 
14.10.16
13:01
во-первых ДанныеРасшифровки = КомпоновщикНастроек.ПолучитьНастройки(); как-то странно выглядит...

во вторых посмотри во вчерашнюю ветку, может поможет Вывод СКД из внешней обработки
Программист всегда исправляет последнюю ошибку.