Gabungkan 2 kueri mdx

Saya memiliki 2 pertanyaan MDX dari kubus yang sama. Keduanya menggunakan ukuran yang sama tetapi dengan rangkaian waktu yang berbeda (kedua rangkaian waktu tersebut memiliki dimensi yang sama tetapi hierarki yang berbeda).

Saya ingin menggabungkannya dalam hasil tabel yang sama, sehingga akan menampilkan 2 ukuran (dipotong oleh set yang berbeda) dan dimensi waktu lain (“Hari dalam Seminggu”) yang juga menggunakan dimensi waktu yang sama. Kueri dapat dijalankan secara terpisah sebagai berikut:

   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)

Bisakah itu dilakukan? Saya selalu mendapatkan kesalahan karena saya tidak dapat menggunakan hierarki waktu yang sama dalam kueri… Ada ide? Sesuatu seperti SQL, apakah saya dapat menggabungkan 2 tampilan?

Terima kasih

Yoni.


person Yoni    schedule 03.11.2014    source sumber


Jawaban (1)


MDX berikut harus melakukan itu:

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

Saya memindahkan konteks dari subpilihan dalam kueri Anda ke definisi anggota menggunakan fungsi Aggregate.

person FrankPl    schedule 04.11.2014
comment
terima kasih Frank, tetapi menggunakan skrip ini menyebabkan kesalahan pada tabel hasil: Fungsi gabungan tidak dapat digunakan pada anggota terhitung dalam dimensi ukuran. - person Yoni; 06.11.2014