创建度量以根据另一个 table 中的 TO 和 FROM 数字计算行
Create measure to calculate rows based on TO and FROM figures in another table
我有一份每周获取数据的报告。我有一个星期 table,其中包含星期和日期以及使用以下 table 设置的关系。
我有一个队列摘要table;
我有 ConciergeHours table;
礼宾服务时间每天都不同,所以我将开始和结束时间保存在 table 中,以便我们可以动态更新它。
我正在尝试创建一个度量来计算我们在 ConciergeHours table 的时间之间进行了多少互动。请记住,这是一份每周报告,因此在一周中的任何一天,时间可能会有所不同。
我们要计算的是;
ConciergeHours 开始时间和结束时间之间队列 LinkConciergeVQ(QueueSummary table)接受的交互次数 table减去开始时间和结束时间之间队列 LinkVQ(QueueSummary table)提供的交互次数ConciergeHours 结束时间 table
我目前有这样的措施。它有效,但没有正确遵守时间间隔,我知道这是 MIN、MAX 的结果。
m_deflections =
CALCULATE (
SUM ( QueueSummary[s_accepted] ),
QueueSummary[queue] = "LinkConciergeVQ",
filter(QueueSummary, [hour] >= min(ConciergeHours[starthour])),
filter(QueueSummary, [hour] < max(ConciergeHours[endhour]))
)
- CALCULATE (
SUM ( QueueSummary[s_offered] ),
QueueSummary[queue] = "LinkVQ",
filter(QueueSummary, [hour] >= min(ConciergeHours[starthour])),
filter(QueueSummary, [hour] < max(ConciergeHours[endhour]))
)
希望我解释正确。
如果有人可以提供任何帮助!?
非常感谢
对于每个 CALCULATE,我会将 2 对 FILTER 函数折叠成一个 FILTER。这将针对 starthour 和 endhour 组合应用过滤器(&& 表示 AND),我希望它们当前应用为 OR 逻辑,因此没有任何效果。
沿着这条线:
m_deflections =
CALCULATE (
SUM ( QueueSummary[s_accepted] ),
QueueSummary[queue] = "LinkConciergeVQ",
FILTER (
QueueSummary,
[hour] >= MIN ( ConciergeHours[starthour] )
&& [hour] < MAX ( ConciergeHours[endhour] )
)
)
- CALCULATE (
SUM ( QueueSummary[s_offered] ),
QueueSummary[queue] = "LinkVQ",
FILTER (
QueueSummary,
[hour] >= MIN ( ConciergeHours[starthour] )
&& [hour] < MAX ( ConciergeHours[endhour] )
)
)
不确定我是否理解您的 table 关系,但如果它是 1:* 从 ConciergeHours 到 QueueSummary 通过日期,那么我认为您可以使用此措施,或者至少它让您走上正轨,我希望:
m_deflections =
var s_accept =
SUMX(
'ConciergeHours',
var startH = 'ConciergeHours'[startHour]
var endH = 'ConciergeHours'[endHour]
return
CALCULATE(
SUM('QueueSummary'[s_accepted]),
'QueueSummary'[hour] >= startH && 'QueueSummary'[hour] < endH
)
)
var s_offered =
SUMX(
'ConciergeHours',
var startH = 'ConciergeHours'[startHour]
var endH = 'ConciergeHours'[endHour]
return
CALCULATE(
SUM('QueueSummary'[s_offered]),
'QueueSummary'[hour] >= startH && 'QueueSummary'[hour] < endH
)
)
return
s_accepted - s_offered
我有一份每周获取数据的报告。我有一个星期 table,其中包含星期和日期以及使用以下 table 设置的关系。
我有一个队列摘要table;
我有 ConciergeHours table;
礼宾服务时间每天都不同,所以我将开始和结束时间保存在 table 中,以便我们可以动态更新它。
我正在尝试创建一个度量来计算我们在 ConciergeHours table 的时间之间进行了多少互动。请记住,这是一份每周报告,因此在一周中的任何一天,时间可能会有所不同。
我们要计算的是;
ConciergeHours 开始时间和结束时间之间队列 LinkConciergeVQ(QueueSummary table)接受的交互次数 table减去开始时间和结束时间之间队列 LinkVQ(QueueSummary table)提供的交互次数ConciergeHours 结束时间 table
我目前有这样的措施。它有效,但没有正确遵守时间间隔,我知道这是 MIN、MAX 的结果。
m_deflections =
CALCULATE (
SUM ( QueueSummary[s_accepted] ),
QueueSummary[queue] = "LinkConciergeVQ",
filter(QueueSummary, [hour] >= min(ConciergeHours[starthour])),
filter(QueueSummary, [hour] < max(ConciergeHours[endhour]))
)
- CALCULATE (
SUM ( QueueSummary[s_offered] ),
QueueSummary[queue] = "LinkVQ",
filter(QueueSummary, [hour] >= min(ConciergeHours[starthour])),
filter(QueueSummary, [hour] < max(ConciergeHours[endhour]))
)
希望我解释正确。
如果有人可以提供任何帮助!?
非常感谢
对于每个 CALCULATE,我会将 2 对 FILTER 函数折叠成一个 FILTER。这将针对 starthour 和 endhour 组合应用过滤器(&& 表示 AND),我希望它们当前应用为 OR 逻辑,因此没有任何效果。
沿着这条线:
m_deflections =
CALCULATE (
SUM ( QueueSummary[s_accepted] ),
QueueSummary[queue] = "LinkConciergeVQ",
FILTER (
QueueSummary,
[hour] >= MIN ( ConciergeHours[starthour] )
&& [hour] < MAX ( ConciergeHours[endhour] )
)
)
- CALCULATE (
SUM ( QueueSummary[s_offered] ),
QueueSummary[queue] = "LinkVQ",
FILTER (
QueueSummary,
[hour] >= MIN ( ConciergeHours[starthour] )
&& [hour] < MAX ( ConciergeHours[endhour] )
)
)
不确定我是否理解您的 table 关系,但如果它是 1:* 从 ConciergeHours 到 QueueSummary 通过日期,那么我认为您可以使用此措施,或者至少它让您走上正轨,我希望:
m_deflections =
var s_accept =
SUMX(
'ConciergeHours',
var startH = 'ConciergeHours'[startHour]
var endH = 'ConciergeHours'[endHour]
return
CALCULATE(
SUM('QueueSummary'[s_accepted]),
'QueueSummary'[hour] >= startH && 'QueueSummary'[hour] < endH
)
)
var s_offered =
SUMX(
'ConciergeHours',
var startH = 'ConciergeHours'[startHour]
var endH = 'ConciergeHours'[endHour]
return
CALCULATE(
SUM('QueueSummary'[s_offered]),
'QueueSummary'[hour] >= startH && 'QueueSummary'[hour] < endH
)
)
return
s_accepted - s_offered