Quantcast
Channel: SQL.ru: OLAP и DWH
Viewing all articles
Browse latest Browse all 1167

Cognos RS 10.2.2 Деление строк и получение %

$
0
0
Приветствую всех.
возможно вопрос уже был, не судите строго.
есть 6 фактовых таблиц, которые сдают пользователи.
для каждой из них, только для некоторых строк нужно вычислить проценты.
на данный момент сделано в RS (на основе 6 измерений, но так работает долго):
6 запросов, 11 перекрестных таблиц (далее ПТ), расположенные в столбик, одна за одной.

ПТ1(запрос 3)
ПТ2(запрос 1)
ПТ3(запрос 3)
ПТ4(запрос 5)
ПТ5(запрос 2)
ПТ6(запрос 6)
ПТ7(запрос 1)
ПТ8(запрос 6)
ПТ9(запрос 4)
ПТ10(запрос 2)
ПТ11(запрос 5)
которые нужны в таком порядке. размер строк\столбцов не имеет значения, менеджер выгружает в Ексель и под себя настраивает.

ПТ1|---------------------------------------------------------------|[столбец1] (скрыт)
---------------------------------------------------------------------|&nbspПользователь1&nbsp|&nbspПользователь2&nbsp|..|&nbspПользовательN&nbsp|
-----------------------------------------------------------------------------------------------------------------------------------------------
% (деление элементСтроки1/элементСтроки2 |
-----------------------------------------------------------------------------------------------------------------------------------------------
элементСтроки1&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp|
-----------------------------------------------------------------------------------------------------------------------------------------------
элементСтроки2&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp|
-----------------------------------------------------------------------------------------------------------------------------------------------

где Пользователь i - элемент из измерения Пользователей
элементСтроки j - элемент из измерения Строк
из реляционных источников берется только Дата.

каждый отчет сдаёт разное количество пользователей, важно чтобы при выгрузке в Ексель, каждый Пользователь был на своем месте (если пользователь не сдает какойто отчет, там нужен NULL и место-клетка чтобы создалась), чтобы вручную не передвигать клетки.
хотелось бы на реляционных источниках данных такое провернуть.
Доступ есть к Framework Manager и RS, доступа к созданию хранимых процедур нет.
подскажите куда копать, чтобы вычисление делалось быстрее (обычно около получаса идет, бывает процесс обрывается, локальный кэш в RS для запросов отключен).
Пытался сделать так :
[элемент данных1]
"case
when [Строка] = 3
then [столбец1]
end"

[элемент данных2]
"case
when [Строка] = 4
then [столбец1]
end"

[элемент данных3]
элемент данных1/элемент данных2

Вроде должно работать, но не получилось

Viewing all articles
Browse latest Browse all 1167

Trending Articles