Создание собственного действия в отчете на СКД
По теме из базы знаний
- 115 полезностей по курсу СКД Евгения Гилёва
- Нестандартная расшифровка СКД или расшифровка одного отчета СКД при помощи другого отчета СКД с выбором варианта настроек (в управляемых формах, методика + пример для УТ11)
- Расшифровка отчета на СКД с детализацией по выбранному полю на основе БСП
- СКД - наборы данных и связи между ними, создание собственной иерархии, вложенные отчеты
- СКД не только для отчетов
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) да просто контекстное меню у табличного документа выводишь, и свои команды.
А дальше обрабатывай, либо по расшифровке, либо по данным полей отчета.
Расшифровкой можно сделать структуру, содержащую все необходимые данные строки (даже которых визуально в отчете может и не быть). И при обработке ячейки, проверяешь на тип значения этой расшифровки и все.
А дальше обрабатывай, либо по расшифровке, либо по данным полей отчета.
Расшифровкой можно сделать структуру, содержащую все необходимые данные строки (даже которых визуально в отчете может и не быть). И при обработке ячейки, проверяешь на тип значения этой расшифровки и все.
Вот что получилось, но теперь не могу понять, как мне получить значения все строки по которой выполняется мое действие
[/1C-CODE]
&НаКлиенте
Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки, Новый ИсточникДоступныхНастроекКомпоновкиДанных(Отчет));
ДоступныеДействия=Новый Массив;
ДоступныеДействия.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.ОткрытьЗначение);
ДополнительныеДействия = Новый СписокЗначений;
ДополнительныеДействия.Добавить("ДобавитьСумму", "Добавить сумму");
ДополнительныеДействия.Добавить("УдалитьСумму", "Удалить Сумму");
Оп = Новый ОписаниеОповещения("РезультатОбработкаРасшифровки_Продолжение", ЭтаФорма, Расшифровка);
ОбработкаРасшифровки.ПоказатьВыборДействия(Оп, Расшифровка, ДоступныеДействия, ДополнительныеДействия, Ложь );
КонецПроцедуры
//////////////////////////////////////////////////////////// ///////////
&НаКлиенте
Процедура РезультатОбработкаРасшифровки_Продолжение(ВыполненноеДействие, ПараметрВыполненногоДействия, ДополнительныеПараметры) Экспорт
Если ВыполненноеДействие = "ДобавитьСумму" Тогда
ЗаписатьВРегистрСведений(ДополнительныеПараметры);
ИначеЕсли ВыполненноеДействие = "УдалитьСумму" Тогда
УдалитьИзРегистраСведений(ДополнительныеПараметры);
ИначеЕсли ВыполненноеДействие=ДействиеОбработкиРасшифровкиКомпоновкиДа нных.ОткрытьЗначение Тогда
ОткрытьЗначение(ПараметрВыполненногоДействия);
КонецЕсли;
КонецПроцедуры
//////////////////////////////////////////////////////////// /////////////
&НаКлиенте
Функция ЗаписатьВРегистрСведений(Расшифровка)
Сообщить(111);
КонецФункции
//////////////////////////////////////////////////////////// /////////////
&НаКлиенте
Функция УдалитьИзРегистраСведений(Расшифровка)
Сообщить(222);
КонецФункции
Показать[/1C-CODE]
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот