0

我有包含 start_date 和 end_date 的表。我想按分钟获取这些列之间的日期差异。还有日期和时间切片器,如果最大日期切片器小于 end_date,我必须获取开始日期和最大日期切片器 + 最大时间切片器之间的日期差。

我为此创建了一个度量,但行总数不正确。我该如何解决?

这是我写的度量;

Zaman 3 = 
var MaxDateTime =MAX(vwDimDate[Date]) + TIME(HOUR(MAX(vwDimTime[Time])), MINUTE(MAX(vwDimTime[Time])), SECOND(MAX(vwDimTime[Time])))
var sonuc1 = SUMX(vwFactATM_STATUS_LOG,DATEDIFF(vwFactATM_STATUS_LOG[STARTING_DATE],vwFactATM_STATUS_LOG[END_DATE],MINUTE))
var sonuc2 = SUMX(vwFactATM_STATUS_LOG,DATEDIFF(vwFactATM_STATUS_LOG[STARTING_DATE],MaxDateTime,MINUTE))
var deger = IF(MaxDateTime>MAX(vwFactATM_STATUS_LOG[END_DATE]),sonuc1,sonuc2)
//var a=MAX(vwFactATM_STATUS_LOG[END_DATE])
return deger

和表格输出;

在此处输入图像描述

如您所见,行总数不正确。我该如何解决?

4

1 回答 1

0

我解决了这个问题。我们需要在“if block”中计算,看看我是如何纠正的

Var MaxDate=CALCULATE(MAX(vwDimDate[Date]) + TIME(HOUR(MAX(vwDimTime[Time])), MINUTE(MAX(vwDimTime[Time])), SECOND(MAX(vwDimTime[Time]))),ALLSELECTED (vwDimDate),ALLSELECTED(vwDimTime))

VAR Tarih=Sumx( vwFactATM_STATUS_LOG, If(MaxDate<vwFactATM_STATUS_LOG[END_DATE], DATEDIFF(vwFactATM_STATUS_LOG[STARTING_DATE],MaxDate, MINUTE) , DATEDIFF(vwFactATM_STATUS_LOG[STARTING_DATE],vwFactATM_STATUS_LOG[END_DATE],MINUTE)))

返回塔里赫

于 2021-05-04T17:32:03.740 回答