2017-01-30 13 views
2

値の寸法に応じて、計算で使用する1または別の手段を使用したい:私はアンビューがアンビューであれば、私がしたい、実際には、私はディメンション値に応じて、何かを計算したい

WITH 
    CALCULATED MEMBER [Measures].[Switch] AS 
    IIF 
    (
     [Ambu].[Ambu].CurrentMember IS [Ambu].[Ambu].[Non Ambulatoire] 
    ,[Measures].[Nombre de Journées] 
    ,(
     [Measures].[NbSejours] 
     ,[Ambu].[Ambu].[Ambulatoire] 
    ) 
    ) 
    MEMBER result AS 
    [Measures].[RecettesT2a]/[Measures].[Switch] 
SELECT 
    { 
    [Measures].[RecettesT2a] 
    ,[Measures].[Switch] 
    ,result 
    ,[Measures].[NbSejours] 
    ,[Measures].[Nombre de Journées] 
    } ON 0 
,[Ambu].[Ambu] ON 1 
--[Classification GHM].[Recours] on 1 
FROM [Cube]; 

を試してみましたもしAmbuがNon Ambuであれば、[Nombre deJournées]でRecettesT2aを分割したいと思う...

AmbuがAxis 1で使用されているときにこの結果はOKですが、別の次元([分類GHM]。[Recours]など)、動作しません... [対策]。[スイッチ]が正しく計算されていません...

+0

ここで使用される関数 '' CURRENTMEMBER' [アンビュー] [アンビュー] .CurrentMember'手段。この条件[Ambu]。[Ambu] .CurrentMember IS [Ambu]。[Ambu]。[Non Ambulatoire]は、次元[Ambu]が文脈内にある場合、つまり軸の1つで使用される場合にのみ意味があります – whytheq

+0

もしあなたが '[Ambu]。[Ambu]'とは別に別の次元を使うなら、何が結果になるでしょうか?それは '' Measures '[Nombre deJournées] 'であるべきか' ' [Measures] [NbSejours] 、Ambu。[Ambu]。[Ambulatoire] )'であるべきですか? – whytheq

+0

私がよく理解していれば、このように私には解決策がありません... Ambu/Non Ambuのプロパティに関する異なる値を既に持っているファクトテーブル(および新しいメジャー)に列を追加する必要があります。 –

答えて

1

Ambuが文脈外であるときに必要なものはわかりません。

だから、あなたが欲しいものに応じて2つのオプションがあります。

WITH 
    CALCULATED MEMBER [Measures].[Switch] AS 
    IIF 
    (
     [Ambu].[Ambu].CurrentMember IS [Ambu].[Ambu].[Non Ambulatoire] 
     OR 
     isAll([Ambu].[Ambu].CurrentMember) 
    ,[Measures].[Nombre de Journées] 
    ,(
     [Measures].[NbSejours] 
     ,[Ambu].[Ambu].[Ambulatoire] 
    ) 
    ) 
... 
... 

またはこれを:

WITH 
    CALCULATED MEMBER [Measures].[Switch] AS 
    IIF 
    (
     [Ambu].[Ambu].CurrentMember IS [Ambu].[Ambu].[Non Ambulatoire] 
     OR 
     NOT isAll([Ambu].[Ambu].CurrentMember) 
    ,[Measures].[Nombre de Journées] 
    ,(
     [Measures].[NbSejours] 
     ,[Ambu].[Ambu].[Ambulatoire] 
    ) 
    ) 
... 
... 
+0

の試行を追加しました。メンバー(https://www.iccube.com/support/documentation/mdx/IsAll.php)のisAll関数があります。 – ic3

+0

@ ic3は非常に便利な機能 - 私は私の試みを編集しました – whytheq

関連する問題