Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
9 years ago
Solved

Handling infinity value

Hello,

 

I am currently using a measure to calculate Sales Rate. The calculation is as follows FactTable[X]/FactTable[Y]. The X and Y come from different Fact tables. If Y is not present for the corresponding date, I am getting a value of infinity. It would be good to have nothing show up then to have infinity value. How do I achieve this?

 

Thanks in advance

  • Anonymous's avatar
    Anonymous
    9 years ago

    Hi,

     

    Thanks for the reply.

     

    I got a solution online before I came across your post. Refer below for the solution.

    IFERROR(
        [Mesaure 1]/[Mesaure 2],
        BLANK()
        )

     where Mesaure 1 is Sum(FactTable[x])and Mesaure 2 is Sum(FactTable[y])

     Found it in this blog- https://sqldusty.com/

8 Replies

    • I_am_not_robot1's avatar
      I_am_not_robot1
      Regular Visitor

      This is a better solution than the one that is posted as the solution. Thank you!

    • sausaged's avatar
      sausaged
      Frequent Visitor

      This is not ideal. You are replacing infinity with 0, which it should not be.
      DIVIDE(numerator,denominator) is the correct option, yielding blank for the undefined fraction.

  • hugoberry's avatar
    hugoberry
    Responsive Resident

    If FactTable[Y] is zero just display blank for example:

    Measure = IF(FactTable[Y]=0,BLANK(),FactTable[X]/FactTable[Y])

    • Anonymous's avatar
      Anonymous
      Not applicable

      Hi,

       

      Thanks for the reply.

       

      I got a solution online before I came across your post. Refer below for the solution.

      IFERROR(
          [Mesaure 1]/[Mesaure 2],
          BLANK()
          )

       where Mesaure 1 is Sum(FactTable[x])and Mesaure 2 is Sum(FactTable[y])

       Found it in this blog- https://sqldusty.com/

      • Anonymous's avatar
        Anonymous
        Not applicable

        IF Error calculation does work, however it takes a load on the memory and fails with 'cannot load visual' error. Is there an alternative to avoid this issue?