Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / OLAP и DWH Новый топик    Ответить
 Oracle BI 11g, агрегация по двум полям  [new]
vint44
Member

Откуда:
Сообщений: 5
Добрый день,

Помогите, плз, разобраться с вопросом агрегации по двум полям в таблице среза.
В предметной области есть поля: регион, услуга, kpi, вес и еще несколько полей с показателями. Необходимо сделать таблицу среза, в которой регионы транспонированы в столбцы, услуги в строки, пересечение строк и столбцов - kpi.
Такую таблицу построить получается.
Но вот с итогами не ладится. По каждому региону в итогах нужно не просто делать агрегацию по kpi, а агрегацию по kpi * вес.
Пробовал делать в разделе для услуг новый вычисляемый элемент, в котором делать агрегацию для kpi * вес, но как их там правильно указать не понимаю.

Дополню, сама предметная область построена на основе pipelined функции. И ее данные используются также при построении еще одной таблицы в другом разрезе. Писать еще одну pipelined функцию для вывода нужных агрегатов по kpi * вес думаю нецелесообразно, т.к. повторно будет сканироваться большой объем данных из нескольких БД. Хотелось бы использовать результаты одной функции для построения двух таблиц разрезов с различными агрегациями.
3 окт 17, 10:15    [20838114]     Ответить | Цитировать Сообщить модератору
 Re: Oracle BI 11g, агрегация по двум полям  [new]
terna
Member

Откуда:
Сообщений: 86
vint44,
Не очень понятен вопрос. Вы хотите добавить доп. поле kpi*вес? Его можно добавить как в репозитории, так и непосредственно в отчёте, указав формулу показателя и агрегацию.
Если Вам для показателя kpi нужна итоговая строка kpi*вес, то в построителе отчётов можно сделать юнион (2 пересекающихся круга справа вверху над выбранными показателями) и в столбце услуга написать 'Итого', в столбце с показателем написать соответствующую формулу.
3 окт 17, 11:06    [20838325]     Ответить | Цитировать Сообщить модератору
 Re: Oracle BI 11g, агрегация по двум полям  [new]
vint44
Member

Откуда:
Сообщений: 5
>> Вы хотите добавить доп. поле kpi*вес?
Нет, т.к. в этом случае в столбцах будет выводиться не значение kpi, а kpi*вес.

>> Если Вам для показателя kpi нужна итоговая строка kpi*вес
Да. Спасибо, буду пробовать объединение отчетов. Идея понятна, но пока не юзал еще этот механизм, т.к. занимаюсь bi недавно. Надеюсь без подводных камней обойдется.
3 окт 17, 11:22    [20838385]     Ответить | Цитировать Сообщить модератору
 Re: Oracle BI 11g, агрегация по двум полям  [new]
vint44
Member

Откуда:
Сообщений: 5
Все-таки споткнулся на этом объединении отчетов.
Помогите на примере научиться, как пользоваться им.
Допустим у нас есть поля регион, услуга, kpi, вес и количество.
Необходимо построить две таблицы отчета.
Первая: Столбцы - регионы, строки - услуги. Их пересечение - это kpi и количество.
Вторая: Столбцы - регионы, строки - услуги. Пересечение - kpi. Итоговая строка содержит суммы kpi*вес для каждого столбца.

Для первой таблицы я построил срез, в котором в область строк перенес поле - услуги, в область столбцов перенес поле регионы, в область показателей перенес поля kpi и количество. Правила сведения любое, т.к. одному региону и сервису соответствует одна запись с kpi и количеством.

Для второй таблицы я построил срез, в котором в область строк перенес поле - услуги, в область столбцов перенес поле регионы, в область показателей перенес поля kpi. Правила сведения любое.

Теперь пытаюсь сделать юнион таблиц, в котором для второго набора полей вместо делаю поле norm_kpi = kpi * вес. Плюс еще, применяю к этому полю агрегацию по сумме.
И тут возникают проблемы, т.к. для построения второй таблицы срезов мы получаем объединенный набор данных и данные от этого юниона будут влиять на результаты первой таблицы среза. Т.е. поле kpi будет содержать два значения, одно для исходного значения kpi, другое - отнормированное с учетом веса.
И непонятно как такой набор данных применять для получения нужных результатов второй и первой таблицы.
4 окт 17, 15:34    [20842566]     Ответить | Цитировать Сообщить модератору
 Re: Oracle BI 11g, агрегация по двум полям  [new]
terna
Member

Откуда:
Сообщений: 86
vint44,

к сожалению и то, и другое в одном анализе никак не получить.
для первой таблицы среза нужен анализ без юниона, для второй с юнионом
4 окт 17, 18:32    [20843255]     Ответить | Цитировать Сообщить модератору
Все форумы / OLAP и DWH Ответить