Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.
ru:manual:report:examples:activities_without_org_units [2022/06/14 15:44] 127.0.0.1 внешнее изменение |
— (текущий) | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== Единицы деятельности без оргединиц ====== | ||
- | Рассмотрим пример создания отчета "Единицы деятельности без оргединиц". | ||
- | |||
- | Для понимания этой статьи требуется знание того: | ||
- | * как создавать, настраивать и сохранять фильтры (см. [[/ru/manual/manual]] -> [[/ru/manual/filter]]); | ||
- | * как создавать шаблоны отчетов, добавлять в них привязки (см. [[/ru/manual/manual]] -> [[/ru/manual/report]]); | ||
- | * как находить параметры справочников и связи между справочниками в **Объектной модели** ({{bslink>Главное меню → Отчеты → Объектная модель|ShowRibbonPageOrItem?c639ba43-ff15-4caf-ab36-0d938fe0a7a3;730e73fb-b31c-4f50-b9d6-49d7c04fee67:Item}}) (см. [[/ru/manual/manual]] -> [[/ru/manual/object_model/object_model_main_principles]]). | ||
- | |||
- | Информация, изложенная ниже, не дает пошаговых инструкций по нажатию кнопок в Business Studio, а дает логику размышлений по решению поставленной задачи с указанием необходимых параметров настройки фильтров и отчетов. | ||
- | |||
- | ===== Постановка задачи ===== | ||
- | |||
- | Необходимо создать отчет формата MS Word. В отчете должен выводиться список единиц деятельности, за которые никто не отвечает. Т.е. единицы деятельности, у которых на вкладке **Оргединицы** (**Окно свойств** единицы деятельности -> вкладка {{bslink>Оргединицы|ShowOnForm?a14299f2-18ea-4c7f-aa99-4efad0c49e5c;p=d98de927-385d-449b-be62-8b390edf9a9d,o=Param}}) нет связей с оргединицами. | ||
- | |||
- | ===== Идея решения задачи ===== | ||
- | |||
- | По заданным условиям нельзя получить информацию напрямую из одного справочника. Для решения задачи необходимо выбирать данные из имеющихся справочников. Задачи выборки данных решаются через использование в отчетах фильтров. Сначала необходимо создать фильтр, а потом использовать его при создании привязки в отчете. | ||
- | |||
- | Ключевым вопросом при решении задачи является создание правильных условий фильтра. | ||
- | |||
- | ===== Создание фильтра ===== | ||
- | |||
- | ==== Справочник для построения фильтра ==== | ||
- | |||
- | В **Окне свойств** единицы деятельности можно увидеть наличие или отсутствия связи с оргединицей на вкладке **Оргединицы**. Эта вкладка представляет данные по параметру типа "Список" в справочнике "Деятельность". Поэтому задавать условия выборки единиц деятельности необходимо в фильтре по справочнику "Деятельность". | ||
- | |||
- | == == | ||
- | **Внимание!** В справочнике **Деятельность** нехранимый параметр типа список **Оргединицы** ссылается на справочник "Связи оргединицы с единицей деятельности" ({{bslink>Главное меню → Отчеты → Объектная модель|ShowRibbonPageOrItem?c639ba43-ff15-4caf-ab36-0d938fe0a7a3;730e73fb-b31c-4f50-b9d6-49d7c04fee67:Item}} -> **Самостоятельные объекты** -> **Связь** -> **БизнесМодель.СвязиПроцессов**). Именно в этом справочнике хранится информация о всех связях оргединиц с единицами деятельности. Но этот справочник показывает лишь то, какие связи есть, и не фиксирует отсутствующие связи. Поэтому использовать данный справочник для решения поставленной задачи не представляется возможным. | ||
- | ==== ==== | ||
- | |||
- | ==== Вкладка "Условия" ==== | ||
- | |||
- | При детальном рассмотрении задачи, можно сформулировать 2 подзадачи по формированию условий фильтра: | ||
- | |||
- | - Условия, отбирающие единицы деятельности без связей с оргединицами: не должно быть никаких строк с оргединицами на вкладке **Оргединицы**. | ||
- | - Технические условия, которые отберут только принятые в рабочей практике единицы деятельности: с типами, отличными от используемых в работе типов (папка, внешняя ссылка, служебный). | ||
- | |||
- | Согласно указанной ранее логике в фильтре выставляются условия, приведенные ниже. | ||
- | <startTableBox> | ||
- | ^ Параметр ^ Тип ^ Оператор ^ Значение ^ Не ^ Потомки ^ | ||
- | | Оргединицы | Подфильтр | = | | + | | | ||
- | | - Оргединица | Значение | = | | + | | | ||
- | | Тип | Список значений | = | Папка, Внешняя ссылка, Служебный | + | | | ||
- | <endTableBox| Таблица 1. Условия фильтра> | ||
- | |||
- | **Пояснение по параметру "Оргединицы".** В параметре "Оргединицы" (тип параметра – "Список") необходимо указать, что оргединиц в нем нет. Для этого: | ||
- | - Указывается, что у параметра "Оргединицы" есть непустое значение по объектному параметру "Оргединицы". Т.е. указываем на то, что какая-либо связь с орргедницей есть. | ||
- | - На уровне параметра "Оргединицы" делается отрицание заданного выше условия. Т.е. отрицание того, что у единицы деятельности есть связь с оргединицей. | ||
- | |||
- | ==== Вкладка "Показ" ==== | ||
- | |||
- | |||
- | |||
- | На показ будут выводиться названия единиц деятельности. | ||
- | <startTableBox> | ||
- | ^ Показывать ^ Параметр ^ | ||
- | | + | Название | | ||
- | <endTableBox| Таблица 2. Настройка отображения параметров для показа> | ||
- | |||
- | Для того чтобы данные были отсортированы по коду единиц деятельности, необходимо в добавить сортировку по параметру "Иерархический код для сортировки". | ||
- | <startTableBox> | ||
- | ^ Параметр ^ Направление ^ | ||
- | | Иерархический код для сортировки | По возрастанию | | ||
- | <endTableBox| Таблица 3. Настройка сортировки списка по параметру "Иерархический код для сортировки"> | ||
- | |||
- | ==== Сохранение фильтра ==== | ||
- | |||
- | Сохраняем фильтр с названием "Единицы деятельности без единой оргединицы". Место сохранения - папка "Пользовательские фильтры". | ||
- | |||
- | ===== Создание отчета ===== | ||
- | |||
- | Так как отчет будет создаваться для всех единиц деятельности и не зависит от объекта, от которого он будет вызван, создаем шаблон отчета с типом "Шаблон отчета" (подробнее о типах отчета см. [[ru/manual/report/new_report/types_report|Типы отчетов]]) с названием "Единицы деятельности без оргединиц" и переходим к его редактированию в **Мастере отчетов**. | ||
- | |||
- | ==== Добавление привязки ==== | ||
- | |||
- | Тип привязки в отчете определяет то, откуда именно будут браться данные (источник данных) для вставки в выполняемый отчет, и как будут выглядеть вставленные данные в отчете (см. [[/ru/manual/manual]] -> [[ru/manual/report/types_anchor]]). | ||
- | |||
- | Исходя из того, что наши данные получаются из фильтра и по условиям задачи должны выглядеть как список (таблица), определяем тип привязки -- "Фильтр". В качестве конкретного фильтра выбирается ранее созданный и сохраненный фильтр "Единицы деятельности без единой оргединицы". | ||
- | |||
- | В окне **Настройка сложной привязки к данным** выполняем: | ||
- | * переименование привязки к параметру "Название" в привязку "Единица деятельности"; | ||
- | * добавление привязки типа "Нумератор" и перенос привязки типа "Нумератор" на первое место в списке привязок. | ||
- | |||
- | |||
- | [{{ ru/manual/report/examples/activities_without_org_units/activities_without_org_units_01.png?nolink | Рисунок 1. Вид окна **Настройка сложной привязки к данным** после всех необходимых настроек}}] | ||
- | |||
- | ==== Редактирование шаблона ==== | ||
- | |||
- | В шаблоне отчета вносим необходимые изменения в оформление, сохраняем и выполняем отчет. | ||
- | |||
- | [{{ ru/manual/report/examples/activities_without_org_units/activities_without_org_units_02.png?nolink | Рисунок 2. Вид привязки "Единицы деятельности без единой оргединицы" (тип "Фильтр") в шаблоне отчета}}] | ||
- | |||
- | ===== Результат ===== | ||
- | |||
- | Пример одного из возможных результатов выполнения отчета "Единицы деятельности без оргединиц" приведен на Рис. 3. | ||
- | |||
- | [{{ ru/manual/report/examples/activities_without_org_units/activities_without_org_units_03.png?nolink | Рисунок 3. Пример выполнения отчета "Единицы деятельности без оргединиц"}}] | ||
- | |||
- | ===== Рекомендация ===== | ||
- | |||
- | Для того чтобы быть уверенным в правильности всех выполненных шагов, рекомендуется создать объекты для тестирования: хотя бы одна единица деятельности должна быть без связей с оргединицами. | ||
- | |||
- | |||
- | [<contextnavigator>] | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | {(rater>id=ru_manual_report_examples_activities_without_org_units|name=Единицы деятельности без оргединиц|type=vote|trace=ip|img=:taggic.png|headline=off)} |