2016-03-07 56 views
0

我想創建一個所有商品交易量(ACV)指標的度量。其計算公式如下:MDX計算所有商品交易量的公式(%ACV)

轉銷商銷售的產品銷售總額/所有代理商

銷售總額讓我們舉個例子,比如產品「LL房框架 - 藍色,44」,從AdventureWorks2012DW立方。

我們可以看到它是由14個經銷商

enter image description here

這14個經銷商一起銷售使銷售

enter image description here

如果我把所有的經銷商2 706 909 $,他們做80 450 596 $的銷售

enter image description here

對於產品「LL Touring Frame - Blue,44」,我的ACV措施將返回2 607 909/80 450 596 = 2%,這意味着它出現在製作間接銷售額2%的經銷商處。

我在尋找的是採用「所有產品的經銷商銷售額」而不是所選產品的經銷商銷售額的MDX表達式,但僅當「所選產品的經銷商銷售金額不是空值」。

enter image description here

到目前爲止,感謝社會各界的幫助下,我可以做一個查詢,給了我正確的結果,如果我在某些特定產品過濾:

設置ActiveStores爲非空

( [DimStore ] [存儲] [存儲] ,{([DimProduct]。[產品] .CurrentMember,[措施]。[銷售])} )

會員ACV AS SUM(ActiveStores,[措施]。[店鋪銷售])/ [措施]。[店鋪銷售]

在列上選擇非空ACV, NON EMPTY {([DimProduct]。[Product]。[Product] .ALLMEMBERS)} ON ROWS FROM(SELECT({[DimProduct]。[Product] & [HAMAC DE VOYAGE]})[COLUMNS FROM [Cube])

此查詢返回過濾產品的9%的ACV。但是,如果我僅通過放置FROM [立方體]來移除過濾器,則所有產品的ACV均爲100%,即使是之前查詢的9%。

這就像ActiveStores集合綁定在WHERE子句中,而不是ROWS Axis。

問候

+0

我不理解某些東西。你的MDX看起來不錯。難道你不能只用[Measures]替換[Measures]。[Distinct Number of Stores]。[Sales]並完成? – GregGalloway

+0

GregGalloway,如果我這樣做,我可以獲得所選產品在銷售商店的銷售額,我需要的是銷售所選產品的商店中的所有產品的銷售額。我已通過添加更多詳細信息更新了我的帖子。 – user2018454

回答

0

我能找到一個解決方案是這樣的:

我已經添加了一個聚合的事實(商店銷售)作爲屬性維度商店。創建一個度量商店銷售額,然後用下面的表達式創建一個計算度量:

SUM(NonEmpty(
      [DimStore].[Store].[Store] 
      ,([Measures].[Sales]) 
     ), [Measures].[Store Sales])/(ROOT([DimStore]), [Measures].[Store Sales]) 
0

要查找成員,銷售額不爲空,你可以使用NonEmpty功能:

NonEmpty(
    [Stores].[Stores].members 
    ,(
    [Product].[Product].[ProductA] 
    , [Measures].[Sales] 
    ) 
) 
+0

謝謝whytheq爲您的答覆,不幸的是,這個表達式的結果總是爲空。 – user2018454

+0

再次感謝,但劇照返回null:/ – user2018454

+0

請將您完整的'mdx'腳本添加到問題 – whytheq

0

什麼:

Sum(
[Store].[Store].[Store].Members, 
IIF(
    IsEmpty([Measures].[Sales]), 
    Null, 
    (
    ROOT([Product]) 
    ,ROOT([Supplier]) 
    ,ROOT([Promotion]) 
    ,ROOT([Misc]) 
    ,[Measures].[Sales] 
) 
) 
) 
+0

感謝格雷格,我認爲我們幾乎在那裏,我已經更新了我的帖子,查詢給出了正確的結果但只有當產品過濾時,目的是在沒有過濾器的情況下使其工作。 – user2018454

+0

@ user2018454如果用戶沒有篩選到特定產品,那麼您會計算哪些商店?所有商店?不清楚你的意思是「沒有過濾器的工作」 – GregGalloway