Power BI DAX резюмирует и фильтрует по дате - PullRequest
0 голосов
/ 17 июня 2020

У меня есть отчет Power BI, и я хочу найти последнюю дату, когда произошло какое-либо действие, которое имело значение, отличное от 0. В следующем примере:

|-------------|------------|
|  ActionDate |   ActionAmt|
|-------------|------------|
| 1-Feb       |  -100      |
|-------------|------------|
| 1-Feb       |   100      |
|-------------|------------|
| 10-Jan      |   150      |
|-------------|------------|

Я хочу вернуть дату 10 января, а не 1 февраля, поскольку 10 января - это первое значение, отличное от 0, суммированное ActionDay. Мой код возвращает 1 февраля:

Last Action Date =
VAR maxdatekey =
    CALCULATE ( MAX ( 'Action'[ActionDateKey] ), 'Action'[ActionAmount] > 0 )
RETURN
    IF (
        maxdatekey,
        FORMAT (
            LOOKUPVALUE ( 'Date'[DateValue], 'Date'[DateKey], maxdatekey ),
            "dd-MMM-yyyy"
        )
    )

Как мне дополнительно сгруппировать это, чтобы исключить итоговые 0 дней?

1 Ответ

1 голос
/ 17 июня 2020

Я думаю, вы ищете что-то вроде этого, где вы суммируете по дате при вычислении суммы:

LastActionDate =
VAR Summary =
    SUMMARIZE (
        'Date',
        'Date'[DateValue],
        "Amt", CALCULATE ( SUM ( 'Action'[ActionAmount] ) )
    )
RETURN
    FORMAT (
        MAXX ( FILTER ( Summary, [Amt] > 0 ), 'Date'[DateValue] ),
        "dd-MM-yyyy"
    )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...