两个事实 - 两种不同的谷物

时间:2012-07-05 19:36:05

标签: ssas

我刚刚继承现有的多维数据集后回到SSAS,我不知道如何继续这种情况:

预算事实:

  • 产品
  • 客户
  • 时间

促销事实:   - 产品   - 客户   - 促销   - 时间

我希望结合预算措施小组和促销措施小组的措施做一份报告。 基本上我正在尝试获取Promotion.Discount值>的客户和产品列表。 0.4。

这意味着我必须将促销维度拉入我的数据集中,这就是事情开始变得毛茸茸的地方。

关于客户,产品,促销ID和Promo.Amount的报告是1565条记录。 关于客户,产品和预算的报告.Amount是31条记录。 关于客户,产品,促销ID,Promo.Amount和Budget.Amount的报告是179,878条记录!

我想要实现的目标(从SQL的角度来看)是返回促销折扣值为>的客户和产品列表。 .4然后将其链接到客户ID和产品ID上的另一个数据集以获取预算值。 我花了很多时间阅读Dimension Usage工具等,似乎没有任何帮助。有什么建议吗?!

1 个答案:

答案 0 :(得分:0)

如果多维数据集已经就位并且构造正确,那么您不必在Dimension Usage中更改任何内容。但只是为了确保,当您查看该页面时,您应该会看到属性名称出现在维度的每个交叉点与相应的度量值组中。根据您的描述,只有促销和预算的交集应显示为灰色(空)单元格。

听起来问题是如何编写适当的MDX查询。您应该能够使用与此类似的查询生成所需的列表(更改维度和度量的实际名称):

with
set CustomerProductList as
Filter((Customer.Customer.Customer.Members, Product.Product.Product.Members, Promotion.Promotion.Promotion.Members), 
Val(Promotion.Promotion.CurrentMember.Name) > .4)

select
{Measures.BudgetAmount, Measures.PromotionAmount} on columns,
CustomerProductList on rows
from YourCube