Forum Discussion

JazminMarquez's avatar
JazminMarquez
Frequent Visitor
9 years ago
Solved

IF three condition.

I have a measure in which I need depending on the percentage range, show an image that is on the web, so far only the one that showed me 1 image, does not fit into the other conditions.

 

I have a calculated field that brings me the utility percentage of the company.

 

The conditions are:

 

show image Green= 100% to infinity
show image Yellow= 85% to 99%
show image Red= 0% - 84%

 

For Example:

If the result of the operation  utility is: 75% will show the image yellow

 

I use this measure:

 

 

 

Total_IMG = IF(AND([Totalutitlity %]>=0, [Totalutility%]<=.84),"https://cdn.pixabay.com/photo/2013/07/13/10/27/hand-157251_960_720.png",IF(AND([Totalutility %]>=.85,[Total pedidos %]<=.99),"http://www.clker.com/cliparts/5/2/5/8/13476359851958638477thumbs-down-icon-red-hi-hi.png","http://www.clker.com/cliparts/l/J/Q/d/1/X/yellow-thumbs-up-md.png")))

 

 

The image loads on image display on img visualitation.

 

Thx, for ur help!!

 

 

  • Anonymous's avatar
    Anonymous
    9 years ago

    Hi JazminMarquez,

    I am not sure what is your sample data, but you can check if the following steps return your expected result.

    1. Create a new table using the following formula.

    image  = 
    UNION (
        ROW ( "state", "Green",
        "ImgURL", "https://cdn.pixabay.com/photo/2013/07/13/10/27/hand-157251_960_720.png" ),
        ROW ( "state", "Red",
        "ImgURL", "http://www.clker.com/cliparts/5/2/5/8/13476359851958638477thumbs-down-icon-red-hi-hi.png" ),
    ROW ( "state", "yellow",
        "ImgURL", "http://www.clker.com/cliparts/l/J/Q/d/1/X/yellow-thumbs-up-md.png" )
    )


    2. Create a new measure using the following formula.

    LinkedMeasure  = 
    SUMX (
        VALUES ( 'image '[state] ),
        IF (
            (
                [Totalutility%]>= 0 && [Totalutility%] <= 0.84
                    && VALUES ( 'image '[state] ) ="Green"
            )
                || (
                   [Totalutility%] >= 0.85 && [Totalutility%] <= 0.99
                        && VALUES ( 'image '[state] ) = "Red"
                )
                || (
                   [Totalutility%] >=1
                        && VALUES ( 'image '[state] ) = "yellow"
                ),
            1
        )
    )

    3. Display image in ChicletSlicer. Image will change based on  the value of [Totalutility%] Measure.


    Reference:
    http://sqljason.com/2015/11/custom-indicators-in-power-bi-using.html

     

     

    Thanks,
    Lydia Zhang

11 Replies

  • Sean's avatar
    Sean
    Community Champion

    How about a SWITCH statement which is interannly converted into nested IFs? :smileyhappy:

     

    Total_IMG =
    SWITCH (
        TRUE (),
        [Totalutility %] >= 0
            && [Totalutility%] <= .84, "https://cdn.pixabay.com/photo/2013/07/13/10/27/hand-157251_960_720.png",
        [Totalutility %] >= .85
            && [Total pedidos %] <= .99, "http://www.clker.com/cliparts/5/2/5/8/13476359851958638477thumbs-down-icon-red-hi-hi.png",
        "http://www.clker.com/cliparts/l/J/Q/d/1/X/yellow-thumbs-up-md.png"
    )
    • JazminMarquez's avatar
      JazminMarquez
      Frequent Visitor

      Great solution, but still not working, I don't know why... :mansad:

      • Sean's avatar
        Sean
        Community Champion

        Which part doesn't work?

         

        Whats is the  [Totalutility %] Measure formula?