Здравствуйте, на точке маршрута бп, выключаю стандартное создание задач. и сам программно создаю несколько задач. То есть в определенно точке маршрута есть создается несколько задач(Эти задачи создаются для каждой строки ТЧ в БП - Это самое ужасное, то что несколько задач). После этой точки стоит проверка условия, выполнены эти задачи или нет.
Так вот, если все эти задачи выполнены, то все ок идем дальше по карте маршрута, но, если нет, то возвращаемся к этой же точке маршрута, так вот, как проверить есть ли не выполненная задача, и если есть, то задать в переменную Результат значение Ложь? чтоб процесс вернулся обратно к этой точке.
---
Попробуйте как-то так

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | Задача1.Ссылка КАК Ссылка
    |ИЗ
    | Задача.Задача1 КАК Задача1
    |ГДЕ
    | Задача1.Выполнена = ЛОЖЬ
    | И Задача1.БизнесПроцесс = &БизнесПроцесс
    | И Задача1.ТочкаМаршрута = &ТочкаМаршрута";

    Запрос.УстановитьПараметр("БизнесПроцесс", Ссылка);
    Запрос.УстановитьПараметр("ТочкаМаршрута", ТочкаМаршрутаБизнесПроцесса);

    РезультатЗапроса = Запрос.Выполнить();
    Результат = РезультатЗапроса.Пустой();
```
---
У задачи есть реквизит "Выполнена" и связь с бизнес-процессом
---
у меня на форме задачи две кнопки, Отклонить задачу, или Выполнить задачу, если отклонить, то задача выполнена, только результат выполнения задачи отклонено.
Я понимаю что есть реквизит выполнена, но мне надо перебрать все эти задачи, и если у одной из них результат выполнения отклонено, то и проверка условия не пройдена.
Вопрос был в том как перебрать все эти задачи?
---
Результат выполнения тоже ведь в задаче сохраняется
---
да, но как получить эти все задачи и их результаты?
---
проверку делать запросом (спасибо КЭП).
Если у тебя отклонение = выполнению, то по какому условию ты выйдешь из цикла? Один отклонили, а ты считаешь, что это не выполнено и он у тебя будешь ждать пока его выполнять = бесконечный цикл.
---
по условию что у задачи результат выполнения = Отклонено.
---
мне просто нужно понять как получить все задачи этой точки, в проверке условия
---
Попробуйте как-то так

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | Задача1.Ссылка КАК Ссылка
    |ИЗ
    | Задача.Задача1 КАК Задача1
    |ГДЕ
    | Задача1.Выполнена = ЛОЖЬ
    | И Задача1.БизнесПроцесс = &БизнесПроцесс
    | И Задача1.ТочкаМаршрута = &ТочкаМаршрута";

    Запрос.УстановитьПараметр("БизнесПроцесс", Ссылка);
    Запрос.УстановитьПараметр("ТочкаМаршрута", ТочкаМаршрутаБизнесПроцесса);

    РезультатЗапроса = Запрос.Выполнить();
    Результат = РезультатЗапроса.Пустой();
```
---
Получилось в итоге так, спасибо

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | УниверсальнаяЗадача.Ссылка
    |ИЗ
    | Задача.УниверсальнаяЗадача КАК УниверсальнаяЗадача
    |ГДЕ
    | УниверсальнаяЗадача.Результат = &Отклонено
    | И УниверсальнаяЗадача.БизнесПроцесс = &БизнесПроцесс
    | И УниверсальнаяЗадача.ТочкаМаршрута = &ТочкаМаршрута";

    Запрос.УстановитьПараметр("Отклонено", Перечисления.РезультатВыполненияЗадачи.Отклонено);
    Запрос.УстановитьПараметр("БизнесПроцесс", Ссылка);
    Запрос.УстановитьПараметр("ТочкаМаршрута", ТочкиМаршрута.Мероприятие);
    РезультатЗапроса = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    Если НЕ РезультатЗапроса.Пустой() Тогда
    Результат = Ложь;
    КонецЕсли;
```
---
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    Если НЕ РезультатЗапроса.Пустой() Тогда
        Результат = Ложь;
    КонецЕсли;

вот этот код исправьте!
Выборку не делайте, если ничего не перебираете.

Оставьте только:

```1c
    Результат = РезультатЗапроса.Пустой();
```