Различия

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

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

ru:creating_user_reports:examples:parent_top [2013/10/17 11:27]
127.0.0.1 внешнее изменение
ru:creating_user_reports:examples:parent_top [2017/11/08 15:16] (текущий)
Строка 1: Строка 1:
 ====== Родитель верхнего уровня ====== ====== Родитель верхнего уровня ======
 + 
 +Рассмотрим пример создания отчета "Родитель верхнего уровня".
  
-Пример создания отчета "Родитель верхнего уровня". +Для понимания этой статьи требуется знание того
- +  * как создавать, настраивать и сохранять фильтры (см. [[/ru/manual/manual]] -> [[/ru/manual/filter]]), 
-Для понимания этой статьи требуется, чтобы читатель знал+  * как создавать динамические и статические отчеты, добавлять в них привязки (см. [[/ru/manual/manual]] -> [[/ru/manual/report]]), 
-  * как создавать, настраивать и сохранять фильтры (см. раздел [[/ru/manual/filter]]), +  * как находить параметры справочников и связи между справочниками в **Объектной модели** (см. [[/ru/manual/manual]] -> [[/ru/manual/report/object_model]]).
-  * как создавать динамические и статические отчеты, добавлять в них привязки (см. раздел [[/ru/manual/report]]), +
-  * как находить параметры справочников и связи между справочника в Объектной модели (см. раздел [[/ru/manual/report/object_model]]).+
  
 Информация, изложенная ниже, не дает пошаговых инструкций по нажатию кнопок в программе, а дает логику размышлений по решению поставленной задачи с указанием необходимых параметров настройки фильтров и отчетов. Информация, изложенная ниже, не дает пошаговых инструкций по нажатию кнопок в программе, а дает логику размышлений по решению поставленной задачи с указанием необходимых параметров настройки фильтров и отчетов.
 +
 ===== Постановка задачи ===== ===== Постановка задачи =====
  
-Необходимо создать отчет формата Word, который может вызываться от любого процесса. В отчете должна показываться фраза по шаблону:+Необходимо создать отчет формата MS Word, который может вызываться от любого процесса. В отчете должна выводиться предложение, которое будет формироваться по шаблону:
  
-<code> +<code>
 Процесс "<Название процесса, от которого выполняется отчет>" входит в ветку "<Название процесса -- ключевого родителя ветки>". Процесс "<Название процесса, от которого выполняется отчет>" входит в ветку "<Название процесса -- ключевого родителя ветки>".
 </code> </code>
  
-Под ключевым родителем ветки понимается процесс вида А1, А2, …, Аn. Т.е. это процессы, находящиеся на диаграмме А0.+Под ключевым родителем ветки понимается процесс вида А1, А2, …, Аn. Т.е. это процесс, находящийся на диаграмме А0.
  
 ===== Идея решения задачи ===== ===== Идея решения задачи =====
  
-Тип привязки в отчете определяет то, откуда именно будут браться данные (источник данных) для вставки в выполняемый отчет и как будут выглядеть вставленные данные в отчете (см. [[ru/manual/report/types_anchor]]). И как видно из заданного шаблона, в отчет необходимо вставить данные 2х привязок.+Тип привязки в отчете определяет то, откуда именно будут браться данные (источник данных) для вставки в выполняемый отчет и как будут выглядеть вставленные данные в отчете (см. [[/ru/manual/manual]] -> [[ru/manual/report/types_anchor]]). Как видно из заданного шаблона предложения, в отчет необходимо вставить данные двух привязок.
  
   - <Название процесса, от которого выполняется отчет> - привязка типа "Объект" по параметру "Название". Наиболее частая и первая привязка во всех динамических отчетах.   - <Название процесса, от которого выполняется отчет> - привязка типа "Объект" по параметру "Название". Наиболее частая и первая привязка во всех динамических отчетах.
-  - <Название процесса -- ключевого родителя ветки> - привязка типа "BAND" по списку "Список родителей процесса" с наложенным фильтром.+  - <Название процесса -- ключевого родителя ветки> - привязка типа "BAND" по списку "Список родителей процесса" с фильтром.
  
-**Пояснение к выбору привязки по ключевому родителю.** Ключевой родитель ветки -- это процесс, стоящий выше по ветке процесса, от которого вызывается отчет. Список всех процессов выше выбранного можно получить через нехранимый параметр типа список "Список родителей процесса".+**Пояснение к выбору привязки по ключевому родителю.** Ключевой родитель ветки -- это процесс, стоящий выше по ветке процесса, от которого вызывается отчет. Список всех процессоввыше выбранногоможно получить через нехранимый параметр "Список родителей процесса" типа "Список".
  
-Так как из списка родителей необходимо отобрать только одного родителя и подать это не в виде списка, а в виде отдельного значения, то необходимо выбрать привязку типа "BAND".+Так как из списка родителей необходимо отобрать только одного родителяи представить эти данные не в виде списка, а в виде отдельного значения, то необходимо выбрать привязку типа "BAND".
  
-Наложение фильтра на выбранную привязку оставит в списке только один процесс -- ключевой родитель.+Добавление фильтра к выбранной привязке оставит в списке только один процесс -- ключевой родитель.
  
 ===== Создание отчета ===== ===== Создание отчета =====
  
-В Мастере отчетов создается отчет по процессу. В шаблоне отчета создается текст по шаблону задачи. Оставляется место, необходимое для последующей вставки привязок.+В **Мастере отчетов** создается отчет по процессу. В шаблоне отчета создается текст по заданному ранее формату (шаблону). Оставляется место, необходимое для последующей вставки привязок.
  
 ==== Добавление первой привязки ==== ==== Добавление первой привязки ====
Строка 42: Строка 43:
 ==== Добавление второй привязки ==== ==== Добавление второй привязки ====
  
-В место, где необходимо вставить название родителя, производится вставка привязки типа "BAND" по параметру "Список родителей процесса". В настройках сложной в качестве выбранного параметра для вывода выбираем "Название".+В место, где необходимо вставить название родителя, производится вставка привязки типа "BAND" по параметру "Список родителей процесса". В настройках сложной привязки в качестве выбранного параметра для вывода выбираем "Название".
  
-[{{ ru:creating_user_reports:examples:parent_top:pic1.png?nolink | Рисунок 1. Вид настройки сложной привязки по привязке типа BAND (без наложения фильтра).}}] +[{{ ru:creating_user_reports:examples:parent_top:pic1.png?nolink | Рисунок 1. Вид настройки сложной привязки по привязке типа BAND (без добавления фильтра)}}] 
  
 ==== Редактирование шаблона ==== ==== Редактирование шаблона ====
Строка 50: Строка 51:
 После добавления привязки в шаблон отчета и компоновки закладок привязки, шаблон отчета будет иметь вид, приведенный ниже. После добавления привязки в шаблон отчета и компоновки закладок привязки, шаблон отчета будет иметь вид, приведенный ниже.
  
-[{{ ru:creating_user_reports:examples:parent_top:pic2.png?nolink | Рисунок 2. Вид шаблона отчета.}}]  +[{{ ru:creating_user_reports:examples:parent_top:pic2.png?nolink | Рисунок 2. Вид шаблона отчета}}]
-==== Наложение фильтра на вторую привязку ====+
  
-В привязке типа "BAND" осталось произвести фильтрацию  так, чтобы список содержал только 1 процесс из списка всех родителей-процессов. Ключевым параметром, значения которого являются неповторимыми для процессов одной ветки, является параметр "Уровень в модели". Для процессов вида А1, А2, …, Аn -- значение этого параметра равно 1.+==== Добавление фильтра ко второй привязке ====
  
-В окне "Привязки отчетовчерез контекстное меню привязки типа "BAND" создаем и сохраняем фильтр по параметру класса с названием "Родитель процесса.Уровень=1" в папке "Пользовательские фильтры". В основном условии фильтра задаются необходимые условия.+В привязке типа "BAND" осталось произвести фильтрацию так, чтобы список содержал только 1 процесс из списка всех родителей-процессов. Ключевым параметром, значения которого являются неповторимыми для процессов одной ветки, является параметр "Уровень в модели". Для процессов вида А1, А2, …, Аn -- значение этого параметра равно 1. 
 + 
 +В окне **Привязки отчетов** через контекстное меню привязки типа "BAND" создаем и сохраняем фильтр по параметру класса с названием "Родитель процесса.Уровень=1" в папке "Пользовательские фильтры". В основном условии фильтра задаются необходимые условия.
 <startTableBox> <startTableBox>
 ^ Параметр ^ Тип ^ Оператор ^ Значение ^ Не ^ Потомки ^ ^ Параметр ^ Тип ^ Оператор ^ Значение ^ Не ^ Потомки ^
Строка 62: Строка 64:
 <endTableBox| Таблица 1. Условия фильтра> <endTableBox| Таблица 1. Условия фильтра>
  
-**Пояснение к параметру "Тип процесса"**. Так как этот параметр является хранимым, то это условие по нему позволит сократить время выполнения фильтра, а следовательно и отчета. При этом предполагается, что все процессы этого уровня будут с типом IDEF0.+**Пояснение к параметру "Тип процесса"**. Так как этот параметр является хранимым, то это условие по нему позволит сократить время выполнения фильтра, а следовательнои время выполнения отчета. При этом предполагается, что все процессы этого уровня будут с типом IDEF0. 
 + 
 +[{{ ru:creating_user_reports:examples:parent_top:pic3.png?nolink | Рисунок 3. Вид привязки типа "BAND" с настроенным фильтром}}] 
  
-[{{ ru:creating_user_reports:examples:parent_top:pic3.png?nolink | Рисунок 3. Вид привязки типа "BAND" с наложенным фильтром.}}]  
 ==== Сохранение отчета ==== ==== Сохранение отчета ====
  
Строка 71: Строка 74:
 ===== Результат ===== ===== Результат =====
  
-[{{ ru:creating_user_reports:examples:parent_top:pic4.png?nolink | Рисунок 4. Один из возможных вариантов выполнения отчета "Родитель первого уровня".}}] +Пример одного из возможных результатов выполнения отчета "Родитель первого уровня" приведен на Рис. 4. 
 + 
 +[{{ ru:creating_user_reports:examples:parent_top:pic4.png?nolink | Рисунок 4. Пример выполнения отчета "Родитель первого уровня"}}]  
 + 
 + 
 + 
 + 
 + 
 +[<contextnavigator>] 
 + 
Актуальные новости, публикации и практики для бизнес-архитекторов и аналитиков
Driven by DokuWiki