我有一个有4个变量的度量,它的最终乘积(FixedBooleanValue)是如果0返回true,否则返回false。
如果转换为自己的度量,return之前的所有四个变量都将按组织正确过滤,而且这只是过滤时似乎忽略的最终度量。
这里的关系是:
Agreement[AgreementKey]  1 - * Agreement Conditions[AgreementKey]
Calendar[DateKey] 1 - * 'Agreement Conditions'[DateKey]
Organisation[OrganisationKey 1 -* 'Agreement Conditions'[OrganisationKey]
措施是:
Discount Fixed Boolean :=
VAR Margin =
    CALCULATE (
        AVERAGE ( 'Agreement Conditions'[Discount Margin Pct] ),
        LASTNONBLANK (
            'Calendar'[ActualDate],
            AVERAGE ( 'Agreement Conditions'[Discount Margin Pct] )
        )
    )
VAR Minimum =
    CALCULATE (
        AVERAGE ( 'Agreement Conditions'[Discount Minimum Pct] ),
        LASTNONBLANK (
            'Calendar'[ActualDate],
            AVERAGE ( 'Agreement Conditions'[Discount Minimum Pct] )
        )
    )
VAR BaseRate =
    CALCULATE (
        AVERAGE ( 'Agreement Conditions'[Discount Base Rate Pct] ),
        LASTNONBLANK (
            'Calendar'[ActualDate],
            AVERAGE ( 'Agreement Conditions'[Discount Base Rate Pct] )
        )
    )
VAR FixedBooleanValue = Margin + Minimum + BaseRate
RETURN
    IF ( FixedBooleanValue = 0, TRUE, FALSE )因此,出于某种原因,过滤器上下文不会应用于最终的if(),并且表现出类似于交叉联接的行为,因为所有协议密钥都出现在所有组织的旁边。
如果有人指出我的错误所在,我将不胜感激。
发布于 2019-05-18 08:56:29
当FixedBooleanValue为空/空时,与零的比较也是正确的。请尝试执行以下操作,以便协议密钥和组织的无意义组合不会返回True
RETURN
  IF ( 
    NOT(ISBLANK(FixedBooleanValue)),
    FixedBooleanValue = 0
  )基本上,如果为FixedBooleanValue=0,该返回子句将返回True,否则将返回False。但是如果它是空的,它将返回空白(因为省略if的第三个参数表示空白)。
https://stackoverflow.com/questions/56186898
复制相似问题