Имя: Пароль:
1C
 
Ошибка информации расшифровки
0 Сергей Роспатнюк
 
31.05.18
09:51
подскажите добрые люди где я допустил ошибку при нажатии на поле отчета выдает ошибка информации расшифровки: не найдена расшифровываемая группировка.


&НаКлиенте
Процедура Выгрузить(Команда)
    
    СформироватьОтчётПрограммно();
        
КонецПроцедуры

Функция СформироватьОтчётПрограммно()
        
    ОтчетОбъект = РеквизитФормыВЗначение("Отчет");        // Упр. прил.
    
    //--- Инициализация СКД
    Если Истина Тогда
        
        ДанныеРасшифровки_Вр    = Новый ДанныеРасшифровкиКомпоновкиДанных;    
        СхемаКомпоновкиДанных    = ОтчетОбъект.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");    
        Компоновщик                = Новый КомпоновщикНастроекКомпоновкиДанных;
        Компоновщик.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных));    
        Компоновщик.ЗагрузитьНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию);        
        
    КонецЕсли;
    //--- Инициализация СКД (Конец)
    
    //------------------
    
    Настройки    = Компоновщик.ПолучитьНастройки();
    
    Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("НачалоПериода",                    Отчет.НачалоПериода);
    Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("КонецПериода",                    Отчет.КонецПериода);    
    Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("Организация",                    Отчет.Организация);
    Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("Сотрудник_Наименование",            Отчет.Сотрудник);
    
    //--- Вывод результата СКД    
    Если Истина Тогда
        ДанныеРасшифровкиОтчета     = Новый ДанныеРасшифровкиКомпоновкиДанных;
        
        КомпоновщикМакета             = Новый КомпоновщикМакетаКомпоновкиДанных;    
        МакетКомпоновкиДанных        = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки_Вр);    
        ДанныеРасшифровки             = ПоместитьВоВременноеХранилище(ДанныеРасшифровкиОтчета, УникальныйИдентификатор);
        
        
        //------------------    
        ПроцессорКомпоновкиДанных     = Новый ПроцессорКомпоновкиДанных;
        ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных,,ДанныеРасшифровкиОтчета);       //ДанныеРасшифровки_Вр
        
        //Результат = ЭлементыФормы.Результат;        // Об. прил.
        Результат.Очистить();
        
        Результат_Вр                = Новый ТабличныйДокумент();
        
        ПроцессорВывода                = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
        ПроцессорВывода.УстановитьДокумент(Результат);
        ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
        
    КонецЕсли;        
    //--- Вывод результата СКД (Конец)
    
    Элементы.Результат.ОтображениеСостояния.Видимость = Ложь;
    Элементы.Результат.ОтображениеСостояния.ДополнительныйРежимОтображения = ДополнительныйРежимОтображения.НеИспользовать;
    
КонецФункции
1 DrShad
 
31.05.18
09:54
во-первых это нужно было делать не в форме
во-вторых забыл по этой конструкции ОтчетОбъект = РеквизитФормыВЗначение("Отчет");        // Упр. прил.

сделать обратную ЗначениеВРеквизитФормы
2 Сергей Роспатнюк
 
31.05.18
09:58
(1) то есть это все необходимо делать в модуле объекта?
3 DrShad
 
31.05.18
10:00
в ПриКомпоновкеРезультата
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший