Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
5 years ago
Solved

Measure to sum values from 2 different columns considering different status

Hello Guys,

 

I need to create a measure to sum values from 2 different columns considering the specific status.

 

What I need is: if the "Status Column" is filled with 'Indemnified' I need to consider in the sum the values from the column "Payed Value", but if the "Status Column" is filled with 'Pending', I need to consider in the sum the values from the column "Estimated Loss".

 

For example:

Date of the claimCauseEstimated LossPayed ValueStatus
2020-03-22Electrical Damage $              500,00 $         375,00Indemnified
2020-03-25Robery $          1.500,00 $         750,00Indemnified
2020-05-04Fire $              250,00 $         225,00Indemnified
2020-05-10Fire $          7.500,00 $     7.500,00Indemnified
2020-10-21Fire $              345,00 $         345,00Indemnified
2020-11-13Robery $          4.330,000Pending
2020-12-25Explosion $          1.200,000Pending
2020-12-25Electrical Damage $              450,00 $         337,50Indemnified
2021-01-01Electrical Damage $          3.400,000Pending

 

Thank you,

  • Hi Anonymous 

    You need to be more specific. What is the expected result for the data  above?

    Try

    Measure =
    SUMX (
        Table1,
        IF (
            Table1[Status] = "Indemnified",
            Table1[PaidValue],
            IF ( Table1[Status] = "Pending", Table1[EstimatedLoss] )
        )
    )

     

    Please accept the solution when done and consider giving a thumbs up if posts are helpful. 

    Contact me privately for support with any larger-scale BI needs, tutoring, etc.

     

  • In general, it's better to use filters than IFs inside of an iterator. So I'd suggest an alternative:

     

    NewMeasure =
    CALCULATE (
        SUM ( Table1[Payed Value] ),
        FILTER ( Table1, Table1[Status] = "Indemnified" )
    ) +
    CALCULATE (
       SUM ( Table1[Estimated Loss] ),
       FILTER ( Table1, Table1[Status] = "Pending" )
    )

     

5 Replies

  • AlB's avatar
    AlB
    Icon for Community Champion rankCommunity Champion

    Hi Anonymous 

    You need to be more specific. What is the expected result for the data  above?

    Try

    Measure =
    SUMX (
        Table1,
        IF (
            Table1[Status] = "Indemnified",
            Table1[PaidValue],
            IF ( Table1[Status] = "Pending", Table1[EstimatedLoss] )
        )
    )

     

    Please accept the solution when done and consider giving a thumbs up if posts are helpful. 

    Contact me privately for support with any larger-scale BI needs, tutoring, etc.

     

    • AlexisOlson's avatar
      AlexisOlson
      Icon for Super User rankSuper User

      In general, it's better to use filters than IFs inside of an iterator. So I'd suggest an alternative:

       

      NewMeasure =
      CALCULATE (
          SUM ( Table1[Payed Value] ),
          FILTER ( Table1, Table1[Status] = "Indemnified" )
      ) +
      CALCULATE (
         SUM ( Table1[Estimated Loss] ),
         FILTER ( Table1, Table1[Status] = "Pending" )
      )

       

      • Anonymous's avatar
        Anonymous
        Not applicable

        Thank you so much,

        Your suggestion worked very well !!!

    • Anonymous's avatar
      Anonymous
      Not applicable

      The result of this sum it will represent my "loss ratio" with the insurer, what means that is possible I will face an increase in the renewal cost of this insurance.

       

      Thank you so much,

      Your suggestion worked very well !!!