2014-11-03 3 views
0

У меня есть 2 запроса MDX из того же куба. Оба используют одну и ту же меру, но с разными наборами времени (оба набора времени имеют одинаковый размер, но разные иерархии).Комбинат 2 mdx запросов

Я хочу присоединиться к ним в одних и тех же результатах таблицы, поэтому он представит 2 меры (разрезанные разными наборами) и другое временное измерение («День недели»), которое также использует одно и то же измерение времени. Запросы можно запускать отдельно следующим образом:

with member [Measures].[AVG_6_WEEKS] as 
    [Measures].[Number of Answered Comms] /6 
    select 
    nonempty([Comm Date UTC].[Day of Week].children) 
    on 0, 
    [Measures].[AVG_6_WEEKS] 
    on 1 
    from (select {LASTPERIODS(42,[Comm Date UTC].[Year Month Day].lastsibling.lastchild.lastchild.lastchild.prevmember)} 
    on 0 from comms) 

; 
with member [Measures].[Answered Comms] as 
[Measures].[Number of Answered Comms] 
select 
nonempty([Comm Date UTC].[Day of Week].children) 
on 0, 
[Measures].[Answered Comms] 
on 1 
from (select {LASTPERIODS(7,[Comm Date UTC].[Year Month 
Day].lastsibling.lastchild.lastchild.lastchild.prevmember)} 
    on 0 from comms) 

Можно ли это сделать? Я всегда получаю сообщение об ошибке, что я не могу использовать одинаковые иерархии времени в запросе ... Любая идея? Что-то вроде SQL, я могу присоединиться к 2 представлениям?

Спасибо

Yoni.

ответ

0

Следующая MDX следует сделать:

with member [Measures].[AVG_6_WEEKS] as 
    Aggregate({LASTPERIODS(42,[Comm Date UTC].[Year Month Day].lastsibling.lastchild.lastchild.lastchild.prevmember)}, 
       [Measures].[Number of Answered Comms] /6 
      ) 
    member [Measures].[Answered Comms] as 
    Aggregate({LASTPERIODS(7,[Comm Date UTC].[Year Month Day].lastsibling.lastchild.lastchild.lastchild.prevmember)}, 
       [Measures].[Number of Answered Comms] 
      ) 
select 
nonempty([Comm Date UTC].[Day of Week].children) 
on 0, 
{ [Measures].[AVG_6_WEEKS], [Measures].[Answered Comms] } 
on 1 
from comms 

я переехал контекст из подзапросов в запросах к определению члена с помощью функции Aggregate.

+0

спасибо Frank, но с использованием этого сценария возникает ошибка в таблице результатов: агрегированные функции не могут использоваться для вычисляемых элементов в измерении измерений. – Yoni

Смежные вопросы