Рассмотрим пример создания отчета "Процессы без владельцев".
Для понимания этой статьи требуется знание того:
Информация, изложенная ниже, не дает пошаговых инструкций по нажатию кнопок в Business Studio, а дает логику размышлений по решению поставленной задачи с указанием необходимых параметров настройки фильтров и отчетов.
Необходимо создать отчет формата MS Word. В отчете должен выводиться список процессов, у которых нет владельцев. Типами процессов "Действие", "Решение" и "Ссылка" необходимо пренебречь.
По заданными условиям нельзя получить информацию напрямую из одного справочника. Для решения задачи необходимо выбирать данные из имеющихся справочников. Задачи выборки данных решаются через использование в отчетах хранимых фильтров. Сначала необходимо создать фильтр, а потом использовать его при создании привязки в отчете.
Ключевым вопросом при решении задачи является создание правильных условий фильтра.
Для отбора "владельцев процесса" будем рассматривать такие связи субъекта с процессом, у которых тип категории = "Владелец".
Данные о связях процессов и субъектов с такой категорией представлены при помощи:
Список "Владельцы процесса" является результатом выполнения фильтра по справочнику "Связи субъекта с процессом" – в списке отображаются только связи с категорией "Владелец". Для того чтобы не делать лишних действий, необходимо рассматривать список "Владельцы процесса". Фильтр будет создаваться по классу "Процессы".
При детальном рассмотрении задачи можно сформулировать 3 подзадачи по формированию условий:
Согласно указанной ранее логике в фильтре выставляются условия, приведенные ниже.
Параметр | Тип | Оператор | Значение | Не | Потомки |
---|---|---|---|---|---|
Владельцы процесса | Подфильтр | = | + | ||
- guid | Значение | = | + | ||
Тип процесса | Список значений | = | Папка, Внешняя ссылка, Служебный, Действие, Решение, Ссылка | + |
Пояснение по параметру "Владельцы процесса". Для параметра "Владельцы процесса" (тип параметра – "Список") необходимо указать, что субъекты в нем не заданы. Для этого:
Различные условия в параметрах списка "Владельцы процесса" означали бы условия в уже имеющихся связях процесса с субъектами.
На показ будут выводиться названия процессов.
Показывать | Параметр |
---|---|
+ | Название |
Для того, чтобы данные показывались в порядке кодов, необходимо в сортировку перенести параметр "Иерархический код для сортировки".
Параметр | Направление |
---|---|
Иерархический код для сортировки | По возрастанию |
Сохраняем фильтр с названием "Процессы без владельцев". Место сохранения – "Пользовательские фильтры".
Так как отчет будет создаваться для всех процессов и не зависит от объекта, от которого он будет вызван, то логичным будет создание статического отчета. Создаем статический отчет с названием "Процессы без субъектов" и переходим к его редактированию в Мастере отчетов.
Тип привязки в отчете определяет то, откуда именно будут браться данные (источник данных) для вставки в выполняемый отчет, и как будут выглядеть вставленные данные в отчете (см. Руководство пользователя → Типы привязок и работа с ними).
Исходя из того, что наши данные получаются из фильтра и по условиям задачи должны выглядеть как список (таблица), определяем тип привязки – "Фильтр". В качестве конкретного фильтра выбирается ранее созданный и сохраненный фильтр "Процессы без единого субъекта".
В окне Настройка сложной привязки к данным выполняем:
В шаблоне отчета вносим необходимые изменения в оформление, сохраняем и выполняем отчет.
Пример одного из возможных результатов выполнения отчета "Процессы без владельцев" приведен на Рис. 3.
Для того, чтобы быть уверенным в правильности всех выполненных шагов, рекомендуется создать объекты для тестирования: хотя бы один процесс, который известен заранее и попадет в искомую группу поиска, должен быть без субъектов с типом связи "является владельцем" (категория типа связи "Владелец").