Forum Discussion

Boycie92's avatar
Boycie92
Icon for Resolver I rankResolver I
8 years ago
Solved

First and Last Date a product was bought

Hi,   I am hoping someone could help.   I have a table that contains product ID (numerous different products) and Transaction Date   I want to be able to identify the First Date a product was...
  • BraneyBI's avatar
    BraneyBI
    8 years ago

    Could put this in one column, but is easier to see in three: 

    Earlier has the rank from earliest (1) to latest (N), Latest is reversed. 

     

    Earlier = CALCULATE(COUNTROWS(Purchases),
        FILTER(ALL(Purchases), Purchases[Product] = EARLIER(Purchases[Product])&&Purchases[Purchase date] <= EARLIER(Purchases[Purchase date]))

     

    Later = CALCULATE(COUNTROWS(Purchases),
        FILTER(ALL(Purchases), Purchases[Product] = EARLIER(Purchases[Product])&&Purchases[Purchase date] >= EARLIER(Purchases[Purchase date]))

     

    Status = IF([Earlier]=1, "Earliest",IF([Later]=1,"Latest",BLANK()))

  • Vvelarde's avatar
    Vvelarde
    8 years ago

    Boycie92

     

    Hi, Please try with this Calculated Column:

     

    Identifier =
    VAR FirstTransactionDate =
        CALCULATE (
            FIRSTDATE ( Table1[Transaction Date] ),
            FILTER ( Table1, Table1[Product ID] = EARLIER ( Table1[Product ID] ) )
        )
    VAR LastTransactionDate =
        CALCULATE (
            LASTDATE ( Table1[Transaction Date] ),
            FILTER ( Table1, Table1[Product ID] = EARLIER ( Table1[Product ID] ) )
        )
    RETURN
        SWITCH (
            TRUE (),
            Table1[Transaction Date] = FirstTransactionDate, "First",
            Table1[Transaction Date] = LastTransactionDate, "Last",
            BLANK ()
        )

     

    Regards

     

    Victor

    Lima - Peru