Forum Discussion

QuantusPools's avatar
QuantusPools
Frequent Visitor
2 years ago
Solved

Calculated Column - New / Lost / Existing Customer

  VAR CurrentYear = YEAR(TODAY()) VAR LastYear = CurrentYear - 1 VAR CurrentYearSales = CALCULATE(SUM(Sales[Subtotal]), FILTER(Sales, YEAR(Sales[Completion Date]) = CurrentYear)) VAR LastYearSales ...
  • QuantusPools's avatar
    2 years ago

    I figured it out (well chatGPT did ๐Ÿ˜‚).  Just had to ask a more detailed question.

    Customer Status =
    VAR CurrentYear = YEAR(TODAY())
    VAR LastYear = CurrentYear - 1
    VAR CustomerID = [Customer ID]  // Replace [Customer ID] with your actual customer identifier column name
    
    RETURN
        IF(
            CALCULATE(COUNTROWS(Sales), FILTER(Sales, YEAR(Sales[Completion Date]) = CurrentYear), Sales[Customer ID] = CustomerID) > 0 &&
            CALCULATE(COUNTROWS(Sales), FILTER(Sales, YEAR(Sales[Completion Date]) = LastYear), Sales[Customer ID] = CustomerID) > 0,
            "Current",
            IF(
                CALCULATE(COUNTROWS(Sales), FILTER(Sales, YEAR(Sales[Completion Date]) = CurrentYear), Sales[Customer ID] = CustomerID) > 0 &&
                CALCULATE(COUNTROWS(Sales), FILTER(Sales, YEAR(Sales[Completion Date]) = LastYear), Sales[Customer ID] = CustomerID) = 0,
                "New",
                IF(
                    CALCULATE(COUNTROWS(Sales), FILTER(Sales, YEAR(Sales[Completion Date]) = CurrentYear), Sales[Customer ID] = CustomerID) = 0 &&
                    CALCULATE(COUNTROWS(Sales), FILTER(Sales, YEAR(Sales[Completion Date]) = LastYear), Sales[Customer ID] = CustomerID) > 0,
                    "Lost",
                    ""
                )
            )
        )