如何创建Power Bi度量以根据唯一的序列号计算首过合格率

时间:2019-07-11 19:48:47

标签: powerbi dax

我需要创建一个基于功率的度量,该度量基于唯一的序列号来计算首过合格率(FPY)。

Measure (FPY) = 
(Count of unique serial numbers that dont have a "Fail" result) 
divided by 
(Count of total amount of unique serial numbers)

然后可以将该度量绘制在可以由日期范围切片器动态过滤的图表上:

enter image description here

2 个答案:

答案 0 :(得分:0)

这应该可以解决问题:

FPY =
VAR FailedSerialNumbers =
    CALCULATETABLE (
        VALUES ( 'Table'[Serial Number] ),
        FILTER ( ALL ( 'Table'), 'Table'[RESULT] = "FAIL" )
    )
VAR SerialNumbers =
    VALUES ( 'Table'[Serial Number] )
VAR FPYResult =
    CALCULATE (
        DISTINCTCOUNT ( 'Table'[Serial Number] ),
        'Table'[Serial Number] IN EXCEPT ( SerialNumbers, FailedSerialNumbers )
    )
VAR SerialNumberVolume =
    CALCULATE ( DISTINCTCOUNT ( 'Table'[Serial Number] ) )
RETURN
    DIVIDE ( FPYResult, SerialNumberVolume )

产生以下内容:

enter image description here

此解决方案使用两个表变量,一个包含失败的序列号,另一个包含所有序列号。使用这些表,我可以使用EXCEPT函数提取从未失败的所有序列号。一旦计算出该值,我们就将其除以总体积。

希望对您有帮助!

答案 1 :(得分:0)

这是另一种方法:

First Pass Yield = 
VAR distinctCountTotal =
    DISTINCTCOUNT ( 'Table'[Serial Number] )
VAR distinctCountFail =
    CALCULATE ( DISTINCTCOUNT ( 'Table'[Serial Number] ), 'Table'[Result] = "Fail" )
RETURN
    DIVIDE ( distinctCountTotal - distinctCountFail, distinctCountTotal )

enter image description here