Forum Discussion

Oros's avatar
Oros
Post Prodigy
3 years ago
Solved

If statement

Hello,    I have a product table and a customer table. (please see tables below)   The product table list the pricing level for each product.  The pricing level also uses customer code as a prici...
  • Greg_Deckler's avatar
    Greg_Deckler
    3 years ago

    Oros Updated PBIX attached. 

    Table2 = 
    ADDCOLUMNS(
        GENERATE(DISTINCT('Customer'[Customer #]),DISTINCT('Product'[PRODUCT])),
        "Price",
                VAR __Customer = [Customer #]
                VAR __Product = [PRODUCT]
                VAR __PricingLevel = CALCULATE(MAX('Customer'[PRICING LEVEL]), 'Customer'[Customer #] = __Customer)
                VAR __Table = CALCULATE(COUNTROWS('Product'),FILTER('Product', [PRODUCT] = __Product && CONTAINSSTRING([PRICING LEVEL],__Customer))) + 0
            RETURN
                IF(
                    __Table = 0,
                    CALCULATE(MAX('Product'[PRICE]), FILTER('Product', [PRODUCT] = __Product && [PRICING LEVEL] = __PricingLevel)),
                    CALCULATE(MAX('Product'[PRICE]),FILTER('Product', [PRODUCT] = __Product && CONTAINSSTRING([PRICING LEVEL],__Customer)))
                )
    )