Power BI 维度计算

问题描述 投票:0回答:1

我是 Power BI 新手。 我有以下要求。 有 2 个表:1 个事实和 1 个维度。

事实表:

尺寸表:

我必须制定措施

  1. KF004=KF003/KF002 即(rep_item_id=3的货币总和)/(rep_item_id=2的货币总和)
  2. KF005=KF001*KF002 即(rep_item_id=1的货币总和)乘以(rep_item_id=2的货币总和)
  3. KF006= if KF003>0 then 1-(KF003/KF001) else 0.即,如果rep_item_id的货币总和大于0,则(1 - (rep_item_id=3的货币总和)/(rep_item_id的货币总和rep_item_id =1) 否则 0.

用于报告的 Power BI 视觉效果:

这是示例数据集。请需要有关如何实施这一点的帮助。 来源是SAP。我们正在尝试将报告从 SAC 模型转移到 Power BI

powerbi dax visualization powerquery m
1个回答
0
投票

我不能说我完全理解你的目标,因为这两个表没有意义。无论如何,我想你可以尝试...
创建一项措施:

Tot Currency = SUM('FactTable'[Currency])

创建另一项措施(这是主要措施):

KF Measure = 
  var v= SWITCH(
    SELECTEDVALUE('DimTable'[Description]),
    "KF001", [Tot Currency],
    "KF002", [Tot Currency],
    "KF003", [Tot Currency],
    "KF004", DIVIDE( [Tot Currency]('DimTable'[Description] = "KF003"), [Tot Currency]('DimTable'[Description] = "KF002") ),
    "KF005", [Tot Currency]('DimTable'[Description] = "KF001") * [Tot Currency]('DimTable'[Description] = "KF002"),
    "KF006",
      IF(
        [Tot Currency]('DimTable'[Description] = "KF003") > 1,
        DIVIDE( [Tot Currency]('DimTable'[Description] = "KF003"), [Tot Currency]('DimTable'[Description] = "KF001") ),
        0
      )
    )
  RETURN v

仅供参考:

[measure](filter)
CALCULATE([measure], filter)

的简写

也许您应该首先为每个计算创建一个度量,例如:

KF001 = CALCULATE(SUM('FactTable'[Currency]), 'FactTable'[rep_item_id] = 1)
KF002 = CALCULATE(SUM('FactTable'[Currency]), 'FactTable'[rep_item_id] = 2)
KF003 = CALCULATE(SUM('FactTable'[Currency]), 'FactTable'[rep_item_id] = 3)
KF004 = DIVIDE( [KF003], [KF002] )
KF005 = [KF001] * [KF002]
KF006 = IF( [KF003] > 1, 1 - DIVIDE([KF003], [KF001]), 0 )
© www.soinside.com 2019 - 2024. All rights reserved.