Forum Discussion

kilala's avatar
kilala
Resolver I
4 years ago
Solved

Conditional Calculation Based on Category

Hi all, 

 

I have quite complicated logic that I need to apply.

 

In his scenario, I have table Brand with their revenue amount. 

 

I need to re-allocate "Default" to brand where revenue > 0, except for D. Brand D is automatically excluded from reallocation no matter if its revenue >0.

 

For example:

BrandAmount
A3000
B-2000
C8000
D2000
Default-1000

 

In this case, I need to allocate Default(-1000) to Brand A and C only. How do I do the condition based on logic stated? Please help:(

  • Hi, kilala 

     

    You can try the following methods.

    Measure =
    IF (
        SELECTEDVALUE ( 'Table'[Brand] ) = "D",
        SELECTEDVALUE ( 'Table'[Amount] ),
        IF (
            SELECTEDVALUE ( 'Table'[Amount] ) > 0,
            -1000,
            SELECTEDVALUE ( 'Table'[Amount] )
        )
    )
    

     

    Best Regards,

    Community Support Team _Charlotte

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

4 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    Please Try This

    • kilala's avatar
      kilala
      Resolver I

      Hi Anonymous ,

      thank you for your suggestion, but currently i'm not able to add new column as i connect to live dataset. I can only create measures here. i think to use filter but it cannot return multiple columns. 

       

      • Anonymous's avatar
        Anonymous
        Not applicable

        ok, Try it

        Measure =
        IF (
            SELECTEDVALUE ( 'Table (3)'[Brand] ) = "D",
            SELECTEDVALUE ( 'Table (3)'[Brand] ),
            IF (
                SELECTEDVALUE ( 'Table (3)'[Amount] ) > 0,
                "Default",
                SELECTEDVALUE ( 'Table (3)'[Brand] )
            )
        )
  • v-zhangti's avatar
    v-zhangti
    Community Support

    Hi, kilala 

     

    You can try the following methods.

    Measure =
    IF (
        SELECTEDVALUE ( 'Table'[Brand] ) = "D",
        SELECTEDVALUE ( 'Table'[Amount] ),
        IF (
            SELECTEDVALUE ( 'Table'[Amount] ) > 0,
            -1000,
            SELECTEDVALUE ( 'Table'[Amount] )
        )
    )
    

     

    Best Regards,

    Community Support Team _Charlotte

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.