|
Расшифровка СКД | ☑ | ||
---|---|---|---|---|
0
мистер игрек
25.07.12
✎
13:22
|
Как сделать так, чтоб отчет пере сформировался согласно отбору? У меня не получается
Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка) Перем ВыполненноеДействие; СтандартнаяОбработка = Ложь; ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки,Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных)); ДоступныеДействия = Новый Массив(); ДоступныеДействия.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.ОткрытьЗначение); //реализация дополнительных действий ДополнительныеДействия=Новый СписокЗначений; ДополнительныеДействия.Добавить("Действие1","Расшифровать"); // добавляем свое действие Настройки = ОбработкаРасшифровки.Выполнить(Расшифровка, ВыполненноеДействие, ДоступныеДействия,ДополнительныеДействия); КонецПроцедуры |
|||
1
IronDemon
25.07.12
✎
13:33
|
Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка)
Перем ВыполненноеДействие; // Запретим стандартную обработку расшифровки СтандартнаяОбработка = Ложь; // Создадим и инициализируем обработчик расшифровки ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки, Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных)); ДоступныеДействия = Новый Массив(); ДоступныеДействия.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.ОткрытьЗначение); ДоступныеДействия.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.Упорядочить); ДоступныеДействия.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.Расшифровать); // Осуществим выбор действия расшифровки пользователем Настройки = ОбработкаРасшифровки.Выполнить(Расшифровка, ВыполненноеДействие, ДоступныеДействия); Если Настройки <> Неопределено Тогда // Пользователь выбрал действие, для которого нужно менять настройки Если ВыполненноеДействие = ДействиеОбработкиРасшифровкиКомпоновкиДанных.Упорядочить Тогда КомпоновщикНастроек.ЗагрузитьНастройки(Настройки); СформироватьОтчет(); Иначе // При других действиях - создадим новый отчет, откроем форму, сформируем отчет в ней Отчет = Отчеты.СборкаСистемныхБлоков.Создать(); Форма = Отчет.ПолучитьФорму("ФормаОтчета"); Форма.Открыть(); Отчет.КомпоновщикНастроек.ЗагрузитьНастройки(Настройки); Форма.СформироватьОтчет(); КонецЕсли; КонецЕсли; КонецПроцедуры |
|||
2
мистер игрек
25.07.12
✎
14:17
|
почему здесь у меня "Настройка" получается неопределено?
Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка) Перем ВыполненноеДействие; СтандартнаяОбработка = Ложь; ОбластьРасш = ЭлементыФормы.Результат; ТекстРасш = ДанныеРасшифровки.Элементы[расшифровка].ПолучитьПоля()[0].Значение; СтандартнаяОбработка = Ложь; ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки,Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных)); ДоступныеДействия = Новый Массив(); ДоступныеДействия.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.ОткрытьЗначение); //реализация дополнительных действий ДополнительныеДействия=Новый СписокЗначений; ДополнительныеДействия.Добавить("Действие1","Расшифровать"); // добавляем свое действие Настройки = ОбработкаРасшифровки.Выполнить(Расшифровка, ВыполненноеДействие, ДоступныеДействия,ДополнительныеДействия); Если Настройки <> Неопределено Тогда Если ВыполненноеДействие = "Действие1" Тогда Отб = КомпоновщикНастроек.Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); Отб.Использование = Истина; Отб.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Дата"); Отб.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; Отб.ПравоеЗначение = ТекстРасш; КомпоновщикНастроек.ЗагрузитьНастройки(Настройки); ЭлементыФормы.Результат.Очистить(); ОбновитьОтчет(); //СкомпоноватьРезультат(ЭлементыФормы.Результат, ДанныеРасшифровки); КонецЕсли; КонецЕсли; КонецПроцедуры |
|||
3
мистер игрек
25.07.12
✎
14:33
|
верх
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |