Для наложения отборов используется простой рекурсивный обход дерева значений, если строки не попадают в условия отбора они просто удаляются из дерева. В основной конфигурации дерево задач заполняет процедура "ЗаполнитьСписокЗадач" модуля формы "Задачи мне". В расширении после данной процедуры я вызываю рекурсивный обход дерева значений в котором удаляются ненужные строки.
&После("ЗаполнитьСписокЗадач")
Процедура пп_ЗаполнитьСписокЗадач(ЗадачиXDTO)
пп_ИнициализироватьОтборыИСортировкиЗадач(Задачи.ПолучитьЭлементы());
КонецПроцедуры
&НаСервере
Процедура пп_ИнициализироватьОтборыИСортировкиЗадач(Строки)
ВсегоСтрок = Строки.Количество();
Для Счетчик = 0 По ВсегоСтрок - 1 Цикл
ТекСтр = Строки[ВсегоСтрок - Счетчик - 1];
пп_ИнициализироватьОтборыИСортировкиЗадач(ТекСтр.ПолучитьЭлементы());
Если (СтрНайти(НРег(ТекСтр.Задача),НРег(пп_ОтборЗадача)) = 0 И пп_ОтборЗадачаИспользование) ИЛИ
(СтрНайти(НРег(ТекСтр.Автор),НРег(пп_ОтборАвтор)) = 0 И пп_ОтборАвторИспользование) ИЛИ
(Не (ТекСтр.СрокИсполнения >= пп_ОтборСрок.ДатаНачала И пп_ОтборСрок.ДатаОкончания >= ТекСтр.СрокИсполнения) И пп_ОтборСрокИспользование) ИЛИ
(Не (ТекСтр.Записана >= пп_ОтборСоздана.ДатаНачала И пп_ОтборСоздана.ДатаОкончания >= ТекСтр.Записана) И пп_ОтборСозданаИспользование) Тогда
Если ТекСтр.Группировка Тогда
Продолжить;
Иначе
Строки.Удалить(ТекСтр);
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Отборы и сортировки интерактивно добавлены на форму как новые реквизиты формы из расширения:
Данное расширение тестировалось в конфигурации ERP 2.4.10.56.