| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия |
| product:olap:request [30.05.2019 14:05] – mayn | product:olap:request [14.01.2025 08:15] (текущий) – [На основе запроса из другого OLAP-куба] ekaterina.menkhuzina |
|---|
| ====== Создание показателей на основе запроса ====== | ====== Создание показателей на основе запроса ====== |
| #недописаль | ===== Что такое показатель-запрос ===== |
| | Показатель -- это значение, которое будет отображаться в ячейке таблицы ([[product:reports:olap|в OLAP-отчёте]]), результат вычислений. |
| |
| | А показатель-запрос -- это **основа, начало всех вычислений в OLAP-кубе.** |
| |
| ===== Что такое показатель ===== | Именно этот показатель "собирает" все нужные числа (значения реквизитов-чисел) из: |
| Это значение, которое будет отображаться в ячейке таблицы, результат вычислений. | * справочников, |
| | * объектов |
| Показатель на основе запроса может быть сформирован из: | * или других OLAP-кубов. |
| * значений реквизитов справочников; | |
| * значений других OLAP-кубов; | |
| * значений реквизитов объектов. | |
| | |
| ===== Определение показателей и их типов ===== | |
| | |
| Показатель OLAP-куба на основе запроса -- массив (выборка) данных из значений числовых реквизитов справочников или пользовательских объектов системы, которые заданы в качестве источника запроса. | |
| | |
| Также источником запроса может являться другой OLAP-куб. | |
| | |
| <image shape="thumbnail">{{ :product:olap:olap_request_1.png?nolink |}}</image> | |
| <TEXT align="center">**Рисунок 1** -- Страница шаблона OLAP-куба</text> | |
| | |
| Показатели на основе запросов могут быть трех типов: | |
| - Показатель на основе запроса из справочника. | |
| - Показатель на основе запроса из объекта. | |
| - Показатель на основе запроса из другого OLAP-куба. | |
| |
| | {{ :product:olap:olap_illustration_2.png?nolink&850 |Возможные источники данных для показателя-запроса}} |
| |
| | * [[product/olap/about|На яблоках: как работает OLAP-куб]]. |
| | * [[product/olap/template|С рисунками на коленке: как создать новый OLAP-куб]]. |
| |
| ===== Создание показателей ===== | ===== Создание показателей ===== |
| |
| Чтобы создать новый показатель: | Чтобы создать новый показатель-запрос: |
| - зайдите в шаблон OLAP-куба (предварительно [[product/olap/template|его нужно создать]] и [[product/olap/new_metering|добавить измерение]]); | - зайдите в шаблон OLAP-куба (предварительно [[product/olap/template|его нужно создать]] и [[product/olap/new_metering|добавить измерения]]); |
| - в портлете "Показатели" -> ''Создать''; | - в блоке "Показатели" -> ''Создать''; \\ <image shape="thumbnail">{{ :product:olap:olap_request_1.png?nolink |Страница шаблона OLAP-куба}}</image> |
| - в портлете "Свойства показателя OLAP-куба" в поле "Тип показателя" должно стоять значение ''Запрос'' (выбрано по умолчанию). | - введите название показателя; |
| - при необходимости поставьте чек-бокс в поле "Свойства" -> ''Агрегация''((как правило при первичном сборе данных [[#агрегация|агрегация]] необходима)). | - в блоке "Свойства показателя OLAP-куба" в поле "Тип показателя" должно стоять значение ''Запрос'' (выбрано по умолчанию). |
| - в портлете "Настройки запроса" выберите Источник: ''Справочник'', ''OLAP-куб'' или ''Объект''. | - при необходимости поставьте чек-бокс в поле "[[#свойства|Свойства]]" -> ''Агрегация'' (как правило, при первичном сборе данных [[#агрегация|агрегация]] необходима). |
| | - в блоке "Настройки запроса" выберите Источник: ''Справочник'', ''OLAP-куб'' или ''Объект''. |
| |
| <callout type="primary" icon="true"> | <callout type="primary" icon="true"> |
| Выбор источника -- принципиальное решение для показателя типа "Запрос". В зависимости от этого выбора меняется функциональность и перечень доступных для выборки данных. | Выбор источника -- принципиальное решение для показателя типа "Запрос". В зависимости от этого выбора меняется функциональность и перечень доступных для выборки данных. |
| </callout> | </callout> |
| |
| <html> | |
| <!-- | |
| - в выпадающем меню тут же в поле "Источник" выберите нужный вам объект системы, из которого вы хотите вытащить данные для обработки; | |
| - в поле "Параметры": | |
| * ''Измерение OLAP-куба'' -- выбрать соответствующие измерения, которые [[product/olap/new_metering|были созданы ранее]]. Если в поле нет значения, значит, что измерение ещё не было создано и [[product/olap/new_metering|его нужно создать]]. Это название реквизита-классификатора в колонке ''Измерение источника''. | |
| * ''Дата OLAP-куба''... | |
| --> | |
| </html> | |
| |
| <tabs> | <tabs> |
| <TEXT align="center">**Рисунок 2A** -- Страница создания показателя из запроса</text> | <TEXT align="center">**Рисунок 2A** -- Страница создания показателя из запроса</text> |
| |
| - Введите название показателя. | - В поле ''Источник'' -- выберите из выпадающего меню выберите название справочника, который будет источником для запроса. |
| - В поле ''Источник'' выберите значение «Справочник» и из выпадающего меню выберите название справочника, который будет являться источником для запроса. | - В поле ''Реквизит'' -- выберите числовой реквизит или реквизит с типом «Дата», значения которого будут собираться в показателе. |
| - В поле ''Реквизит'' выберите числовой реквизит или реквизит с типом «Дата», значения которого будут собираться в показателе. | - В колонке ''Измерение OLAP-куба'' должны автоматически выбраться соответствующие измерения, которые были созданы на [[product/olap/new_metering|этапе создания измерений]]. |
| - В колонке ''Измерение OLAP-куба'' должны автоматически выбраться соответствующие измерения, которые были созданы на [[product/olap/new_metering|этапе создания измерений]]. Если какое-либо из полей оказалось пустым, то это означает, что измерение не было создано и его нужно создать -- название реквизита-классификатора, для которого не создано измерение указано в колонке ''Измерение источника''. | * Если какое-то из полей оказалось пустым, значит, измерение не было создано и [[product/olap/new_metering|его нужно создать]]. Название реквизита-классификатора, для которого не создано измерение указано в колонке ''Измерение источника''. |
| - В колонке ''Дата источника'' следует выбрать одну из дат объекта, к которому прикреплен справочник – источник для запроса данных в куб. | - В колонке ''Дата источника'' выберите дату записи справочника (значение «Системный») или один из типов дат объекта, к которому прикреплен справочник – источник для запроса данных в куб. Эта дата будет использоваться для измерения дат, на базе которых формируется куб: |
| - В колонке ''Дата OLAP-куба'' нужно уточнить тип даты OLAP-куба, используемой для расчета: | * ''Дата создания'' -- дата и время создания объекта |
| | * ''Плановая дата начала'' (объекта) |
| | * ''Плановая дата окончания'' (объекта) |
| | * ''Фактическая дата начала'' (объекта) |
| | * ''Фактическая дата окончания'' (объекта) |
| | * ''Дата начала базового плана'' -- дата и время начала для объекта из последнего сохраненного базового плана |
| | * ''Дата окончания базового плана'' -- дата и время окончания для объекта из последнего сохраненного базового плана |
| | * ''Системный'' -- дата записи справочника. Имеет более высокий приоритет при формировании выборки показателей в отчете, чем даты объектов. <callout type="warning" icon="true">Если OLAP-кубе есть хотя бы один показатель-запрос из справочника, в котором в параметре ''Дата источника'' выбрано значение ''Системный'', то выборка дат для данных OLAP-куба по конкретному объекту будет начинаться с самой ранней даты записи в справочниках, по которым созданы показатели-запросы в кубе. Все данные по показателям с ''Датой источника'' на базе дат объектов (перечисленных в пунктах выше), которые будут раньше, чем самая ранняя дата всех записей всех справочников объекта (добавленных в показатели куба), не попадут в выборку OLAP-куба (и отчетов).</callout> |
| | * <название реквизита-даты из реквизитов объекта> -- дата из пользовательского реквизита |
| | - В колонке ''Дата OLAP-куба'' выберите тип даты OLAP-куба, используемой для расчета: |
| * ''Дата(точный)'' -- используется для большинства ситуаций, когда из числового реквизита нужно просто взять значение на конкретную дату. | * ''Дата(точный)'' -- используется для большинства ситуаций, когда из числового реквизита нужно просто взять значение на конкретную дату. |
| * ''Дата(относительный)'' -- используется, когда необходимо получить последнее значение из числового реквизита, относительно даты ячейки таблицы OLAP-куба. Это нужно, как правило, для показателей-запросов из системных справочников. | * ''Дата(относительный)'' -- используется, когда необходимо получить последнее значение из числового реквизита, относительно даты ячейки таблицы OLAP-куба. \\ Используется для показателей-запросов из [[product:tables:admin:system_table|системных справочников]]. |
| - Сохраните показатель после указания всех перечисленных параметров. | - **Сохраните** показатель. |
| |
| </pane> | </pane> |
| |
| Показатель на основе запроса из уже созданного OLAP-куба использует данные показателя, созданного в OLAP-кубе -- источнике запроса. Такой формат показателя может использоваться тогда, когда в других OLAP-уже есть готовые показатели, необходимые для расчетов в создаваемом OLAP-кубе. | Показатель на основе запроса из уже созданного OLAP-куба использует данные показателя, созданного в OLAP-кубе -- источнике запроса. Такой формат показателя может использоваться тогда, когда в других OLAP-уже есть готовые показатели, необходимые для расчетов в создаваемом OLAP-кубе. |
| |
| Для создания показателя нажмите кнопку «Создать» в портлете «Показатели» (Рисунок 1). | |
| |
| После этого откроется страница создания показателя. | |
| |
| <image shape="thumbnail">{{ :product:olap:olap_request_4.png?nolink |}}</image> | <image shape="thumbnail">{{ :product:olap:olap_request_4.png?nolink |}}</image> |
| <TEXT align="center">**Рисунок 2B** -- Страница создания показателя на основе запроса из OLAP-куба</text> | <TEXT align="center">**Рисунок 2B** -- Страница создания показателя на основе запроса из OLAP-куба</text> |
| |
| Укажите параметры показателя: | 1. В поле ''Источник'' выберите название OLAP-куба, который будет являться источником для запроса. |
| - Введите название показателя. | |
| - В параметре ''Тип показателя'' выберите значение «Запрос» (выбрано по умолчанию). | 2. В поле ''Числовой реквизит'' выберите показатель куба-источника, данные из которого будут использоваться в создаваемом показателе. |
| - В поле ''Источник'' выберите значение «OLAP-куб» и из выпадающего меню выберите название OLAP-куба, который будет являться источником для запроса. | |
| - В поле ''Числовой реквизит'' выберите показатель куба-источника, данные из которого будут использоваться в создаваемом показателе. | <callout type="warning" icon="true">Из OLAP-куба можно использовать только те показатели, которые **не являются** системными (исключением являются показатели трудозатрат). \\ Формулы, в которых участвуют системные показатели, также использовать нельзя.</callout> |
| - В колонке ''Измерение OLAP-куба'' должны выберите соответствующие измерения, которые были созданы на [[product/olap/new_metering|этапе создания измерений]]. Если в каком-либо из полей нет значений, доступных для выбора, то это означает, что измерение не было создано и его нужно создать -- название реквизита-классификатора, для которого не создано измерение указано в колонке ''Измерение источника''. | |
| - В колонке ''Дата OLAP-куба'' нужно выбрать заранее созданное измерение «Дата». | 3. В колонке ''Измерение OLAP-куба'' выберите соответствующие [[product/olap/new_metering|измерения]]. |
| - Сохраните показатель после указания всех перечисленных параметров. | * Если в каком-то из полей нет значений, доступных для выбора, то это означает, что измерение не было создано и его нужно создать. \\ Название [[product:requisites:requisite-class|реквизита-классификатора]], для которого не создано измерение указано в колонке ''Измерение источника''. |
| | |
| | 4. В колонке ''Дата OLAP-куба'' выберите заранее созданное измерение «Дата». |
| | |
| | 5. **Сохраните** показатель. |
| |
| <callout type="info" icon="true">Опция ''Наследовать на подпроекты'' не доступна для показателей на основе запроса из OLAP-куба. Она определяется в настройках показателя в OLAP-кубе источнике запроса.</callout> | <callout type="info" icon="true">Опция ''Наследовать на подпроекты'' не доступна для показателей на основе запроса из OLAP-куба. Она определяется в настройках показателя в OLAP-кубе источнике запроса.</callout> |
| |
| Показатель на основе запроса из объекта собирает данные числового реквизита или реквизита-даты, прикрепленного к выбранному типу объекта -- указанному в качестве источника запроса. | Показатель на основе запроса из объекта собирает данные числового реквизита или реквизита-даты, прикрепленного к выбранному типу объекта -- указанному в качестве источника запроса. |
| |
| Для создания показателя нажмите кнопку «Создать» в портлете «Показатели» (Рисунок 1). | |
| |
| После этого откроется страница создания показателя. | |
| |
| <image shape="thumbnail">{{ :product:olap:olap_request_3.png?nolink |}}</image> | <image shape="thumbnail">{{ :product:olap:olap_request_3.png?nolink |}}</image> |
| <TEXT align="center">**Рисунок 2C** -- Страница создания показателя на основе запроса из объекта</text> | <TEXT align="center">**Рисунок 2C** -- Страница создания показателя на основе запроса из объекта</text> |
| |
| Укажите параметры показателя: | - В поле ''Источник'' выберите название объекта, который будет источником для запроса. |
| - Введите название показателя. | |
| - В параметре ''Тип показателя'' выберите значение «Запрос» (выбрано по умолчанию). | |
| - В поле ''Источник'' выберите значение «Объект» и из выпадающего меню выберите название объекта, который будет являться источником для запроса. | |
| - В поле ''Реквизит'' выберите числовой реквизит или реквизит с типом «Дата», значения которого будут собираться в показателе. | - В поле ''Реквизит'' выберите числовой реквизит или реквизит с типом «Дата», значения которого будут собираться в показателе. |
| - В колонке ''Измерение OLAP-куба'' должны автоматически выбраться соответствующие измерения, которые были созданы на [[product/olap/new_metering|этапе создания измерений]]. Если какое-либо из полей оказалось пустым, то это означает, что измерение не было создано и его нужно создать -- название реквизита-классификатора, для которого не создано измерение указано в колонке ''Измерение источника''. | - В колонке ''Измерение OLAP-куба'' должны автоматически выбраться соответствующие [[product/olap/new_metering|измерения]]. |
| - В колонке ''Дата источника'' нужно выбрать дату объекта, которая будет использоваться для расчетов и вывода значений реквизита в отчет: | * Если какое-то из полей оказалось пустым, то это означает, что измерение не было создано и его нужно создать. \\ Название [[product:requisites:requisite-class|реквизита-классификатора]], для которого не создано измерение указано в колонке ''Измерение источника''. |
| * «Дата создания» -- дата и время ввода значения реквизита в объекте. | - В колонке ''Дата источника'' выберите дату объекта, которая будет использоваться для расчетов и вывода значений реквизита в отчет: |
| * «Плановая дата начала» -- плановая дата начала объекта (проекта, задачи), из которого берется значение числового реквизита. | * ''Дата создания'' -- дата и время создания объекта |
| * «Плановая дата окончания» -- плановая дата окончания объекта (проекта, задачи), из которого берется значение числового реквизита. | * ''Плановая дата начала'' (объекта) |
| * «Фактическая дата начала» -- фактическая дата начала объекта (проекта, задачи), из которого берется значение числового реквизита. | * ''Плановая дата окончания'' (объекта) |
| * «Фактическая дата окончания» -- фактическая дата окончания объекта (проекта, задачи), из которого берется значение числового реквизита. | * ''Фактическая дата начала'' (объекта) |
| - В колонке ''Дата OLAP-куба'' нужно уточнить тип даты OLAP-куба, используемой для расчета: | * ''Фактическая дата окончания'' (объекта) |
| * «Дата(точный)» -- используется для большинства ситуаций, когда из числового реквизита нужно просто взять значение на конкретную дату. | * ''Дата начала базового плана'' -- дата и время начала для объекта из последнего сохраненного базового плана |
| * «Дата(относительный)» -- используется, когда необходимо получить последнее значение из числового реквизита, относительно даты ячейки таблицы OLAP-куба. Это нужно, как правило, для показателей-запросов из системных справочников. | * ''Дата окончания базового плана'' -- дата и время окончания для объекта из последнего сохраненного базового плана |
| | * <название реквизита-даты из реквизитов объекта> -- дата из пользовательского реквизита |
| | - В колонке ''Дата OLAP-куба'' -- выберите ''Дата (точный)''((''Дата (относительный)'' не имеет смысла для объектов, не выбирайте этот вариант.)) |
| </pane> | </pane> |
| </tabs> | </tabs> |
| |
| ===== Свойства ===== | ===== Свойства ===== |
| |
| ====Доступность опций==== | |
| <grid> | |
| <col lg="5" sm="6" xs="12"> | |
| {{:product:olap:olap_interface_6.png?nolink}} | |
| </col> | |
| <col lg="7" sm="6" xs="12"> | |
| |
| ^ ^ Источник ^^^ | |
| ^ Свойство куба^ Справочник ^ OLAP-куб ^ Объект ^ | |
| | [[#агрегация|Агрегация]]| {{fa>check?2x&color=#267F00}} | {{fa>check?2x&color=#267F00}} | {{fa>check?2x&color=#267F00}} | | |
| | [[#наследовать_на_подпроекты|Наследовать на подпроекты]]| {{fa>check?2x&color=#267F00}} | {{fa>times?2x&color=#D9534F}} | {{fa>check?2x&color=#267F00}} | | |
| | [[#разрешить_null|Разрешить NULL]]| {{fa>check?2x&color=#267F00}} | {{fa>check?2x&color=#267F00}} | {{fa>check?2x&color=#267F00}} | | |
| | [[#скрытый|Скрытый]]| {{fa>check?2x&color=#267F00}} | {{fa>check?2x&color=#267F00}} | {{fa>check?2x&color=#267F00}} | | |
| | [[#сумма_как_последнее_значение_в_группе|Сумма как последнее значение в группе]]| {{fa>check?2x&color=#267F00}} | {{fa>check?2x&color=#267F00}} | {{fa>check?2x&color=#267F00}} | | |
| </col> | |
| </grid> | |
| ==== Агрегация ==== | ==== Агрегация ==== |
| | {{page>product/olap/indicator_options#для_показателя_значения&noheader&nofooter}} |
| |
| ^ ^Включена^Выключена^ | ==== Скрытый ==== |
| ^ Числовое значение|Выводится сумма значений по выбранному измерению|Если есть >1 записи, ничего не выводится ("значение не определено"). \\ Если есть 1 запись, выводится её значение. \\ Если записей нет, ничего не выводится ("значение не определено").| | {{page>product/olap/indicator_options#скрытый&noheader&nofooter}} |
| ^ Дата|Выводится максимальное значение из всех записей. (Самая поздняя дата).|:::| | |
| |
| ==== Наследовать на подпроекты ==== | ==== Наследовать на подпроекты ==== |
| Наследует значение показателя на дочерние объекты дерева иерархической структуры. | {{page>product/olap/indicator_options#наследовать_на_подпроекты&noheader&nofooter}} |
| | |
| <callout icon="fa fa-briefcase" title="Пример для справочника - «Вычисление премии участников проекта»"> | |
| **Условие:** ставки индивидуальны на каждый проект. | |
| | |
| **Реализация:** | |
| - задать ставки в специальном справочнике проекта, включить наследование значений на задачи; | |
| - справочник «Учет времени»((прикреплен к задачам)) -- источник о плановых/фактических трудозатратах; | |
| - умножить ставки на на трудозатраты с помощью [[product/olap/formula|показателе на основе формулы]]. | |
| </callout> | |
| | |
| <callout icon="fa fa-briefcase" title="Пример для объекта - «Вычисление средней стоимость строительства»"> | |
| | |
| **Реализация:** | |
| - справочник Бюджет -- заполняется в задаче проекта, из расчета на 1 кв.метр площади объекта (реквизит проекта «Площадь объекта»); | |
| - в проекте заполняется реквизит «Площадь объекта», значения которого наследуются в задачи проекта; | |
| - создать запрос на основе справочника из числового реквизита из справочника «Бюджет»; | |
| - перемножить бюджет на площадь с помощью [[product/olap/formula|показателя на основе формулы]]. | |
| | |
| </callout> | |
| | |
| ==== Разрешить NULL ==== | |
| | |
| Позволяет в незаполненных значениях показателя OLAP-куба оставить //пустое значение// -- null. По умолчанию (если опция не активирована) пустые значения показателя заменяются на 0. | |
| | |
| ==== Скрытый ==== | |
| | |
| Используется для вспомогательных показателей, используемых для промежуточных расчетов. Если включено, то при построении отчета этот показатель по умолчанию будет скрыт. | |
| |
| ==== Сумма как последнее значение в группе ==== | ==== Сумма как последнее значение в группе ==== |
| | {{page>product/olap/indicator_options#сумма_как_последнее_значение_в_группе&noheader&nofooter}} |
| |
| Позволяет отображать итоги по показателю не как сумму всех значений, а как значение из последнего временного периода, отображаемого в отчете. | ==== Разрешить NULL === |
| | {{page>product/olap/indicator_options#разрешить_null&noheader&nofooter}} |