无法在Excel数据模型中为两个具有多个多对多维度的事实表建立关系



我有3个表(FACT1, FACT2, DIM1, DIM2)

FACT1:

Code Month Value
058 1 500
059 1 600
061 1 700
058 2 1000
059 2 1000
061 2 1000

FACT2:

Service Month Status Value
058-buy 1 OK 700
059-purchase 1 Missing 800
061-trade 1 OK 900
058-buy 2 OK 300
059-purchase 2 Missing 400
061-trade 2 OK 500

DIM1:

Code Service
058 058-buy
059 059-purchase
061 061-trade

DIM2:

Month Name
1 January
2 February
3 March

我将所有4个表加载到Excel中的数据模型中,并在FACT1中创建了一个新度量总值:=sum([Value])+sumx(FILTER('FACT2','FACT2'[Status]="OK"),'FACT2'[VALUE])

我还创建了表之间的关系:FACT1(代码)到DIM1(代码)FACT2(服务)至DIM1(服务)FACT1(月)到DIM2(月)FACT2(Month) to DIM2(Month)

但是,当我使用数据模型插入一个新的枢轴时代码来自DIM1 "ROW"Month from FACT1 on "COLUMN"新测量值

我得到这样的东西:

Code 1 2 Grand Total
058 1500 2000 2500
059 600 1000 1600
061 2100 2400 3100
Grand Total 4200 5400 7200

以某种方式,它将按月正确地切片,但如果您注意透视表Grand Total的最后一列,它们是正确的!2500确实是500 + 700 + 1000 + 300, 1600确实是600 + 1000, 3100确实是700 + 900 + 1000 + 500以上3项的最终总数也是正确的,为7200。

现在的问题是为什么数据透视表的中间部分行为奇怪?

对于数据透视表,使用DIM2表中的Month,而不是FACT1表中的Month。在您当前的设置下,FACT1不能过滤FACT2表,尽管DIM2可以。

相关内容

  • 没有找到相关文章

最新更新