SSAS-关系/粒度

SSAS-关系/粒度,ssas,ssas-2012,Ssas,Ssas 2012,我有两个事实表,每个表都有一个度量值组,即生产订单和生产订单。生产具有较低粒度的生产信息(在组件级别)ProductionOrder具有较高级别的信息(带有标题数量的订单级别等) 我已经在productionorderid上的两个表之间创建了一个代理键链接。一旦我将Prod ID(来自productiondetailsdim)添加到透视表中,它就会清除实际数量(来自Prod order度量值组),并且我无法合并来自两个度量值组的数量 如何设计两者之间的正确关系?请看我的dim使用图。Produc

我有两个事实表,每个表都有一个度量值组,即生产订单和生产订单。生产具有较低粒度的生产信息(在组件级别)ProductionOrder具有较高级别的信息(带有标题数量的订单级别等)

我已经在productionorderid上的两个表之间创建了一个代理键链接。一旦我将Prod ID(来自productiondetailsdim)添加到透视表中,它就会清除实际数量(来自Prod order度量值组),并且我无法合并来自两个度量值组的数量

如何设计两者之间的正确关系?请看我的dim使用图。Production Details是链接两个事实表的dim,目前DimProductionDetails与Production处于事实关系中。我不确定与生产订单的关系(目前是多对多)

请参见两个表之间的示例数据:

我必须能够复制这种行为:


是否希望在每个产品旁边重复“产品订单”度量值组的全部实际数量?如果多对多关系是正确的。我怀疑一旦我解释了多少对多少的工作,你就会发现问题

当您从product Details维度按产品从prod order度量值组中切片完整实际数量时,它会在公共维度的两个度量值组之间进行运行时联接。例如,如果订单245295的日期为2015年1月1日,而订单245295的生产详细信息的日期为2015年1月8日,则运行时联接将丢失该订单的行,实际数量将显示为空。因此,比较两个度量值组上使用的所有维度,并确保相同顺序的所有行对于这些常用维度具有相同的维度键。例如,如果日期不同,则在DSV中创建一个命名查询,仅从生产事实表中选择与订单事实表匹配的维度列。然后在该命名查询中创建一个新的度量值组,并将新度量值组用作多对多维度中的中间度量值组。(维度使用情况选项卡中的当前多对多单元格应显示新度量值组的名称,而不是现有生产度量值组的名称。)


编辑:如果希望实际数量度量仅在订单级别显示,而在产品级别为空,请尝试以下操作。将多对多关系更改为常规关系,并在选择事实表如何连接到维度的对话框中将维度属性更改为ProductionOrder_SK(不是维度的键),然后选择事实表中的相应列。然后左键单击生产订单度量值组并转到属性窗口,将IgnoreUnrelatedRelationships设置为false。这样,按工作中心或“生产详细信息”维度中低于粒度的属性切片实际数量将显示为空

你好,谢谢你的回复。。。在数据透视表中进行分析时,当我选择行级组件/数量时,如果我想选择实际数量(标题级),我不想为每行(重复项)进行聚合,我只想在订单级进行聚合。这就是我一直坚持的,我明白了。编辑我的答案以反映我编辑了原文,并举例说明。我必须能够显示行级别和标题级别的数量。我无法从您的单行示例中判断您希望它如何运行?每个产品的实际数量应该重复吗?是的,每个产品都应该重复,谢谢你的帮助