2017-02-15 92 views
1

我有一堆日常交易,我希望能够查看给定日期的所有交易,并且如果PAST_DUE列= 1,那么我计算其它值“T。PowerBI - 按天汇总并计数如果

这里是计算列,我一直在努力,没有产生正确的数字。

Lines = 
VAR RowDate = opr_shipments[SHIP_DATE] 
RETURN 
    CALCULATE (
     COUNT(opr_shipments[Orders]), 
     FILTER (
      opr_shipments, 
      opr_shipments[SHIP_DATE] <= RowDate 
       && DAY (opr_shipments[SHIP_DATE]) = DAY (RowDate) 
     ), FILTER(opr_shipments, opr_shipments[PAST_DUE] = 1) 
    ) 

我敢肯定我没有正确地做好日常的分组,我有一个日历表,我可以链接到,只是不知道该功能应该是什么样子。

我的表: enter image description here

日历表: enter image description here

订单表 enter image description here enter image description here

回答

0

不确定日历表的样子,所以我创建了一个FR om出货日期使用:

Calendar = CALENDAR(MIN(opr_shipments[SHIP_DATE]), MAX(opr_shipments[SHIP_DATE])) 

表格之间不需要特别的关系。

tables

然后订单的总数量由下式计算:

TotalOrders = 
CALCULATE(
    COUNT(opr_shipments[Orders]), 
    FILTER(
     opr_shipments, 
     opr_shipments[SHIP_DATE] = 'Calendar'[Date] && 
     opr_shipments[PAST_DUE] = 1 
    ) 
) + 0 

而结果将是如下:

result

P.S.不知道你在做什么计算,以防你想用SUM(opr_shipments[Orders])代替COUNT(opr_shipments[Orders])

+0

感谢您的回复,我用我的表格图像更新了我的问题。当我实施你的解决方案时,我收到以下错误:无法确定表'日历'中'Date'列的单个值。当度量公式引用包含许多值但未指定聚合的列(如min,max,count或sum)以获得单个结果时,可能会发生这种情况。 – xXPhenom22Xx

+0

@ xXPhenom22Xx你得到这个错误的确切步骤是?你有没有试过我的'Calendar'表达式来创建'Calculated Table'(而不是'Column')? –

+0

我使用您提交的公式作为名为LateLines的新计算列。我已经有一个名为日历的日期表,所以没有必要做任何事情。 – xXPhenom22Xx