Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Расшифровка отчета на СКД. Как передать параметры в этот же отчет но с другим вариантом?

Расшифровка отчета на СКД. Как передать параметры в этот же отчет но с другим вариантом?
Я
   Birmingem
 
02.08.18 - 17:22
Создал отчет на СКД с запросом к таблице ОстаткиИОбороты регистра бухгалтерии. Обычная оборотка (остатки на начало и конец, обороты дт и кт) по нескольким счетам и одному виду субконто.

Этот отчет имеет два варианта:
- основной: группировки счет, субконто, валюта
- по документам: группировки счет, субконто, валюта, регистратор.

Задача, после формирования основного варианта, пользователь щелкает на нужной ему строке, и должен открыться этот же отчет с вариантом "по документам" с отбором по параметрам, полученным из строки, на которой щелкнули.

Особенность отчета.
Параметры в запрос СКД передаются программно, в процедуре ПриКомпоновкеРезультата() в модуле объекта отчета.
Например из реквизита отчета:

Параметр = НастройкиОтчета.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("НачалоПериода"));
    Если Параметр <> Неопределено Тогда
        Параметр.Значение = НачалоПериода;
        Параметр.Использование = Истина;
    КонецЕсли;

Расшифровку вызываю по методике, описанной в http://catalog.stavanalit.ru/public/165599

Но никак не могу считать текущий параметр "НачалоПериода". Считываю
так (взято из статьи):

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

Здесь переменная ИДНастройки дает пустую строку, и соответственно, дальше  Коллекция.Найти(ИДНастройки)=Неопределено.

Подозреваю что из-за того, что параметр был передан в СКД программно.

Подскажите пожалуйста, как правильно надо?
А еще лучше, дайте аналогичный работающий пример?
 
 
   Birmingem
 
1 - 03.08.18 - 09:18
Здесь переменная ИДНастройки дает пустую строку, и соответственно, дальше  Коллекция.Найти(ИДНастройки)=Неопределено.

Так как получить текущее значение параметра для передачи в расшифровку?
   Birmingem
 
2 - 03.08.18 - 10:54
Так как получить текущее значение параметра для передачи в расшифровку?
   Birmingem
 
3 - 08.08.18 - 11:22
Так как получить текущее значение параметра для передачи в расшифровку?
   Birmingem
 
4 - 08.08.18 - 18:12
Опытным путем установил, что параметр можно получить так:

КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти(ИмяПараметра).Значение

Но тогда зачем в указанной статье параметр получают через ИдентификаторПользовательскойНастройки?
И почему в моем случае этот ИдентификаторПользовательскойНастройки всегда пустой?

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует