Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
6 years ago
Solved

Simple measure

Hi,

 

I want a measure that gives me the count of Client ID that have made a transaction in the last 3 months. My table looks like this:

 

Client IDOperationDate
1Last transaction8/30/2019
2Opening8/30/2019
3Closure8/30/2019
4Last transaction8/30/2019
5Opening8/29/2019
6Closure8/28/2019
7Last transaction8/5/2019
8Last transaction8/24/2019
9Last transaction8/24/2019

 

The measure should count distinct Client ID, filter Operation in {"Last Transacion"} and then filter all the dates from today until 3 months ago.

 

 

Thanks in advance,

 

IC

  • Anonymous's avatar
    Anonymous
    6 years ago

    HI Anonymous ,

    I'd like to suggest you to use date and today functions to looping records and get last three month distinct count based on current date:

    Measure =
    CALCULATE (
        COUNTROWS ( VALUES ( Table[Client ID] ) ),
        FILTER (
            ALLSELECTED ( Table ),
            [Operation] = "Last transaction"
                && [Date]
                    >= DATE ( YEAR ( TODAY () ), MONTH ( TODAY () ) - 3, DAY ( TODAY () ) )
                && [Date] <= TODAY ()
        )
    )
    

    Regards,

    Xiaoxin Sheng

2 Replies

  • Hi,

    Create a Calendar Table and build a relationship from the Date column of the Data Table to the Date column of the Calendar Table.  Try this measure

    Measure = COUNTROWS(FILTER(SUMMARIZE(CALCULATETABLE(Values(Data[Client ID]),Data[Operation]="Last Transaction"),[Client ID],"ABCD",CALCULATE(DISTINCTCOUNT(Data[Client ID]),DATESBETWEEN(Calendar[Date],EDATE(TODAY(),-2),TODAY())),[ABCD]>0))

    Hope this helps.

  • Anonymous's avatar
    Anonymous
    Not applicable

    HI Anonymous ,

    I'd like to suggest you to use date and today functions to looping records and get last three month distinct count based on current date:

    Measure =
    CALCULATE (
        COUNTROWS ( VALUES ( Table[Client ID] ) ),
        FILTER (
            ALLSELECTED ( Table ),
            [Operation] = "Last transaction"
                && [Date]
                    >= DATE ( YEAR ( TODAY () ), MONTH ( TODAY () ) - 3, DAY ( TODAY () ) )
                && [Date] <= TODAY ()
        )
    )
    

    Regards,

    Xiaoxin Sheng