Различия

Показаны различия между двумя версиями страницы.

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

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
product:olap:request [30.05.2019 14:19] maynproduct:olap:request [14.01.2025 08:15] (текущий) – [На основе запроса из другого OLAP-куба] ekaterina.menkhuzina
Строка 1: Строка 1:
 ====== Создание показателей на основе запроса ====== ====== Создание показателей на основе запроса ======
-===== Что такое показатель ===== +===== Что такое показатель-запрос ===== 
-Это значение, которое будет отображаться в ячейке таблицы, результат вычислений.+Показатель -- это значение, которое будет отображаться в ячейке таблицы ([[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>
Строка 65: Строка 47:
   - В колонке ''Измерение OLAP-куба'' должны автоматически выбраться соответствующие измерения, которые были созданы на [[product/olap/new_metering|этапе создания измерений]].    - В колонке ''Измерение OLAP-куба'' должны автоматически выбраться соответствующие измерения, которые были созданы на [[product/olap/new_metering|этапе создания измерений]]. 
     * Если какое-то из полей оказалось пустым, значит, измерение не было создано и [[product/olap/new_metering|его нужно создать]]. Название реквизита-классификатора, для которого не создано измерение указано в колонке ''Измерение источника''.     * Если какое-то из полей оказалось пустым, значит, измерение не было создано и [[product/olap/new_metering|его нужно создать]]. Название реквизита-классификатора, для которого не создано измерение указано в колонке ''Измерение источника''.
-  - В колонке ''Дата источника'' выберите одну из дат объекта, к которому прикреплен справочник – источник для запроса данных в куб.+  - В колонке ''Дата источника'' выберите дату записи справочника (значение «Системный») или один из типов дат объекта, к которому прикреплен справочник – источник для запроса данных в куб. Эта дата будет использоваться для измерения дат, на базе которых формируется куб: 
 +    * ''Дата создания'' -- дата и время создания объекта  
 +    * ''Плановая дата начала'' (объекта) 
 +    * ''Плановая дата окончания'' (объекта) 
 +    * ''Фактическая дата начала'' (объекта) 
 +    * ''Фактическая дата окончания'' (объекта) 
 +    * ''Дата начала базового плана'' -- дата и время начала для объекта из последнего сохраненного базового плана 
 +    * ''Дата окончания базового плана'' -- дата и время окончания для объекта из последнего сохраненного базового плана 
 +    * ''Системный'' -- дата записи справочника. Имеет более высокий приоритет при формировании выборки показателей в отчете, чем даты объектов. <callout type="warning" icon="true">Если OLAP-кубе есть хотя бы один показатель-запрос из справочника, в котором в параметре ''Дата источника'' выбрано значение ''Системный'', то выборка дат для данных OLAP-куба по конкретному объекту будет начинаться с самой ранней даты записи в справочниках, по которым созданы показатели-запросы в кубе. Все данные по показателям с ''Датой источника'' на базе дат объектов (перечисленных в пунктах выше), которые будут раньше, чем самая ранняя дата всех записей всех справочников объекта (добавленных в показатели куба), не попадут в выборку OLAP-куба (и отчетов).</callout> 
 +    * <название реквизита-даты из реквизитов объекта> -- дата из пользовательского реквизита
   - В колонке ''Дата OLAP-куба'' выберите тип даты OLAP-куба, используемой для расчета:   - В колонке ''Дата OLAP-куба'' выберите тип даты OLAP-куба, используемой для расчета:
     * ''Дата(точный)'' -- используется для большинства ситуаций, когда из числового реквизита нужно просто взять значение на конкретную дату.     * ''Дата(точный)'' -- используется для большинства ситуаций, когда из числового реквизита нужно просто взять значение на конкретную дату.
-    * ''Дата(относительный)'' -- используется, когда необходимо получить последнее значение из числового реквизита, относительно даты ячейки таблицы OLAP-куба. \\ Это нужно, как правило, для показателей-запросов из системных справочников.+    * ''Дата(относительный)'' -- используется, когда необходимо получить последнее значение из числового реквизита, относительно даты ячейки таблицы OLAP-куба. \\ Используется для показателей-запросов из [[product:tables:admin:system_table|системных справочников]].
   - **Сохраните** показатель.   - **Сохраните** показатель.
  
Строка 80: Строка 71:
 <TEXT align="center">**Рисунок 2B** -- Страница создания показателя на основе запроса из OLAP-куба</text> <TEXT align="center">**Рисунок 2B** -- Страница создания показателя на основе запроса из OLAP-куба</text>
  
-  - В поле ''Источник'' выберите название OLAP-куба, который будет являться источником для запроса. +1. В поле ''Источник'' выберите название OLAP-куба, который будет являться источником для запроса. 
-  В поле ''Числовой реквизит'' выберите показатель куба-источника, данные из которого будут использоваться в создаваемом показателе. + 
-  - В колонке ''Измерение OLAP-куба'' выберите соответствующие [[product/olap/new_metering|измерения]]. +2. В поле ''Числовой реквизит'' выберите показатель куба-источника, данные из которого будут использоваться в создаваемом показателе. 
 + 
 +<callout type="warning" icon="true">Из OLAP-куба можно использовать только те показатели, которые **не являются** системными (исключением являются показатели трудозатрат). \\ Формулы, в которых участвуют системные показатели, также использовать нельзя.</callout> 
 + 
 +3. В колонке ''Измерение OLAP-куба'' выберите соответствующие [[product/olap/new_metering|измерения]]. 
     * Если в каком-то из полей нет значений, доступных для выбора, то это означает, что измерение не было создано и его нужно создать. \\ Название [[product:requisites:requisite-class|реквизита-классификатора]], для которого не создано измерение указано в колонке ''Измерение источника''.     * Если в каком-то из полей нет значений, доступных для выбора, то это означает, что измерение не было создано и его нужно создать. \\ Название [[product:requisites:requisite-class|реквизита-классификатора]], для которого не создано измерение указано в колонке ''Измерение источника''.
-  - В колонке ''Дата OLAP-куба'' выберите заранее созданное измерение «Дата». + 
-  **Сохраните** показатель.+4. В колонке ''Дата OLAP-куба'' выберите заранее созданное измерение «Дата». 
 + 
 +5. **Сохраните** показатель.
  
 <callout type="info" icon="true">Опция ''Наследовать на подпроекты'' не доступна для показателей на основе запроса из OLAP-куба. Она определяется в настройках показателя в OLAP-кубе источнике запроса.</callout> <callout type="info" icon="true">Опция ''Наследовать на подпроекты'' не доступна для показателей на основе запроса из OLAP-куба. Она определяется в настройках показателя в OLAP-кубе источнике запроса.</callout>
Строка 102: Строка 99:
     * Если какое-то из полей оказалось пустым, то это означает, что измерение не было создано и его нужно создать. \\ Название [[product:requisites:requisite-class|реквизита-классификатора]], для которого не создано измерение указано в колонке ''Измерение источника''.     * Если какое-то из полей оказалось пустым, то это означает, что измерение не было создано и его нужно создать. \\ Название [[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}}