簡體   English   中英

Power BI 用戶關系作為計算列加入 Not Measure

[英]power BI user relationship join as a calculated column Not Measure

我有兩張桌子

 Primary Diag
L021
L022
L023
L024
L025
L026

和 Look_Up_New

ICD ICD2    Inclusion Type
L021    L021    3
L022    L022    2
L023    L023    2
L024    L024    4
L025    L025    5
L026    L026    4
L027    L029    5

有兩種關系,一種是活躍的,另一種不是在此處輸入圖片說明

當我為活動的一個寫下面的 dax 時,活動的一個是ICD ,它工作正常

Diag 1 = IF(diag[Primary Diag]=BLANK(),"X",
            IF(RELATED(Look_Up_New[ICD]) = BLANK(),"X",
              RELATED(Look_Up_New[Inclusion Type])))

但是當我為不活躍的人寫作時,我得到了一個錯誤

Diag 2 = CALCULATE(IF(diag[Sec. Diag 2]=BLANK(),"X",
            IF(RELATED(Look_Up_New[ICD2]) = BLANK(),"X",
              RELATED(Look_Up_New[Inclusion Type]))),
              USERELATIONSHIP(Look_Up_New[ICD2],Diag[Primary Diag]))

在此處輸入圖片說明

我該如何糾正它

失敗的原因是 CALCULATE 強制上下文轉換(即將行上下文轉換為過濾器上下文),這意味着 RELATED 不再具有它需要操作的行上下文。

請注意文檔中的此評論:

RELATED 函數需要一個行上下文; 因此,它只能用於計算列表達式,其中當前行上下文是明確的,或者作為使用表掃描函數的表達式中的嵌套函數。 表掃描函數(例如 SUMX)獲取當前行值的值,然后掃描另一個表以查找該值的實例。

我建議采用稍微不同的方法:

Diag 1 = 
CALCULATE ( SELECTEDVALUE ( Look_Up_New[Inclusion Type], "X" ) )

Diag 2 = 
CALCULATE (
    SELECTEDVALUE ( Look_Up_New[Inclusion Type], "X" ),
    USERELATIONSHIP ( Diag[Primary Diag], Look_Up_New[ICD2] )
)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM