Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
6 years ago

Group by and show earliest date

Hello,

I have the next table:

ReminderRowIDReminderIDContractNrContractStartDateReminderDateCustomerID
1R1C11-1-20193-1-20191001
2R1C11-1-20193-1-20191001
3R2C23-1-201910-2-20191002
4R3C23-1-201911-3-20191002
5R3C23-1-201911-3-20191002
6R4C35-1-201910-4-20191003
7R5C35-1-20195-6-20191003

 

I would like to group by all unique contractnumbers in the table above and show the FIRST reminderdate. After that I would like to calculate the datediff between the contractstartdate and the first reminderdate. 

 

So it will look like this:

ContractnrContractStartDateFIRST ReminderdateDaysBetween
C11-1-20193-1-20192
C23-1-201910-2-201938
C35-1-201910-4-201995

 

Last of all, I would like to calculate the number of customers that have received their first reminder on a contract withing 30 days...

Could somebody help me fix this business case with DAX?

Thank you!

6 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi Anonymous 

    New table=Summarize(table,table[ContractNr],table[ContractStartdate],table[Reminderdate],"Between",datediff(max(table[ContractStartdate]),max(table[Reminderdate]),Day))

     

    Thanks & regards,
    Pravin Wattamwar
    www.linkedin.com/in/pravin-p-wattamwar

    If I resolve your problem Mark it as a solution and give kudos.

     

    • Anonymous's avatar
      Anonymous
      Not applicable

      Hi Anonymous 
      unfortunately it didn't work out for me

      • Anonymous's avatar
        Anonymous
        Not applicable

        Hi Anonymous  Have you tried the solution which i have suggested?

         

        Thanks,

        Pravin

  • az38's avatar
    az38
    Icon for Community Champion rankCommunity Champion

    Hi Anonymous 

    try a measure

     

    DaysBetween = 
    var _firstReminder = CALCULATE(MIN('Table'[ReminderDate]),ALLEXCEPT('Table','Table'[ContractNr]))
    return
    datediff(selectedvalue('Table'[ContractStartDate]),_firstReminder,DAY)

    and measure t count customers within 30 days

    COUNTCUSTOMER = calculate(DISTINCTCOUNT('Table'[CustomerID]),FILTER(ALL('Table'),[DaysBetween]<=30))

     

  • az38's avatar
    az38
    Icon for Community Champion rankCommunity Champion

    Anonymous 

    my above solution returns you result that you asked for