|
Не получается вывести иерархический список группируя по куратору | ☑ | ||
---|---|---|---|---|
0
pele
08.08.12
✎
13:30
|
Функция ПолучитьДанные(Куратор,Исполнитель)
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ЗадачиПроектов.Наименование, | ВЫБОР | КОГДА ЗадачиПроектов.Стадия = ЗНАЧЕНИЕ(Перечисление.СтадииЗадач.Выполнена) | ТОГДА ЗадачаИсполнителя.Выполнена | ИНАЧЕ ЗадачаИсполнителя.ПринятаКИсполнению | КОНЕЦ КАК Стадия, | ЗадачиПроектов.ОписаниеЗадачи, | ЗадачиПроектов.ДатаОкончания, | ЗадачиПроектов.ОписаниеРезультата, | ЗадачиПроектов.Исполнитель КАК Исполнитель, | ЗадачиПроектов.Ссылка, | ВЫБОР | КОГДА ЗадачиПроектов.Куратор = ЗадачиПроектов.Исполнитель | ТОГДА &ОтборПоКуратору | ИНАЧЕ &ОтборПоИсполнителю | КОНЕЦ КАК Автор |ИЗ | Справочник.ЗадачиПроектов КАК ЗадачиПроектов | ЛЕВОЕ СОЕДИНЕНИЕ Задача.ЗадачаИсполнителя КАК ЗадачаИсполнителя | ПО ЗадачиПроектов.Ссылка = ЗадачаИсполнителя.Ссылка |ГДЕ | (ЗадачиПроектов.Куратор = &ОтборПоКуратору | ИЛИ ЗадачиПроектов.Исполнитель = &ОтборПоИсполнителю) | И ЗадачиПроектов.Стадия <> ЗНАЧЕНИЕ(Перечисление.СтадииЗадач.Выполнена) | И ЗадачиПроектов.Стадия <> ЗНАЧЕНИЕ(Перечисление.СтадииЗадач.Проверена) | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | ЗадачаИсполнителя.Наименование, | ЗадачаИсполнителя.Выполнена, | ЗадачаИсполнителя.Описание, | ЗадачаИсполнителя.ДатаИсполнения, | ЗадачаИсполнителя.РезультатВыполнения, | ЗадачаИсполнителя.Исполнитель, | ЗадачаИсполнителя.Ссылка, | ВЫБОР | КОГДА ЗадачаИсполнителя.Автор = ЗадачаИсполнителя.Исполнитель | ТОГДА &ОтборПоКуратору | ИНАЧЕ &ОтборПоИсполнителю | КОНЕЦ |ИЗ | Задача.ЗадачаИсполнителя КАК ЗадачаИсполнителя |ГДЕ | (ЗадачаИсполнителя.Автор = &ОтборПоКуратору | ИЛИ ЗадачаИсполнителя.Исполнитель = &ОтборПоИсполнителю)"; Запрос.УстановитьПараметр("ОтборПоКуратору",Куратор); Запрос.УстановитьПараметр("ОтборПоИсполнителю",Исполнитель); Результат = Запрос.Выполнить(); тзРезультат = Результат.Выгрузить(); ДеревоЗначений = Новый ДеревоЗначений; ДеревоЗначений.Колонки.Добавить("Куратор"); ДеревоЗначений.Колонки.Добавить("Исполнитель"); ДеревоЗначений.Колонки.Добавить("Наименование"); ДеревоЗначений.Колонки.Добавить("ДатаОкончания"); ДеревоЗначений.Колонки.Добавить("Стадия"); Для Каждого СтрокаТаблицыЗначений из тзРезультат Цикл Куратор = СтрокаТаблицыЗначений.Автор; Если ДеревоЗначений.Строки.Найти(Куратор)= Неопределено Тогда СтрокаПервогоУровня = ДеревоЗначений.Строки.Добавить(); СтрокаПервогоУровня.Куратор = СтрокаТаблицыЗначений.Автор; КонецЕсли; СтрокаВторогоУровня = СтрокаПервогоУровня.Строки.Добавить(); СтрокаВторогоУровня.Наименование = СтрокаТаблицыЗначений.Наименование; СтрокаВторогоУровня.ДатаОкончания = СтрокаТаблицыЗначений.ДатаОкончания; СтрокаВторогоУровня.Стадия = СтрокаТаблицыЗначений.Стадия; КонецЦикла; КонецФункции |
|||
1
Wobland
08.08.12
✎
13:30
|
информацию принял
|
|||
2
Wobland
08.08.12
✎
13:31
|
даю справку: запрос иногда можно выгрузить в дерево
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |