DAX 帮助!查找值并获取特定事件的最新条目
DAX help ! Lookup Value and get Latest Entry for specific Incident
我在 PowerBI(事件)和(突变)中有 2 个相关的 table。事件 table 看起来像这样:
IncidentID
Incident Number
Date
ResolvedByID
ClosedByID
{123}
I000123
01/01/2018
DAX01
DAX02
突变 table 看起来像这样:
ID
StatusID
Date
OperatorID
ID_Resolved
ID_Closed
{123}
{OPE}
01/01/2018
{JCK}
DAX04
DAX05
{123}
{RES}
02/01/2018
{JNE}
DAX04
DAX05
{123}
{CLO}
03/01/2018
{JON}
DAX04
DAX05
{123}
{REO}
03/01/2018
{JNE}
DAX04
DAX05
{123}
{CLO}
04/01/2018
{JCK}
DAX04
DAX05
{124}
{OPE}
01/01/2018
{JNE}
DAX04
DAX05
要计算 ID_Resolved 和 ID_Closed(DAX04 和 DAX05),我使用公式:
ID_Closed = IF(Mutation[statusID]="{CLO}";Mutation[ID];CONCATENATE(Mutation[ID];Mutation[statusID]))
ID_Resolved = IF(Mutation[statusID]="{RES}";Mutation[ID];CONCATENATE(Mutation[ID];Mutation[statusID]))
例如,对于 Dax05,每个 CLO 的 StatusID 现在都具有值 {123},另一个不匹配 IncidentID 并且具有值 {123}{OTHERNAME}
现在要计算 ResolvedByID (Dax01),因为 Mutation table 中只有 1 个 {RES},我可以使用:
ResolvedByID = LOOKUPVALUE(Mutation[operatorID];Mutation[ID_Resolved];Incident[incidentID])
ClosedByID 比较复杂,有多个{CLO}值。当我使用与 ResolvedByID 相同的公式时,出现错误消息:
A Table of Multiple values was supplied.
现在如何获取此单元格中最新日期的值? {JCK}
我添加了我的 PowerBi 文件作为参考
https://drive.google.com/open?id=1dygHLYMPYJS_d5qjWol2t7fswNCTuBmM
您可以计算最新日期并将其添加到您的查询中:
ClosedByID =
VAR MaxDate = MAXX(FILTER(Mutation; Mutation[ID_Closed] = Incident[incidentID]);
Mutation[Date])
RETURN LOOKUPVALUE(Mutation[operatorID];
Mutation[ID_Closed]; Incident[incidentID];
Mutation[Date]; MaxDate)
我在 PowerBI(事件)和(突变)中有 2 个相关的 table。事件 table 看起来像这样:
IncidentID
Incident Number
Date
ResolvedByID
ClosedByID
{123}
I000123
01/01/2018
DAX01
DAX02
突变 table 看起来像这样:
ID
StatusID
Date
OperatorID
ID_Resolved
ID_Closed
{123}
{OPE}
01/01/2018
{JCK}
DAX04
DAX05
{123}
{RES}
02/01/2018
{JNE}
DAX04
DAX05
{123}
{CLO}
03/01/2018
{JON}
DAX04
DAX05
{123}
{REO}
03/01/2018
{JNE}
DAX04
DAX05
{123}
{CLO}
04/01/2018
{JCK}
DAX04
DAX05
{124}
{OPE}
01/01/2018
{JNE}
DAX04
DAX05
要计算 ID_Resolved 和 ID_Closed(DAX04 和 DAX05),我使用公式:
ID_Closed = IF(Mutation[statusID]="{CLO}";Mutation[ID];CONCATENATE(Mutation[ID];Mutation[statusID]))
ID_Resolved = IF(Mutation[statusID]="{RES}";Mutation[ID];CONCATENATE(Mutation[ID];Mutation[statusID]))
例如,对于 Dax05,每个 CLO 的 StatusID 现在都具有值 {123},另一个不匹配 IncidentID 并且具有值 {123}{OTHERNAME}
现在要计算 ResolvedByID (Dax01),因为 Mutation table 中只有 1 个 {RES},我可以使用:
ResolvedByID = LOOKUPVALUE(Mutation[operatorID];Mutation[ID_Resolved];Incident[incidentID])
ClosedByID 比较复杂,有多个{CLO}值。当我使用与 ResolvedByID 相同的公式时,出现错误消息:
A Table of Multiple values was supplied.
现在如何获取此单元格中最新日期的值? {JCK}
我添加了我的 PowerBi 文件作为参考
https://drive.google.com/open?id=1dygHLYMPYJS_d5qjWol2t7fswNCTuBmM
您可以计算最新日期并将其添加到您的查询中:
ClosedByID =
VAR MaxDate = MAXX(FILTER(Mutation; Mutation[ID_Closed] = Incident[incidentID]);
Mutation[Date])
RETURN LOOKUPVALUE(Mutation[operatorID];
Mutation[ID_Closed]; Incident[incidentID];
Mutation[Date]; MaxDate)