为什么在PowerPivot中计算字段(或度量)属于哪个表?

我已经使用PowerPivot一段时间了,还有一件事我只是不明白。 当您创build一个度量(Excel 2013中除了他们现在被称为计算字段,而不是度量),您可以select它属于哪个表:

在这里输入图像说明

我知道这将影响我在Excel中看到计算字段的位置:

在这里输入图像说明

也在PowerPivot中:

在这里输入图像说明

然而,我能find的任何参考文献都表明,否则我不会在哪个表中使用这个度量。在这个问题的例子中,产品和交易表之间存在直接关系:

在这里输入图像说明

那么为什么当我把计算的字段放在产品表中时,Excel会出现这个CREATEbutton:

在这里输入图像说明

我在哪个表格中放置了计算字段,规则是什么? 我search了互联网,找不到一个好的答案! 提前致谢。

你计算哪个表并不重要。 事实上,有些人build议你制作一个虚拟表格,并将所有的计算结果存储在一张表格中 。

有几件事情需要注意:

  1. 确保计算中对列的引用包含表名和列名。 例如, Sum('Transaction'[Quantity])而不是Sum([Quantity])
  2. 确保你的关系是按照正确的方向定义的。 Power Pivot用于解决这个问题,但2014年12月的更新导致它停止这样做 。 箭头应该指向你的维度/查找表,点应该在事实/交易表上。 看起来你有这个权利,但要记住这一点。
  3. 你可以使用RELATED()来testing你的关系。 看起来您已经从产品表中滑出了另一个表格,并且看不到SpeciesName或Year与TotalQty的关系。 你会发现为什么雪花可能是一个坏主意的几个参考,但“如果它没有损坏 ,不要修复”。 找出关系是否存在问题的一个简单方法是使用RELATED()函数向它所链接的表中添加一个值。 例如,假设您已经在您的数据透视表中包含了ProductName,并且想要检查它是否是罪魁祸首。 出于testing目的,您可以将计算列添加到= RELATED('Product'[ProductName])的Transaction表中。 然后,你可以尝试使用该字段,看看是否有所作为。 雪花意味着你有更复杂的关系比星型模式,但只要你了解这些关系如何工作,它们是完全可用的。