Untitled
unknown
plain_text
2 years ago
26 kB
46
Indexable
ВЫБРАТЬ РАЗРЕШЕННЫЕ
ЗадачаИсполнителяПредметы.Предмет КАК Предмет
ПОМЕСТИТЬ ВТ_ПредметыКассовыхДокументов
ИЗ
Задача.ЗадачаИсполнителя.Предметы КАК ЗадачаИсполнителяПредметы
ГДЕ
ЗадачаИсполнителяПредметы.РольПредмета = ЗНАЧЕНИЕ(Перечисление.РолиПредметов.Основной)
И ЗадачаИсполнителяПредметы.Предмет ССЫЛКА Справочник.ВнутренниеДокументы
И ВЫРАЗИТЬ(ЗадачаИсполнителяПредметы.Предмет КАК Справочник.ВнутренниеДокументы).ВидДокумента В (&ВидПредмета_КассовыеДокументы)
И ЗадачаИсполнителяПредметы.Ссылка.ТекущийИсполнитель = &ТекущийПользователь
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗРЕШЕННЫЕ
ЗадачаИсполнителя.Ссылка КАК Ссылка,
ЗадачаИсполнителя.Дата КАК Дата,
ЗадачаИсполнителя.БизнесПроцесс КАК БизнесПроцесс,
ЗадачаИсполнителя.ТочкаМаршрута КАК ТочкаМаршрута,
ЗадачаИсполнителя.Наименование КАК Наименование,
ЗадачаИсполнителя.Выполнена КАК Выполнена,
ЗадачаИсполнителя.СрокИсполнения КАК СрокИсполнения,
ВЫБОР
КОГДА НЕ &ИспользоватьДатуИВремяВСрокахЗадач
И ЗадачаИсполнителя.СрокИсполнения <> ДАТАВРЕМЯ(1, 1, 1)
ТОГДА КОНЕЦПЕРИОДА(ЗадачаИсполнителя.СрокИсполнения, ДЕНЬ)
ИНАЧЕ ЗадачаИсполнителя.СрокИсполнения
КОНЕЦ КАК СрокИсполненияДляОтображенияВСписке,
ЗадачаИсполнителя.ПредметСтрокой КАК ПредметСтрокой,
ЗадачаИсполнителя.Автор КАК Автор,
ЗадачаИсполнителя.ПринятаКИсполнению КАК ПринятаКИсполнению,
ВЫБОР
КОГДА ЗадачаИсполнителя.Важность = ЗНАЧЕНИЕ(Перечисление.ВариантыВажностиЗадачи.Низкая)
ТОГДА 0
КОГДА ЗадачаИсполнителя.Важность = ЗНАЧЕНИЕ(Перечисление.ВариантыВажностиЗадачи.Высокая)
ТОГДА 2
ИНАЧЕ 1
КОНЕЦ КАК ВажностьКартинка,
ВЫБОР
КОГДА ЗадачаИсполнителя.Проект = ЗНАЧЕНИЕ(Справочник.Проекты.ПустаяСсылка)
ТОГДА &ИмяГруппыБезПроекта
ИНАЧЕ ЗадачаИсполнителя.Проект
КОНЕЦ КАК Проект,
ЕСТЬNULL(ФлагиОбъектов.Флаг, ЗНАЧЕНИЕ(Перечисление.ФлагиОбъектов.ПустаяСсылка)) КАК Флаг,
ВЫБОР
КОГДА ФлагиОбъектов.Флаг = ЗНАЧЕНИЕ(Перечисление.ФлагиОбъектов.Красный)
ТОГДА 1
КОГДА ФлагиОбъектов.Флаг = ЗНАЧЕНИЕ(Перечисление.ФлагиОбъектов.Синий)
ТОГДА 2
КОГДА ФлагиОбъектов.Флаг = ЗНАЧЕНИЕ(Перечисление.ФлагиОбъектов.Желтый)
ТОГДА 3
КОГДА ФлагиОбъектов.Флаг = ЗНАЧЕНИЕ(Перечисление.ФлагиОбъектов.Зеленый)
ТОГДА 4
КОГДА ФлагиОбъектов.Флаг = ЗНАЧЕНИЕ(Перечисление.ФлагиОбъектов.Оранжевый)
ТОГДА 5
КОГДА ФлагиОбъектов.Флаг = ЗНАЧЕНИЕ(Перечисление.ФлагиОбъектов.Лиловый)
ТОГДА 6
ИНАЧЕ 0
КОНЕЦ КАК НомерФлага,
ЗадачаИсполнителя.Исполнитель КАК Исполнитель,
ВЫБОР
КОГДА ЗадачиДляВыполнения.СостояниеВыполнения = ЗНАЧЕНИЕ(Перечисление.СостоянияЗадачДляВыполнения.ВыполнениеОтменено)
ТОГДА 9
КОГДА РезультатыВыполненияПроцессовИЗадач.Результат = ЗНАЧЕНИЕ(Перечисление.ВариантыВыполненияПроцессовИЗадач.Положительно)
ТОГДА 7
КОГДА РезультатыВыполненияПроцессовИЗадач.Результат = ЗНАЧЕНИЕ(Перечисление.ВариантыВыполненияПроцессовИЗадач.ПоложительноСЗамечаниями)
ТОГДА 6
КОГДА РезультатыВыполненияПроцессовИЗадач.Результат = ЗНАЧЕНИЕ(Перечисление.ВариантыВыполненияПроцессовИЗадач.Отрицательно)
ТОГДА 5
КОГДА ЗадачаИсполнителя.Выполнена = ИСТИНА
ТОГДА 4
ИНАЧЕ -1
КОНЕЦ КАК РезультатЗавершения,
ВЫБОР
КОГДА КешИнформацииОбОбъектах.СостояниеКонтроля = ЗНАЧЕНИЕ(Перечисление.СостоянияКонтроля.НаКонтроле)
ТОГДА ВЫБОР
КОГДА КешИнформацииОбОбъектах.СрокИсполнения = ДАТАВРЕМЯ(1, 1, 1)
ИЛИ КешИнформацииОбОбъектах.СрокИсполнения >= &ТекущаяДата
ТОГДА 1
ИНАЧЕ 3
КОНЕЦ
КОГДА КешИнформацииОбОбъектах.СостояниеКонтроля = ЗНАЧЕНИЕ(Перечисление.СостоянияКонтроля.СнятсКонтроля)
ТОГДА 4
КОГДА КешИнформацииОбОбъектах.СостояниеКонтроля = ЗНАЧЕНИЕ(Перечисление.СостоянияКонтроля.НаКонтролеНесколько)
ТОГДА ВЫБОР
КОГДА КешИнформацииОбОбъектах.СрокИсполнения = ДАТАВРЕМЯ(1, 1, 1)
ИЛИ КешИнформацииОбОбъектах.СрокИсполнения >= &ТекущаяДата
ТОГДА 5
КОГДА КешИнформацииОбОбъектах.СрокИсполненияОбщий = ДАТАВРЕМЯ(1, 1, 1)
ИЛИ КешИнформацииОбОбъектах.СрокИсполненияОбщий >= &ТекущаяДата
ТОГДА 8
ИНАЧЕ 6
КОНЕЦ
КОГДА КешИнформацииОбОбъектах.СостояниеКонтроля = ЗНАЧЕНИЕ(Перечисление.СостоянияКонтроля.СнятсКонтроляНесколько)
ТОГДА 7
КОГДА КешИнформацииОбОбъектах.СостояниеКонтроля = ЗНАЧЕНИЕ(Перечисление.СостоянияКонтроля.СмешанноНесколько)
ТОГДА ВЫБОР
КОГДА КешИнформацииОбОбъектах.СрокИсполнения = ДАТАВРЕМЯ(1, 1, 1)
ИЛИ КешИнформацииОбОбъектах.СрокИсполнения >= &ТекущаяДата
ТОГДА 9
ИНАЧЕ 10
КОНЕЦ
ИНАЧЕ 0
КОНЕЦ КАК СостояниеКонтроля,
ВЫБОР
КОГДА ЗадачаИсполнителя.ТекущийИсполнитель = &ТекущийПользователь
ТОГДА -1
КОГДА МоиРоли.РольИсполнителя ЕСТЬ NULL
ТОГДА 3
ИНАЧЕ 4
КОНЕЦ КАК Картинка,
ЗадачаИсполнителя.ДатаИсполнения КАК ДатаИсполнения,
ЗадачиДляВыполнения.СостояниеВыполнения КАК СостояниеВыполнения,
ПредметыЗадач.Предмет КАК Предмет,
ЕСТЬNULL(ПредметыЗадач.Предмет, &СтрокаБезПредмета) КАК ПредметЗаголовок,
ВЫБОР
КОГДА ЗадачиСПодзадачами.Задача ЕСТЬ NULL
ТОГДА ЛОЖЬ
ИНАЧЕ ИСТИНА
КОНЕЦ КАК ЕстьПодзадачи,
ПредметыЗадач.Предмет.ДатаРегистрации КАК ДатаРегистрации
ИЗ
Задача.ЗадачаИсполнителя КАК ЗадачаИсполнителя
ЛЕВОЕ СОЕДИНЕНИЕ Задача.ЗадачаИсполнителя.Предметы КАК ПредметыЗадач
ПО (ЗадачаИсполнителя.Ссылка = ПредметыЗадач.Ссылка)
И (ПредметыЗадач.РольПредмета = ЗНАЧЕНИЕ(Перечисление.РолиПредметов.Основной))
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФлагиОбъектов КАК ФлагиОбъектов
ПО (ЗадачаИсполнителя.Ссылка = ФлагиОбъектов.Объект)
И (ФлагиОбъектов.Пользователь = &ТекущийПользователь)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РезультатыВыполненияПроцессовИЗадач КАК РезультатыВыполненияПроцессовИЗадач
ПО (ЗадачаИсполнителя.Ссылка = РезультатыВыполненияПроцессовИЗадач.Объект)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КешИнформацииОбОбъектах КАК КешИнформацииОбОбъектах
ПО (ЗадачаИсполнителя.Ссылка = КешИнформацииОбОбъектах.Объект)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗадачиДляВыполнения КАК ЗадачиДляВыполнения
ПО (ЗадачаИсполнителя.Ссылка = ЗадачиДляВыполнения.Задача)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ИсполнителиЗадач КАК МоиРоли
ПО (ЗадачаИсполнителя.ТекущийИсполнитель = МоиРоли.РольИсполнителя)
И (МоиРоли.Исполнитель = &ТекущийПользователь)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗадачиСПодзадачами КАК ЗадачиСПодзадачами
ПО (ЗадачаИсполнителя.Ссылка = ЗадачиСПодзадачами.Задача)
ГДЕ
ЗадачаИсполнителя.СостояниеБизнесПроцесса = ЗНАЧЕНИЕ(Перечисление.СостоянияБизнесПроцессов.Активен)
И ЕСТЬNULL(ЗадачиДляВыполнения.СостояниеВыполнения, НЕОПРЕДЕЛЕНО) <> ЗНАЧЕНИЕ(Перечисление.СостоянияЗадачДляВыполнения.ГотоваКВыполнению)
И НЕ ЗадачаИсполнителя.ПометкаУдаления
И НЕ ЗадачаИсполнителя.ИсключенаИзПроцесса
И ИСТИНА В
(ВЫБРАТЬ ПЕРВЫЕ 1
ИСТИНА
ИЗ
РегистрСведений.ИсполнителиРолейИДелегаты КАК ИсполнителиРолейИДелегаты
ГДЕ
ИсполнителиРолейИДелегаты.РольПользователь = ЗадачаИсполнителя.ТекущийИсполнитель
И ИсполнителиРолейИДелегаты.ИсполнительДелегат = &ТекущийПользователь
И ИсполнителиРолейИДелегаты.ИмяОбластиДелегирования В ("", "ПроцессыИЗадачи"))
{ГДЕ
(ЗадачаИсполнителя.Выполнена = &Выполнена) КАК Поле2,
(ЗадачаИсполнителя.СрокИсполнения < &ДатаДляОтображенияПросроченных
И ЗадачаИсполнителя.СрокИсполнения > ДАТАВРЕМЯ(1, 1, 1)) КАК Поле4,
(КОНЕЦПЕРИОДА(ПредметыЗадач.Предмет.ДатаРегистрации, ДЕНЬ) = КОНЕЦПЕРИОДА(&ДатаРегистрации, ДЕНЬ)) КАК Поле6,
(ЗадачаИсполнителя.ПринятаКИсполнению = &ОтображатьСтарыеЗадачи) КАК Поле8}
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
ЗадачаИсполнителя.Ссылка,
ЗадачаИсполнителя.Дата,
ЗадачаИсполнителя.БизнесПроцесс,
ЗадачаИсполнителя.ТочкаМаршрута,
ЗадачаИсполнителя.Наименование,
ЗадачаИсполнителя.Выполнена,
ЗадачаИсполнителя.СрокИсполнения,
ВЫБОР
КОГДА НЕ &ИспользоватьДатуИВремяВСрокахЗадач
И ЗадачаИсполнителя.СрокИсполнения <> ДАТАВРЕМЯ(1, 1, 1)
ТОГДА КОНЕЦПЕРИОДА(ЗадачаИсполнителя.СрокИсполнения, ДЕНЬ)
ИНАЧЕ ЗадачаИсполнителя.СрокИсполнения
КОНЕЦ,
ЗадачаИсполнителя.ПредметСтрокой,
ЗадачаИсполнителя.Автор,
ЗадачаИсполнителя.ПринятаКИсполнению,
ВЫБОР
КОГДА ЗадачаИсполнителя.Важность = ЗНАЧЕНИЕ(Перечисление.ВариантыВажностиЗадачи.Низкая)
ТОГДА 0
КОГДА ЗадачаИсполнителя.Важность = ЗНАЧЕНИЕ(Перечисление.ВариантыВажностиЗадачи.Высокая)
ТОГДА 2
ИНАЧЕ 1
КОНЕЦ,
ВЫБОР
КОГДА ЗадачаИсполнителя.Проект = ЗНАЧЕНИЕ(Справочник.Проекты.ПустаяСсылка)
ТОГДА &ИмяГруппыБезПроекта
ИНАЧЕ ЗадачаИсполнителя.Проект
КОНЕЦ,
ЕСТЬNULL(ФлагиОбъектов.Флаг, ЗНАЧЕНИЕ(Перечисление.ФлагиОбъектов.ПустаяСсылка)),
ВЫБОР
КОГДА ФлагиОбъектов.Флаг = ЗНАЧЕНИЕ(Перечисление.ФлагиОбъектов.Красный)
ТОГДА 1
КОГДА ФлагиОбъектов.Флаг = ЗНАЧЕНИЕ(Перечисление.ФлагиОбъектов.Синий)
ТОГДА 2
КОГДА ФлагиОбъектов.Флаг = ЗНАЧЕНИЕ(Перечисление.ФлагиОбъектов.Желтый)
ТОГДА 3
КОГДА ФлагиОбъектов.Флаг = ЗНАЧЕНИЕ(Перечисление.ФлагиОбъектов.Зеленый)
ТОГДА 4
КОГДА ФлагиОбъектов.Флаг = ЗНАЧЕНИЕ(Перечисление.ФлагиОбъектов.Оранжевый)
ТОГДА 5
КОГДА ФлагиОбъектов.Флаг = ЗНАЧЕНИЕ(Перечисление.ФлагиОбъектов.Лиловый)
ТОГДА 6
ИНАЧЕ 0
КОНЕЦ,
ЗадачаИсполнителя.Исполнитель,
ВЫБОР
КОГДА ЗадачиДляВыполнения.СостояниеВыполнения = ЗНАЧЕНИЕ(Перечисление.СостоянияЗадачДляВыполнения.ВыполнениеОтменено)
ТОГДА 9
КОГДА РезультатыВыполненияПроцессовИЗадач.Результат = ЗНАЧЕНИЕ(Перечисление.ВариантыВыполненияПроцессовИЗадач.Положительно)
ТОГДА 7
КОГДА РезультатыВыполненияПроцессовИЗадач.Результат = ЗНАЧЕНИЕ(Перечисление.ВариантыВыполненияПроцессовИЗадач.ПоложительноСЗамечаниями)
ТОГДА 6
КОГДА РезультатыВыполненияПроцессовИЗадач.Результат = ЗНАЧЕНИЕ(Перечисление.ВариантыВыполненияПроцессовИЗадач.Отрицательно)
ТОГДА 5
КОГДА ЗадачаИсполнителя.Выполнена = ИСТИНА
ТОГДА 4
ИНАЧЕ -1
КОНЕЦ,
ВЫБОР
КОГДА КешИнформацииОбОбъектах.СостояниеКонтроля = ЗНАЧЕНИЕ(Перечисление.СостоянияКонтроля.НаКонтроле)
ТОГДА ВЫБОР
КОГДА КешИнформацииОбОбъектах.СрокИсполнения = ДАТАВРЕМЯ(1, 1, 1)
ИЛИ КешИнформацииОбОбъектах.СрокИсполнения >= &ТекущаяДата
ТОГДА 1
ИНАЧЕ 3
КОНЕЦ
КОГДА КешИнформацииОбОбъектах.СостояниеКонтроля = ЗНАЧЕНИЕ(Перечисление.СостоянияКонтроля.СнятсКонтроля)
ТОГДА 4
КОГДА КешИнформацииОбОбъектах.СостояниеКонтроля = ЗНАЧЕНИЕ(Перечисление.СостоянияКонтроля.НаКонтролеНесколько)
ТОГДА ВЫБОР
КОГДА КешИнформацииОбОбъектах.СрокИсполнения = ДАТАВРЕМЯ(1, 1, 1)
ИЛИ КешИнформацииОбОбъектах.СрокИсполнения >= &ТекущаяДата
ТОГДА 5
КОГДА КешИнформацииОбОбъектах.СрокИсполненияОбщий = ДАТАВРЕМЯ(1, 1, 1)
ИЛИ КешИнформацииОбОбъектах.СрокИсполненияОбщий >= &ТекущаяДата
ТОГДА 8
ИНАЧЕ 6
КОНЕЦ
КОГДА КешИнформацииОбОбъектах.СостояниеКонтроля = ЗНАЧЕНИЕ(Перечисление.СостоянияКонтроля.СнятсКонтроляНесколько)
ТОГДА 7
КОГДА КешИнформацииОбОбъектах.СостояниеКонтроля = ЗНАЧЕНИЕ(Перечисление.СостоянияКонтроля.СмешанноНесколько)
ТОГДА ВЫБОР
КОГДА КешИнформацииОбОбъектах.СрокИсполнения = ДАТАВРЕМЯ(1, 1, 1)
ИЛИ КешИнформацииОбОбъектах.СрокИсполнения >= &ТекущаяДата
ТОГДА 9
ИНАЧЕ 10
КОНЕЦ
ИНАЧЕ 0
КОНЕЦ,
ВЫБОР
КОГДА ЗадачаИсполнителя.ТекущийИсполнитель = &ТекущийПользователь
ТОГДА -1
КОГДА МоиРоли.РольИсполнителя ЕСТЬ NULL
ТОГДА 3
ИНАЧЕ 4
КОНЕЦ,
ЗадачаИсполнителя.ДатаИсполнения,
ЗадачиДляВыполнения.СостояниеВыполнения,
ПредметыЗадач.Предмет,
ЕСТЬNULL(ПредметыЗадач.Предмет, &СтрокаБезПредмета),
ВЫБОР
КОГДА ЗадачиСПодзадачами.Задача ЕСТЬ NULL
ТОГДА ЛОЖЬ
ИНАЧЕ ИСТИНА
КОНЕЦ,
ПредметыЗадач.Предмет.ДатаРегистрации
ИЗ
Задача.ЗадачаИсполнителя КАК ЗадачаИсполнителя
ЛЕВОЕ СОЕДИНЕНИЕ Задача.ЗадачаИсполнителя.Предметы КАК ПредметыЗадач
ПО (ЗадачаИсполнителя.Ссылка = ПредметыЗадач.Ссылка)
И (ПредметыЗадач.РольПредмета = ЗНАЧЕНИЕ(Перечисление.РолиПредметов.Основной))
И (ПредметыЗадач.Предмет Ссылка Справочник.ВнутренниеДокументы)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФлагиОбъектов КАК ФлагиОбъектов
ПО (ЗадачаИсполнителя.Ссылка = ФлагиОбъектов.Объект)
И (ФлагиОбъектов.Пользователь = &ТекущийПользователь)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РезультатыВыполненияПроцессовИЗадач КАК РезультатыВыполненияПроцессовИЗадач
ПО (ЗадачаИсполнителя.Ссылка = РезультатыВыполненияПроцессовИЗадач.Объект)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КешИнформацииОбОбъектах КАК КешИнформацииОбОбъектах
ПО (ЗадачаИсполнителя.Ссылка = КешИнформацииОбОбъектах.Объект)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗадачиДляВыполнения КАК ЗадачиДляВыполнения
ПО (ЗадачаИсполнителя.Ссылка = ЗадачиДляВыполнения.Задача)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ИсполнителиЗадач КАК МоиРоли
ПО (ЗадачаИсполнителя.ТекущийИсполнитель = МоиРоли.РольИсполнителя)
И (МоиРоли.Исполнитель = &ТекущийПользователь)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗадачиСПодзадачами КАК ЗадачиСПодзадачами
ПО (ЗадачаИсполнителя.Ссылка = ЗадачиСПодзадачами.Задача)
ГДЕ
ЗадачаИсполнителя.СостояниеБизнесПроцесса = ЗНАЧЕНИЕ(Перечисление.СостоянияБизнесПроцессов.Активен)
И ЕСТЬNULL(ЗадачиДляВыполнения.СостояниеВыполнения, НЕОПРЕДЕЛЕНО) <> ЗНАЧЕНИЕ(Перечисление.СостоянияЗадачДляВыполнения.ГотоваКВыполнению)
И НЕ ЗадачаИсполнителя.ПометкаУдаления
И НЕ ЗадачаИсполнителя.ИсключенаИзПроцесса
И ПредметыЗадач.Предмет ССЫЛКА Справочник.ВнутренниеДокументы
И ИСТИНА В
(ВЫБРАТЬ ПЕРВЫЕ 1
ИСТИНА
ИЗ
РегистрСведений.ИсполнителиРолейИДелегаты КАК ИсполнителиРолейИДелегаты
ГДЕ
ИсполнителиРолейИДелегаты.РольПользователь = ЗадачаИсполнителя.ТекущийИсполнитель
И ИсполнителиРолейИДелегаты.ИсполнительДелегат = &ТекущийПользователь
И ИсполнителиРолейИДелегаты.ИмяОбластиДелегирования В ("", "ПроцессыИЗадачиКассовыеДокументы"))
И ВЫРАЗИТЬ(ПредметыЗадач.Предмет КАК Справочник.ВнутренниеДокументы) В
(ВЫБРАТЬ
ПредметыКассовыхДокументов.Предмет
ИЗ
ВТ_ПредметыКассовыхДокументов КАК ПредметыКассовыхДокументов)
{ГДЕ
(ЗадачаИсполнителя.Выполнена = &Выполнена) КАК Поле2,
(ЗадачаИсполнителя.СрокИсполнения < &ДатаДляОтображенияПросроченных
И ЗадачаИсполнителя.СрокИсполнения > ДАТАВРЕМЯ(1, 1, 1)) КАК Поле4,
(КОНЕЦПЕРИОДА(ПредметыЗадач.Предмет.ДатаРегистрации, ДЕНЬ) = КОНЕЦПЕРИОДА(&ДатаРегистрации, ДЕНЬ)) КАК Поле6,
(ЗадачаИсполнителя.ПринятаКИсполнению = &ОтображатьСтарыеЗадачи) КАК Поле8}Editor is loading...