如何解决DAX 服务召回率衡量标准
我正在努力在 DAX 中编写/计算此度量。召回率的定义是一周内(关闭日期,7 天期限)对于客户、资产组合的重复服务预订计数(不同预订编号的计数,无论如何都应该是不同的,但以防万一)。所以我出去修理一台机器,如果我在一周内再次被要求为客户修理同一台机器,那么召回 1(如果我在一周内被多次召回,则召回更多)。我用不同的颜色突出显示了这些组。需要过滤掉空资产、关闭时间和空预订编号(这是通过以下代码中 SQL 中的内连接完成的,需要在 DAX 查询中)谢谢!编辑:抱歉,我意识到如果我发布 sql 代码来生成数据会更有帮助,请参见下文:
0
解决方法
如果您首先定义一个计算列,为每个 CloseOn
/Customer
组合提供第一个 Asset
日期,这是最有效的。
FirstClosed =
CALCULATE (
MIN ( WorkOrder[ClosedOn] ),ALLEXCEPT ( WorkOrder,WorkOrder[Customer],WorkOrder[Asset] )
)
然后写一个度量
TotalRecalls =
COUNTROWS (
FILTER (
WorkOrder,WorkOrder[ClosedOn] > WorkOrder[FirstClosed] &&
WorkOrder[ClosedOn] < WorkOrder[FirstClosed] + 7
)
)
但是,如果您愿意,您可以在一个度量内完成所有这些。
TotalRecalls =
VAR AddCol =
ADDCOLUMNS (
WorkOrder,"@FirstClosed",CALCULATE (
MIN ( WorkOrder[ClosedOn] ),WorkOrder[Asset] )
)
)
RETURN
COUNTROWS (
FILTER (
AddCol,WorkOrder[ClosedOn] > [@FirstClosed] &&
WorkOrder[ClosedOn] < [@FirstClosed] + 7
)
)
不管怎样,这就是视觉效果中使用的样子:
,我会先创建一个“Booking Key”列:
Booking Key = [Customer] & "|" & [Asset] & "|" & WEEKNUM ( [ClosedOn] )
然后我将创建一个度量来返回 Booking Key 上修改后的不同计数:
# Repeat Service Bookings =
VAR v_Count = DISTINCTCOUNT ( 'Table'[Booking Key] )
RETURN IF ( v_Count > 1,v_Count - 1 )
我会将 # Repeat Service Bookings 添加到您的表格视觉对象的视觉级别过滤器中,并将过滤器设置为:大于 1。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。