Настройка динамического фильтра
Чтобы настроить динамический фильтр, необходимо создать хранимый фильтр определенного класса элементов и заполнить данные на странице настройки соответствий с фильтром в структуре привязки.
Если динамический фильтр будет работать в привязке типа «Фильтр», то хранимый фильтр настраивается для любого класса.
Если динамический фильтр будет работать в привязке типов «Список», «Дерево» или «BAND», то хранимый фильтр настраивается для класса, к которому принадлежит параметр объекта привязки.
Если динамический фильтр будет работать в привязке типа «Секция», то хранимый фильтр настраивается для класса вышележащей привязки. Если секция корневая – для любого класса.
В поле «Название условия фильтра» вводится название условия сложного фильтра, по которому настраивается соответствие. Для фильтров, не содержащих дополнительных условий это поле можно оставить пустым. В поле «Параметр класса» нужно выбрать параметр, значение которого будет подставляться в условие фильтра. В поле «Параметр фильтра» выбирается тот параметр, на который наложено условие фильтра в хранимом фильтре.
Описание использования зарезервированных слов [Объект] и [ГруппаФильтра] дано на странице настройки соответствий фильтра (Рис. 11.4.44).
Внимание: Нельзя использовать в отчете один и тот же фильтр с разной настройкой соответствий. В этом случае соответствия в фильтре могут объединяться, и результат отчета будет получен неверный.
Например, отчет «Положение о подразделении» настроен для класса «Субъекты». Список субъектов в нем получается с помощью фильтра «Субъекты-подразделения». В отчете требуется получить число ставок по каждому субъекту. Для этого создана привязка «Всего ставок», её тип «фильтр», класс объекта привязки – «Субъекты».
Рис. 11.4.44
С помощью кнопки «Создать фильтр с учетом класса привязки» производится создание нового фильтра для данной привязки.
По кнопке «Открыть свойства хранимого фильтра» можно просмотреть свойства выбранного фильтра.
Пример. Использование зарезервированных слов в динамическом фильтре
Используемый в отчете «Положение о подразделении в привязке «Действия» хранимый фильтр «Запрос по классу: Субъекты-Нижележащие» настроен для класса «Субъекты» (класс показан в поле «Путь» на странице настройки сложной привязки фильтра).
В условии фильтра задано, что параметр «guid» должен быть не пустым (Рис. 11.4.45).
Рис. 11.4.45
При выполнении отчета в это поле будет подставляться guid Субъекта, от которого вызвали отчет. На странице настройки соответствий фильтра задано два соответствия: первое – объект, от которого вызвали отчет (обозначен словом [Объект]), подставляется в группу фильтра (обозначена словом [Группа фильтра]); второе – идентификатор объекта, от которого вызвали отчет (слово [Объект].guid) должен быть равен идентификатору элемента фильтра (guid). На Рис. 11.4.44 показана страница настройки данного фильтра.
Пример. Вывод сервисных настроек с помощью фильтра
В отчете с помощью привязки «фильтр» можно вывести параметры Сервисных настроек. Например, в отчете «Значения показателя за период» выводится значения дат параметра «Тип периода» (пункт Главного меню «Сервис –> Настройки пользователя», гиперссылка Дополнительно).
Рис. 11.4.46
В контекстном меню привязки «Период» выбрать пункт «Редактировать основное условие фильтра» для просмотра условия фильтра. На закладке Условия задано условие выбора текущего пользователя, Значение параметра «Пользователь» равно константе [База.Пользователь]. Подробнее о подстановке констант в условия фильтра см. п. «Использование системных констант в фильтре» в разделе 10.1.
Рис. 11.4.47
На закладке «Показ» отмечены для показа параметры «Дата начала периода», «Дата конца периода».
Привязка «Период» настроена как BAND по фильтру «Интервал дат для отчета по целям», список соответствий пуст. На странице свойств привязки «Период» настроены дополнительные привязки по параметрам, выбранным на закладке «Показ» в фильтре.
В шаблоне отчета привязки вставлены по их системным названиям: «BND_Период_Начало» и «BND_Период_Окончание». Их можно увидеть в окне «Вставить привязку» на закладке «Поля».
Рис. 11.4.48
При выполнении отчета от любого показателя, в этот отчёт будут выводиться даты начала и окончания «Типа периода». Например, в параметре «Тип периода» выбрано «За это полугодие».
Рис. 11.4.49
Опция «Группировать»
Опция «Группировать» используется в дополнительных привязках типа «Объект». Причем привязка-владелец должна иметь тип: «Список», «Фильтр» или «Дерево».
Опция «Группировать» служит для группировки строк списка по значениям какого-либо параметра. Другими словами, список будет объединен в группы по выбранному параметру. Группировка может быть включена одновременно для нескольких дополнительных привязок.
Возможны два вида группировки:
1) BAND – дополнительная привязка преобразуется в бэнд, то есть выносится за пределы таблицы;
2) Таблица – группировка внутри таблицы, то есть объединяются ячейки таблицы по дополнительной привязке.
Тип группировки BAND
Тип дополнительной привязки, для которой установлен тип группировки «BAND», автоматически преобразуется из типа «Объект» в тип «BAND». При этом параметром дополнительной привязки-бэнда останется параметр, ранее выбранный в привязке «Объект».
Списком для выполнения бэнда будет являться список вариантов значений параметра.
Для привязки-владельца типа «Список» («Фильтр», «Дерево») дополнительные привязки служат для вывода параметров списка в табличной форме. Если для дополнительной привязки списка включена группировка бэндом, то этот параметр списка будет выводиться вне таблицы как отдельное поле.
Оставшиеся дополнительные привязки списка будут выводиться в табличной форме внутри бэнда. Тип группировки «BAND» можно включить одновременно для нескольких параметров списка. Такая группировка называется линейной. Количество колонок списка уменьшается на число дополнительных привязок с группировкой бэндом. Вставить бэнд в таблицу нельзя.
В шаблоне отчета в окне «Вставка привязки» название дополнительной привязки с группировкой выбирается на закладке «Поле». Это название будет составным:
«BND_<СистемноеНазваниеБэнда>_<НазваниеГруппы>», где системное название бэнда и название группы – это одно и то же системное название дополнительной привязки с группировкой. Таким образом, название поля в шаблоне может выглядеть, например, так: «BND_Группировка_Группировка».
Название привязки-владельца для списка выбирается на закладке «Список/Дерево/Фильтр». Оно также будет составным:
«BND_<СистемноеНазваниеБэнда>_<СистемноеНазваниеПривязкиВладельцаСписка>».
Пример. Группировка BAND
Пример дополнительной привязки с группировкой BAND можно видеть в отчете объектов «Должностная инструкция» (демонстрационная база данных). Системное название привязки: «ВыпДействия».
Рис. 11.4.50
Перейдите на страницу настройки сложной привязки (пункт контекстного меню «Настройка привязки»). Тип привязки: «Фильтр». Путь: «Процессы» − это фильтр недекомпозированных процессов, у которых Субъект является исполнителем.
Рис. 11.4.51
Для вывода в отчете значений параметров списка созданы дополнительные привязки.
Для привязки «Родитель процесса» установлен тип группировки «BAND». При этом тип дополнительной привязки автоматически изменен на тип BAND. Для этой дополнительной привязки обязательно вводится системное название в колонке «Название». В данном случае системное название «родитель».
Откройте шаблон отчета и нажмите кнопку «Вставить привязку». В окне «Вставка привязки» на закладке «Секции/Бэнды» выберите привязку бэнда – «BND_родитель» и нажмите кнопку «Перейти». Курсор будет установлен на начало бэнда.
На закладке «Список/Дерево/Фильтр» находится привязка «Список» − «BND_родитель_ВыпДействия». Это привязка-владелец для дополнительной привязки «родитель». В название привязки-владельца вставлено название привязки-бэнда. Список будет выводиться внутри бэнда.
Рис. 11.4.52
В структуре привязки «список» есть четыре дополнительных привязки, но для вывода списка создана таблица, состоящая из трех колонок. Дополнительная привязка «родитель», по которой установлена группировка типа «BAND», будет выводиться в отдельном поле. Название этой привязки выбирается на закладке «Поле». В название привязки вставлено название бэнда.
Рис. 11.4.53
Тип группировки «Таблица»
Дополнительная привязка, для которой установлен тип группировки «Таблица», объединяет остальные дополнительные привязки в группы. По дополнительной привязке, для которой установлен тип группировки «Таблица», устанавливается сортировка «По возрастанию». При необходимости вид сортировки можно изменить. Количество колонок в таблице соответствует общему количеству привязок в списке, включая привязки, по которым установлена группировка.
Группировка таблицей может быть линейной, то есть одновременно по нескольким параметрам списка. Группировка может быть многомерной (или вложенной). Если у объекта привязки, для которого включена группировка, есть параметр «список», то для любого параметра этого списка, в свою очередь, можно включить группировку Таблицей.
В шаблоне отчета название привязки для списка выбирается в окне «Вставка привязки» на закладке «Список/Дерево/Фильтр» в виде: «<СистемноеНазваниеПривязкиСписка>».
Пример. Группировка таблицей
Пример дополнительной привязки с группировкой Таблицей можно видеть в отчете объектов «Регламент процесса IDEF0» (демонстрационная база данных). Системное название привязки: «Выходы» в секции «Взаимодействие».
Перейдите на страницу настройки сложной привязки. Тип привязки: «Список». Путь: «Процессы.Связи процесса по стрелкам». Для привязки настроен фильтр.
Для вывода в отчете значений параметров списка созданы дополнительные привязки.
Рис. 11.4.54
Для привязки-объекта «Стрелка» установлен тип группировки «Таблица». Дублирующие ячейки в колонке этой привязки будут объединены. Для дополнительной привязки-списка «Объекты» установлен тип группировки «Таблица», а на странице настройки данного списка установлен дополнительный параметр «Текст». Строки вложенного списка «Объекты» будут объединены в одну ячейку.
Откройте шаблон отчета и нажмите кнопку «Вставить привязку». В окне «Вставка привязки» на закладке «Список/Дерево/Фильтр» находится привязка-список «Выходы». Количество колонок равно количеству дополнительных привязок списка.
Рис. 11.4.55
При выполнении отчета «Регламент процесса IDEF0» от процесса «А4.2 Реализация проекта» будет получена таблица с объединением дублирующих ячеек в колонке «Выход» и объединением строк вложенного списка в колонке «Объекты».
Рис. 11.4.56
Генерация шаблона отчета
При автоматической генерации шаблона отчета привязки вставляются с определенным стилем. При необходимости эти стили можно изменить.
Основные шаблоны отчетов в формате Word «NormalByte.dot» и в формате Excel «NormalByte.xlt» находятся в справочнике «Файловые шаблоны». Открывается справочник из пункта меню «Справочники –> Все справочники». Справочник виден при нажатой кнопке «Показывать все».
С помощью гиперссылки Редактировать файл шаблон открывается на редактирование. Можно изменить стили или добавить собственные. Окно форматирования стилей вызывается пунктом меню «Формат –> Стили и форматирование». Чтобы добавить собственные стили, необходимо выбрать пункт меню «Сервис –> Шаблоны и надстройки», нажать кнопку «Организатор». Откроется окно Организатора. На закладке «Стили» открыть файл с созданными ранее стилями и копировать их в шаблон.
Внимание:Название стиля должно быть системным.
Внимание: При добавлении собственных стилей необходимо изменить названия в параметре «Стили шаблона, используемые при генерации».
«Стили шаблона, используемые при генерации» задаются в Системных настройках для всех пользователей в соответствующем параметре (пункт Главного меню «Сервис –> Настройки для всех пользователей», гиперссылка Дополнительно). В окне задаются названия стилей MS Word, которые будут использоваться при генерации шаблона. Стили должны быть заведены в файловом шаблоне NormalByte.dot. При необходимости можно не выводить титульный лист с названием отчета при генерации, отключив в этом окне опцию «Добавлять титульный лист».
Свойства отчета
Работа со свойствами отчета предназначена для продвинутых пользователей Business Studio. По умолчанию права на вызов свойств отчета отключены. Для вызова свойств необходимо дать права на выполнение действия Редактирование объекта в справочнике «Отчеты объектов» (см. п. 15.8.2 «Категории прав»). Тогда Свойства отчета можно вызвать с помощью гиперссылки Редактирование объекта в окне списка «Отчеты объектов» – для динамических отчетов. В Навигаторе объектов для статических отчетов окно свойств открывается выбором пункта контекстного меню «Свойства (Ctrl+E)» для выделенного отчета.