Друзья есть отчет который выводит список Сотрудников
Все работает как надо, но руководство попросило добавить фильтвов (во вложении файл)
Слево Фильтр - папки в Справочнике Сотрудники
Справо фильтр - Это Подпапки , Папки АУП из Справочника Сотрудники
В общем не могу сделать так что бы выводился отчет Ерархией в зависимости какая галка Нажата.
Спасибо

```1c
    Процедура ВыделитьВсеКолонки(Парам)
    Для н=1 По СписГрупп.РазмерСписка() Цикл
    СписГрупп.Пометка(н,Парам);
    КонецЦикла;
    КонецПроцедуры

    Процедура ВыделитьВсеКолонки1(Парам)
    Для н=1 По СписАУП.РазмерСписка() Цикл
    СписАУП.Пометка(н,Парам);
    КонецЦикла;
    КонецПроцедуры

    Процедура Видимость()

    Если АктивацияФильтра =1 Тогда
    Форма.СписАУП.Видимость(1);
    Форма.СписГрупп.Видимость(1);
    Иначе
    Форма.СписАУП.Видимость(0);
    Форма.СписГрупп.Видимость(0);
    КонецЕсли;
    КонецПроцедуры

    Процедура Сформировать()
    Перем Запрос, ТекстЗапроса;

    //Создание объекта типа Запрос

    Запрос = СоздатьОбъект("Запрос");
    ТекстЗапроса =
    "//{{ЗАПРОС(Т51)
    //|Период с ДатаНач по ДатаКон;
    |Сотрудник = Справочник.Сотрудники.ТекущийЭлемент;
    |Основной = Справочник.Сотрудники.Основной;
    |НеРаботает = Справочник.Сотрудники.НеРаботает;
    |ДатаУвольнения = Справочник.Сотрудники.ДатаУвольнения;
    |ДатаПриема = Справочник.Сотрудники.ДатаПриема;
    |Действует = Справочник.Сотрудники.Действует;
    |НеСотрудник = Справочник.Сотрудники.НеСотрудник;
    |ФИОВЗУП = Справочник.Сотрудники.ФИОВЗУП;
    |Группировка Сотрудник;
    |Группировка ФИОВЗУП;
    |Группировка ДатаПриема;
    |Группировка ДатаУвольнения;
    |Условие (ДатаПриема < ДатаКон);
    |Условие (НеСотрудник = 0);
    |Условие (НеРаботает = 0);
    |";
    Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
    Возврат;
    КонецЕсли;

    Таблица = СоздатьОбъект("Таблица");
    Таблица.ИсходнаяТаблица("СписокСотрудников");
    Таблица.ВывестиСекцию("Шапка");

    ТабЗначСотрудников = СоздатьОбъект("ТаблицаЗначений");
    Запрос.Выгрузить(ТабЗначСотрудников,0,0);
    ТабЗначСотрудников.Сортировать("Сотрудник+");

    ИтогСотрудников = 0;
    НомерСтроки = 1;

    ТабЗначСотрудников.ВыбратьСтроки();

    ФИОВЗУПСтарое = ";
    Пока ТабЗначСотрудников.ПолучитьСтроку() = 1 Цикл

    Если ((ПустоеЗначение(ТабЗначСотрудников.ДатаУвольнения) = 1)
    или ((ТабЗначСотрудников.ДатаУвольнения <= ДатаКон)
    и(ПустоеЗначение(ТабЗначСотрудников.ДатаУвольнения) = 0))) Тогда

    Сотрудник = ТабЗначСотрудников.Сотрудник;
    ФИОВЗУП = ТабЗначСотрудников.ФИОВЗУП;
    ФИОВЗУП = ?(ПустоеЗначение(ФИОВЗУП)=1,Сотрудник,ФИОВЗУП);
    Если ПустоеЗначение(ФИОВЗУП) = 0 Тогда

    КонецЕсли;
    ДатаПриема = ТабЗначСотрудников.ДатаПриема;
    Если ФИОВЗУПСтарое = ФИОВЗУП Тогда
    Таблица.ВывестиСекцию("Строка2");

    Иначе
    Таблица.ВывестиСекцию("Строка1");
    ИтогСотрудников = ИтогСотрудников+1;
    НомерСтроки = НомерСтроки+1;
    КонецЕсли;
    ФИОВЗУПСтарое = ФИОВЗУП;
    КонецЕсли;
    КонецЦикла;

    Таблица.ВывестиСекцию("Итого");
    Таблица.ТолькоПросмотр(1);
    Таблица.Опции(0,0,0,0,"_ПАРАМЕТРЫ_ПЕЧАТИ_СписокСотрудников_");
    Таблица.ПараметрыСтраницы(,,,,,,,,,,1,);
    Таблица.Показать("СписокСотрудников");

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

    ДатаКон = РабочаяДата();
    Форма.СписАУП.Видимость(0);
    Форма.СписГрупп.Видимость(0);
    СписГрупп.ДобавитьЗначение("АУП","АУП");
    СписГрупп.ДобавитьЗначение("МЕДСЕСТРЫ","МЕДСЕСТРЫ");
    СписГрупп.ДобавитьЗначение("СПЕЦИАЛИСТЫ","СПЕЦИАЛИСТЫ");
    СписГрупп.ДобавитьЗначение("ТЕХПЕРСОНАЛ","ТЕХПЕРСОНАЛ");

    СписАУП.ДобавитьЗначение("Кассиры","Кассиры");
    СписАУП.ДобавитьЗначение("Контакт-центр","Контакт-центр");
    СписАУП.ДобавитьЗначение("ОтделИТ","Отдел ИТ");
    СписАУП.ДобавитьЗначение("ОтделПерсонола","Отдел персонола");
    СписАУП.ДобавитьЗначение("ОтделПродаж","Отдел продаж");
    СписАУП.ДобавитьЗначение("Пиар","Пиар");
    СписАУП.ДобавитьЗначение("Рецепция","Рецепция");
    СписАУП.ДобавитьЗначение("Руководство","Руководство");
    СписАУП.ДобавитьЗначение("ФинансовыйОтдел","Финансовый отдел");
    СписАУП.ДобавитьЗначение("ЮридическийОтдел","Юридический отдел");
```
---
Все очень просто. Перед текстом запроса сформируйте новый список значений из отмеченных папок.
И тогда в запросе добавьте:

```1c
    Условие (Сотрудник В СписокОтмеченныхЗначений);
```
---
Все очень просто. Перед текстом запроса сформируйте новый список значений из отмеченных папок.
И тогда в запросе добавьте:

```1c
    Условие (Сотрудник В СписокОтмеченныхЗначений);
```
---
а в чем проблема то? добавь условия фильтра до вывода секции в цикле