Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 09:55

СКД 8.2_Расшифровка...Помогите пожалуйста

Автор anyut_ka, 05 ноя 2010, 15:30

0 Пользователей и 1 гость просматривают эту тему.

anyut_ka

Есть Отчет, сформированный с помощью СКД. В отчете есть группировки, вот наглядный пример

Бюджет
Район Задолженность
Договор

Федеральный 360
Вологда 200
э705-45 200
Сокол 160
нк34-90 160

Т.е. здесь группировки - Бюджет, Район

ГРУППИРОВКИ формируются программным путем, например:
Если РазвернутьПоРайонам Тогда
Гр = ТиповыеОтчеты.ДобавитьГруппировку(ОтчетОбъект.КомпоновщикНастроек, "Район");
КонецЕсли;

Необходимо при нажатии на любую ячейку отчета сделать расшифровку, передав в качестве параметра Договор

В процедуре делаю обработку расшифровки

Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка)
СтандартнаяОбработка=Ложь;
ОбработкаРасшифровки= Новый ОбработкаРасшифровкиКомпоновкиданных(ДанныеРасшифровки,Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных));

Данные = ДанныеРасшифровки;
Поля = Данные.Элементы.Получить(Расшифровка).ПолучитьПоля();
ПолеДоговор = Поля.Найти("Договор");
Если ПолеДоговор=Неопределено Тогда
ПолеДоговор = Неопределено;
Иначе
ПолеДоговор = ПолеДоговор.Значение;
Отчет = Отчеты.КарточкаСчета.Создать();

Отчет.Счет = ПланыСчетов.Хозрасчетный.РасчетыСПокупателями;
Отчет.НачалоПериода = НачалоГода(ТекущаяДата());
Отчет.КонецПериода = КонецМесяца(ТекущаяДата());
Отчет.Настроить();
Отчет.РежимРасшифровки = Истина;
Отчет.СохранятьНастройкуОтчета = Ложь;
Отб1 = Отчет.КомпоновщикНастроек.Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отб1.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
Отб1.Использование = Истина;
Отб1.Представление = "";
Отб1.Применение = ТипПримененияОтбораКомпоновкиДанных.Элементы;
Отб1.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ;
Отб1.ЛевоеЗначение = Отчет.КомпоновщикНастроек.Настройки.ДоступныеПоляОтбора.Элементы.Найти("Субконто1").Поле;
Отб1.ПравоеЗначение = ПоляГруппировок;

Форма = Отчет.ПолучитьФорму("ФормаОтчета");
Форма.Открыть();
Форма.ЭлементыФормы.ДействияФормыДополнительные.Кнопки.ПанельПользователя.Пометка = Ложь;
СтандартныеОтчеты.УправлениеОтображениемПанелиПользователя(Форма);

Форма.ОбновитьОтчет();



КонецЕсли;

КонецПроцедуры;

ПРОБЛЕМА в том, что не используя группировок все замечательно выводится, но при их использовании пишет поле Договор не должно входить в группировку Принадлежность Бюджету и так со всеми группировками

В СКД на вкладке макеты создаю макет поля, параметр Задолженность Расшифровка (Договор)
В принципе понятно, почему так происходит, если опять на примере

нельзя расшифровать сумму задолженности группировки (360) по договору, так как в ее составе несколько договоров...

Думаю, что в макете необходимо либо какое-то условие написать через конструкцию ВЫБОР либо как-то с макетом группировки колдовать

ПОДСКАЖИТЕ ПОЖАЛУЙСТА, КАК РЕШИТЬ ПРОБЛЕМУ!

Теги:

Похожие темы (1)

Рейтинг@Mail.ru

Поиск