8.х Не могу открыть номенклатуру в отчете

Discussion in 'Конфигурирование на платформе "1С:Предприятие 8"' started by Silent_Rain, Mar 13, 2015.

  1. TopicStarter Overlay
    Silent_Rain
    Offline

    Silent_Rain

    Joined:
    Jul 21, 2014
    Messages:
    22
    Likes Received:
    0
    Trophy Points:
    1
    Добрый день!
    Создан внешний отчет под УФ с использованием СКД. В модуле формы процедур, относящихся к формированию отчета нету. В модуле объекта имеется следущий код:

    Code:
    Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)Экспорт
        СтандартнаяОбработка = Ложь;   
        //Получаем схему из макета
        Если РасчитатьПоОпциям = Истина Тогда
            СхемаКомпоновкиДанных = ПолучитьМакет("СхемаКомпоновкиПоОпциям");
           
            //Из схемы возьмем настройки по умолчанию
            Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию;
           
            Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("ВидЦены",         ВидЦены);
            Настройки.ПараметрыВывода.УстановитьЗначениеПараметра("Заголовок",       "Расчет себестоимости продукции по опциям");
            Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("СсылкаДокумент",  ЗаказПокупателя);
        Иначе
            СхемаКомпоновкиДанных = ПолучитьМакет("СхемаКомпоновкиПоСпецификации");
           
            //Из схемы возьмем настройки по умолчанию
            Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию;
           
            Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("ВидЦены",         ВидЦены);
            Настройки.ПараметрыВывода.УстановитьЗначениеПараметра("Заголовок",       "Расчет себестоимости продукции по спецификации");
            Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("ДокументСсылка",  ЗаказПокупателя);
           
        КонецЕсли;
        //Создаем данные расшифровке
        ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
       
        КомпоновщикНастроек.ЗагрузитьНастройки(Настройки);
       
        //Формируем макет, с помощью компоновщика макета
        КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
       
        //Передаем в макет компоновки схему, настройки и данные расшифровки
        МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки);
       
        //Выполним компоновку с помощью процессора компоновки
        ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
       
        ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, , ДанныеРасшифровки);
       
        //Очищаем поле табличного документа
        ДокументРезультат.Очистить();
       
        //Выводим результат в табличный документ
        ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
        ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
        ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
       
    КонецПроцедуры
    При выполнении отчета все выводится, но я не могу открыть номенклатуру.
    Отчет.jpg
    Подскажите, что я забыла дописать?
  2. nomad_irk
    Offline

    nomad_irk Профессионал в 1С

    Joined:
    Oct 20, 2008
    Messages:
    4,370
    Likes Received:
    295
    Trophy Points:
    104
    Текст запроса СКД покажите.
  3. xxx949
    Offline

    xxx949 Опытный в 1С

    Joined:
    Jul 29, 2010
    Messages:
    266
    Likes Received:
    1
    Trophy Points:
    29
    или добавьте к сообщению схему СКД
  4. TopicStarter Overlay
    Silent_Rain
    Offline

    Silent_Rain

    Joined:
    Jul 21, 2014
    Messages:
    22
    Likes Received:
    0
    Trophy Points:
    1
    В общем проблема решилась указанием основной схемы компоновки данных, но возникла другая проблема: имеется 2 СКД, использую каждый при определенном условии, но не получается получить настройки из СКД, который не указан как основной. Решила я ее конечно немного извращенным способом, добавив 2 реквизита отчета, выведя их на форму и на основе них заполняю параметры СКД в модуле объекта, весь код представлен выше. Хотелось бы конечно все сделать правильно, но к сожалению пока не нашла нормального ответа.

Share This Page