Различия

Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.

Ссылка на это сравнение

ru:manual:report:types_anchor:anchor_data_filter_settings [2020/09/18 15:25]
192.168.1.155 [Пример. Использование зарезервированных слов в динамическом условии]
ru:manual:report:types_anchor:anchor_data_filter_settings [2023/03/16 12:20] (текущий)
Строка 1: Строка 1:
 ====== Настройка фильтра данных привязки ====== ====== Настройка фильтра данных привязки ======
 + 
 Параметр типа "Фильтр" может использоваться в привязках типа "Список", "Дерево", "BAND", "Фильтр". С его помощью можно отфильтровать список объектов этих привязок так, чтобы в отчет выводились только нужные объекты. В привязках типа "Секция" фильтр используется как условие показа секции. Параметр типа "Фильтр" может использоваться в привязках типа "Список", "Дерево", "BAND", "Фильтр". С его помощью можно отфильтровать список объектов этих привязок так, чтобы в отчет выводились только нужные объекты. В привязках типа "Секция" фильтр используется как условие показа секции.
  
-Фильтром в структуре привязки служит фильтр, который рекомендуется настроить заранее, до настройки привязки. Фильтры создаются в справочнике "Хранимые фильтры" ({{bslink>Главное меню → Отчеты → Хранимые фильтры|ShowRibbonPageOrItem?c639ba43-ff15-4caf-ab36-0d938fe0a7a3;5f301d3f-d375-43a1-86d9-995ca3615998:Item}}). Для фильтра привязки можно использовать любой доступный вид фильтра (см. [[ru/manual/filter/stored_filter]]).+Фильтром в структуре привязки служит фильтр, который рекомендуется настроить заранее, до настройки привязки. Фильтры создаются в справочнике "Фильтры" ({{bslink>Главное меню → Отчеты → Фильтры|ShowRibbonPageOrItem?c639ba43-ff15-4caf-ab36-0d938fe0a7a3;5f301d3f-d375-43a1-86d9-995ca3615998:Item}}). Для фильтра привязки можно использовать любой доступный вид фильтра (см. [[ru/manual/filter/stored_filter]]).
  
 Условия фильтра могут быть статическими или динамическими. Поле "Значение" статического условия предопределено заранее при создании фильтра и не меняется во время формирования отчета. В динамическое условие в поле "Значение" можно передавать значения параметров объекта, от которого вызван отчет. Таким образом, в зависимости от выбора объекта в отчете будет получен тот или иной результат фильтра. В одном фильтре можно использовать одновременно статические и динамические условия. Условия фильтра могут быть статическими или динамическими. Поле "Значение" статического условия предопределено заранее при создании фильтра и не меняется во время формирования отчета. В динамическое условие в поле "Значение" можно передавать значения параметров объекта, от которого вызван отчет. Таким образом, в зависимости от выбора объекта в отчете будет получен тот или иной результат фильтра. В одном фильтре можно использовать одновременно статические и динамические условия.
  
 ==  == ==  ==
-**Внимание!** В случае, если требуется использовать в пользовательских отчетах фильтры из поставляемых с Business Studio отчетов (такая ситуация возникает, например, если пользовательский отчет создавался копированием отчета, поставляемого с Business Studio) рекомендуется делать копии этих фильтров, перемещать эти копии за пределы папки "Фильтры отчетов\СТУ" (например, в папку "Пользовательские фильтры"), назначить для соответствующих привязок отчета эти копии вместо поставляемых с Business Studio фильтров и работать в дальнейшем с копиями фильтров. Разработчик Business Studio оставляет за собой право перезаписывать фильтры при обновлении программы.+**Внимание!** В случае, если требуется использовать в пользовательских отчетах фильтры из поставляемых с Business Studio отчетов (такая ситуация возникает, например, если пользовательский отчет создавался копированием отчета, поставляемого с Business Studio) рекомендуется делать копии этих фильтров, перемещать эти копии за пределы папки "Фильтры по умолчанию" (например, в папку "Пользовательские фильтры"), назначить для соответствующих привязок отчета эти копии вместо поставляемых с Business Studio фильтров и работать в дальнейшем с копиями фильтров. Разработчик Business Studio оставляет за собой право перезаписывать фильтры при обновлении программы
 + 
 +Подробнее об этом см. в [[ru/manual/administration/change_and_use_default_data]].
 ==== ==== ==== ====
  
Строка 28: Строка 30:
 Рассмотрим работу статического условия на примере отчета по физическим лицам, создание которого описано в статье [[ru/manual/report/types_anchor/type_filter#пример_фильтр_по_справочнику_физические_лица|Пример. Фильтр по справочнику "Физические лица"]]. В этом отчете у привязки "Список физических лиц" есть четыре дополнительных привязки. Последняя привязка "Все контакты" обеспечивает вывод в отчете список всех контактов физического лица. Данная привязка имеет тип "Объект". Этой же цели можно добиться, выведя в отчет с помощью привязки типа "Список" список "Контакты" физического лица. На этот список можно будет наложить условие, например, должны выводиться только рабочие телефоны. Рассмотрим работу статического условия на примере отчета по физическим лицам, создание которого описано в статье [[ru/manual/report/types_anchor/type_filter#пример_фильтр_по_справочнику_физические_лица|Пример. Фильтр по справочнику "Физические лица"]]. В этом отчете у привязки "Список физических лиц" есть четыре дополнительных привязки. Последняя привязка "Все контакты" обеспечивает вывод в отчете список всех контактов физического лица. Данная привязка имеет тип "Объект". Этой же цели можно добиться, выведя в отчет с помощью привязки типа "Список" список "Контакты" физического лица. На этот список можно будет наложить условие, например, должны выводиться только рабочие телефоны.
  
-Откройте справочник фильтров (**Главное меню -> Отчеты -> Хранимые фильтры**). Нажмите на кнопку {{common/icons/06.png?nolink}} панели инструментов **Окна справочника**. Выберите класс "Контакты физлиц" (Элементы списков -> БизнесМодель.КонтактыФизЛиц). В окне названия нового фильтра введите, например, "Фильтр списка контактов". В **Окне фильтра** на вкладке **Условия** для параметра "Тип контакта" выберите значение "Рабочий телефон" (Рис. 1). Сохраните фильтр. В параметре "Вид результата" выберите значение "Форма справочника". Сохраните фильтр. Подробнее о создании фильтров описано в главе [[ru/manual/filter/stored_filter]].+Откройте справочник фильтров (**Главное меню -> Отчеты -> Фильтры**). Нажмите на кнопку {{common/icons/06.png?nolink}} панели инструментов **Окна справочника**. Выберите класс "Контакты физлиц" (Строки списков -> БизнесМодель.КонтактыФизЛиц). В окне названия нового фильтра введите, например, "Фильтр списка контактов". В **Окне фильтра** на вкладке **Условия** для параметра "Тип контакта" выберите значение "Рабочий телефон" (Рис. 1). Сохраните фильтр. В параметре "Вид результата" выберите значение "Форма справочника". Сохраните фильтр. Подробнее о создании фильтров описано в главе [[ru/manual/filter/stored_filter]].
  
  
Строка 41: Строка 43:
  
  
-[{{ ru/manual/report/types_anchor/anchor_data_filter_settings/autot_anchor_data_filter_settings0002.png?nolink |Рисунок 2. Страница настройки сложной привязки со статическим условием}}]+[{{ ru/manual/report/types_anchor/anchor_data_filter_settings/autot_anchor_data_filter_settings0002.png?nolink |Рисунок 2. Страница настройки сложной привязки со статическим условием }}]
  
 Добавить эти привязки можно либо нажав на кнопку **Добавить**, либо нажав на кнопку {{common/right.png?nolink}} в дереве **Параметры объекта**, либо перетащив мышью нужный параметр. Добавить эти привязки можно либо нажав на кнопку **Добавить**, либо нажав на кнопку {{common/right.png?nolink}} в дереве **Параметры объекта**, либо перетащив мышью нужный параметр.
Строка 59: Строка 61:
 ===== Динамическое условие ===== ===== Динамическое условие =====
  
-Чтобы настроить динамическое условие, необходимо на странице **Настройка фильтра данных привязки** заполнить данные в блоке **Подстановка значений**.+Чтобы настроить динамическое условие, необходимо на странице **Настройка фильтра данных привязки** заполнить данные в блоке **Соответствия фильтра**.
  
 Описание назначения каждой из колонок этого блока можно посмотреть во всплывающих подсказках к заголовкам колонок (Рис. 5). Описание назначения каждой из колонок этого блока можно посмотреть во всплывающих подсказках к заголовкам колонок (Рис. 5).
  
 [{{ ru/manual/report/types_anchor/anchor_data_filter_settings/autot_anchor_data_filter_settings0005.png?nolink |Рисунок 5. Страница настройки фильтра}}] [{{ ru/manual/report/types_anchor/anchor_data_filter_settings/autot_anchor_data_filter_settings0005.png?nolink |Рисунок 5. Страница настройки фильтра}}]
 +
 +В случае задания в ячейках колонок "Параметр-источник" и "Параметр фильтра" параметров типа "Целое" для ячейки колонки "Параметр фильтра" доступен вызов команды контекстного меню "Задать смещение" В появляющемся по этой команде окне можно задать положительную или отрицательную величину, на которую будет изменено значение параметра из ячейки колонки "Параметр-источник" перед ее подстановкой в "Параметр фильтра".
  
 ==  == ==  ==
-**Внимание!** Нельзя использовать в отчетах один и тот же фильтр с разными настройками в блоке **Подстановка значений**. В этом случае настройки в фильтре могут объединяться, и результат выполнения отчета будет неверным.+**Внимание!** Нельзя использовать в отчетах один и тот же фильтр с разными настройками в блоке **Соответствия фильтра**. В этом случае настройки в фильтре могут объединяться, и результат выполнения отчета будет неверным.
 ==== ==== ==== ====
 \\ \\
 С помощью кнопки **Создать фильтр с учетом класса привязки** {{common/icons/06.png?nolink}} производится создание нового фильтра для данной привязки. С помощью кнопки **Создать фильтр с учетом класса привязки** {{common/icons/06.png?nolink}} производится создание нового фильтра для данной привязки.
  
-С помощью кнопки **Открыть свойства хранимого фильтра** {{common/icons/05.png?nolink}} можно просмотреть свойства выбранного фильтра.+С помощью кнопки **Открыть свойства фильтра** {{common/icons/05.png?nolink}} можно просмотреть свойства выбранного фильтра.
  
-===== Пример. Использование зарезервированных слов в динамическом условии =====+===== Пример. Подстановка объекта отчета в условие фильтра в динамическом условии =====
  
-В отчете "Должностная инструкция" в привязке "Возглавляемые подразделения" используется фильтр "Субъекты-Подразделения,где должность явл-ся руководителем", настроенный для справочника "Субъекты". Этот справочник показан в параметре "Класс" в **Окне свойств** фильтра, вызываемом нажатием на кнопку **Открыть свойства хранимого фильтра** {{common/icons/05.png?nolink}} на странице настройки фильтра привязки. +В отчете "Должностная инструкция" в привязке "Headed departments" используется фильтр "Оргединицы - Подразделения,где должность явл-ся руководителем", настроенный для справочника "Оргединицы". Этот класс показан в параметре "Класс" в **Окне свойств** фильтра, вызываемом нажатием на кнопку **Открыть свойства фильтра** {{common/icons/05.png?nolink}} на странице настройки фильтра привязки. 
  
 В условии фильтра задано, что значение параметра "Параметры должности. Руководитель подразделения" должно быть пустым (Рис. 6). В условии фильтра задано, что значение параметра "Параметры должности. Руководитель подразделения" должно быть пустым (Рис. 6).
 +  
 +При выполнении отчета в это поле будет подставляться объект справочника "Оргединицы", от которого вызвали отчет. На странице **Настройка фильтра данных привязки** (см. Рис.5) задана следующая подстановка: объект, от которого вызвали отчет (в параметре "Источник данных" выбрано значение "Объект отчета"), подставляется в качестве значения параметра "Параметры должности. Руководитель подразделения" фильтра, наложенного на текущую привязку.
 + 
 +[{{ ru/manual/report/types_anchor/anchor_data_filter_settings/autot_anchor_data_filter_settings0006.png?nolink |Рисунок 6. Задание условия для параметра "Параметры должности. Руководитель подразделения"}}]
  
-При выполнении отчета в это поле будет подставляться объект справочника "Субъекты", от которого вызвали отчет. На странице **Настройка фильтра данных привязки** (см. Рис.5) задана следующая подстановка: объект, от которого вызвали отчет (в параметре "Источник данных" выбрано значение "Объект отчета"), подставляется в качестве значения параметра "Параметры должности. Руководитель подразделения" (обозначен системным названием ПараметрыПодразделения.Руководитель, генерируемым автоматически при выборе параметра в данном поле по кнопке {{common/3dot.png?nolink}}) фильтра, наложенного на текущую привязку.+===== Пример. Подстановка строк списка в условие фильтра с типом фильтрации Список значений =====
  
 +В отчете "Положение о подразделении" в привязке "Activities performed by department employees" используется фильтр "Связи оргединицы с единицей деятельности - не внешние ссылки, исполнители, статусы + условие по родителям + сортировка по иерархическому коду", настроенный для справочника "Связи оргединицы с единицей деятельности". Этот справочник показан в параметре "Класс" в **Окне свойств** фильтра, вызываемом нажатием на кнопку **Открыть свойства фильтра** {{common/icons/05.png?nolink}} на странице настройки фильтра привязки. 
  
-[{{ ru/manual/report/types_anchor/anchor_data_filter_settings/autot_anchor_data_filter_settings0006.png?nolink |Рисунок 6. Задание условия для параметра "guid"}}]+В условии фильтра задано, что значение параметра "Единица деятельности.Все предки с объектом.guid" должно быть пустым (Рис. 7), причем для данной строки применяется тип фильтрации "Список значений". 
 + 
 +[{{ ru/manual/report/types_anchor/anchor_data_filter_settings/autot_anchor_data_filter_settings0007.png?nolink |Рисунок 7. Задание условия на список значений для параметра "Единица деятельности.Все предки с объектом.guid"}}]  
 +  
 +При выполнении отчета в это поле будут подставляться значения параметра "Единица деятельности.guid" списка "Все единицы деятельности (категории типа связи "Исполнитель" и "Прочий участник")" объекта, от которого вызвали отчет.  
 + 
 +На странице **Настройка фильтра данных привязки** (см. Рис.5) задана соответствующая подстановка.
  
 ===== Пример. Вывод сервисных настроек с помощью фильтра ===== ===== Пример. Вывод сервисных настроек с помощью фильтра =====
Строка 91: Строка 106:
  
  
-[{{ ru/manual/report/types_anchor/anchor_data_filter_settings/change_anchor_data_filter_settings0007.png?nolink |Рисунок 7. Переход к основному условию фильтра}}]+[{{ ru/manual/report/types_anchor/anchor_data_filter_settings/change_anchor_data_filter_settings0007.png?nolink |Рисунок 8. Переход к основному условию фильтра}}]
  
 На вкладке **Условия** задано условие выбора текущего пользователя. Значение параметра "Пользователь" равно константе [База.ПользовательОб]. Подробнее о подстановке констант в условия фильтра описано в статье [[ru/manual/filter/filter_element#использование_системных_констант_в_фильтре|Использование системных констант в фильтре]].  На вкладке **Условия** задано условие выбора текущего пользователя. Значение параметра "Пользователь" равно константе [База.ПользовательОб]. Подробнее о подстановке констант в условия фильтра описано в статье [[ru/manual/filter/filter_element#использование_системных_констант_в_фильтре|Использование системных констант в фильтре]]. 
  
  
-[{{ ru/manual/report/types_anchor/anchor_data_filter_settings/autot_anchor_data_filter_settings0008.png?nolink |Рисунок 8. Условие, заданное для параметра "Пользователь"}}]+[{{ ru/manual/report/types_anchor/anchor_data_filter_settings/autot_anchor_data_filter_settings0008.png?nolink |Рисунок 9. Условие, заданное для параметра "Пользователь"}}]
  
 На вкладке **Показ** отмечены для показа параметры "Дата начала периода", "Дата конца периода". На вкладке **Показ** отмечены для показа параметры "Дата начала периода", "Дата конца периода".
Строка 105: Строка 120:
  
  
-[{{ ru/manual/report/types_anchor/anchor_data_filter_settings/lang_anchor_data_filter_settings0009.png?nolink |Рисунок 9. Теги привязки "Период"}}]+[{{ ru/manual/report/types_anchor/anchor_data_filter_settings/lang_anchor_data_filter_settings0009.png?nolink |Рисунок 10. Теги привязки "Период"}}]
  
 При выполнении отчета от любого показателя в этот отчёт будут выводиться даты начала и окончания параметра "Рабочий период". При выполнении отчета от любого показателя в этот отчёт будут выводиться даты начала и окончания параметра "Рабочий период".
  
  
-[{{ ru/manual/report/types_anchor/anchor_data_filter_settings/lang_anchor_data_filter_settings0010.png?nolink |Рисунок 10. Результат выполнения отчета с привязкой "Период"}}]+[{{ ru/manual/report/types_anchor/anchor_data_filter_settings/lang_anchor_data_filter_settings0010.png?nolink |Рисунок 11. Результат выполнения отчета с привязкой "Период"}}]
  
  
Строка 118: Строка 133:
 [<contextnavigator>] [<contextnavigator>]
  
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
  
 +{(rater>id=ru_manual_report_types_anchor_anchor_data_filter_settings|name=Настройка фильтра данных привязки|type=vote|trace=ip|headline=off)}
Driven by DokuWiki