2016-05-12 7 views
1

Ich habe das folgende Beispiel aus dem Internet gefunden, berechnet es Summe [Measures].[Job Advert Value] für unterschiedliche [JAP ID].[JAP ID].Wie Filter (pro Woche) in der Summe für unterschiedliche Wert in dieser Abfrage hinzufügen

Es zeigt jedoch nur die Gesamtsumme für alles, und ich möchte es nur für jede Woche summieren.

Ich habe versucht, FILTER für [Time].[Year - Week - Date].[Week].members hinzuzufügen, das ist Zeitdimension, aber funktioniert nicht.

Die untere Abfrage funktioniert ohne FILTER-Funktion.

SCOPE([Time].[Year - Week - Date].[Week].members, [Permanent Placement Value].[Value Type Name].&[Vacancies], [Measures].[Job Advert Value]); 

    [Measures].[JAP Advert Value] = 
SUM 
    (
      generate 
      (
       [JAP ID].[JAP ID].MEMBERS AS s, 
       s.CURRENT * 
       TAIL(
        NonEmpty 
         (
         [Time].[Year - Week - Date].[Date].members, 
         (s.CURRENT, [Measures].[Job Advert Value]) 
         ) 
        ) 
      ) 
     , 
     Measures.[Job Advert Value] 
    ); 

END SCOPE; 
+0

, wenn Sie diese Zeile ändern "[Zeit]. [Jahr - Woche - Datum]. [Datum] .Mitglied" zu thi s '[Zeit]. [Jahr - Woche - Datum] .CURRENTMEMBER' hilft es – whytheq

Antwort

0

Ich würde vorschlagen, eine der folgenden Versuch:

SCOPE([Time].[Year - Week - Date].[Week].members 
    , [Permanent Placement Value].[Value Type Name].&[Vacancies] 
    , [Measures].[Job Advert Value]); 

[Measures].[JAP Advert Value] = 
SUM(
    GENERATE(
    [JAP ID].[JAP ID].MEMBERS AS s 
    ,s.CURRENT * 
    TAIL(
    NONEMPTY(
     EXISTING [Time].[Year - Week - Date].[Date].MEMBERS 
     ,(
     s.CURRENT 
     ,[Measures].[Job Advert Value] 
     ) 
    ) 
    ) 
) 
,Measures.[Job Advert Value] 
); 

END SCOPE; 

oder

SCOPE([Time].[Year - Week - Date].[Week].members 
    , [Permanent Placement Value].[Value Type Name].&[Vacancies] 
    , [Measures].[Job Advert Value]); 

[Measures].[JAP Advert Value] = 
SUM(
    GENERATE(
    [JAP ID].[JAP ID].MEMBERS AS s 
    ,s.CURRENT * 
    TAIL(
     NONEMPTY(
     [Time].[Year - Week - Date].CURRENTMEMBER 
     ,(
     s.CURRENT 
     ,[Measures].[Job Advert Value] 
     ) 
    ) 
    ) 
) 
,Measures.[Job Advert Value] 
); 

END SCOPE; 

Auch würde ich mit Ihrem Umfang Experimentieren Sie mit den folgenden:

SCOPE([Permanent Placement Value].[Value Type Name].&[Vacancies] 
, [Measures].[Job Advert Value]); 
+0

Hallo whytheq, Danke für Ihre Antwort. Es scheint mit EXISTING zu funktionieren. :) – JJ0022

+0

@ JJ0022 froh, dass es geholfen – whytheq

+0

Hallo whytheq, Vielen Dank für Ihre Antwort. Es scheint mit EXISTING zu funktionieren! :-) Jedoch, mit VORHANDEN [Zeit]. [Jahr - Woche - Datum]. [Datum] .MEMBERS, scheint das Ergebnis verdoppelt zu sein. Könnte es etwas mit MITGLIEDERN sein? Ich kann das sehen [Zeit]. [Jahr - Woche - Datum]. [Datum] .MEMBERS enthält keine "Alle" Mitglieder. Ich bin mir nicht sicher, warum es verdoppelt wird. – JJ0022