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