Round function

Reply
Highlighted
Major Blue Belt

Round function

Hello, I have a beast mode that calculates a % and I need it to round to 2 decimals.

I'm using the round function as described in the documentation:

 

CONCAT(ROUND(1-(COUNT(DISTINCT `nc_list`) / COUNT(DISTINCT `lot_number`)),2)*100, '%')

 

However, the result is being rounded to the whole number

 

round.JPG

 

I need it to, using the example above, display  97.91 instead of 98

round2.JPG

 

What am I missing in my beast mode?


Accepted Solutions
Highlighted
White Belt

You may not even need to round using a beast mode calculation. It seems like you are using a textbox chart, however for have you tried using the single value chart? It is a similar chart, and if you look in Chart Properties>General>Decimal Places, you will be able to select how many decimal places you would like to show.

View solution in original post

Highlighted
Red Belt

Hi @MartinB 

The display options for the field can handle all of this for you.

 

You can change your beast mode to be:

 

1-(COUNT(DISTINCT `nc_list`) / COUNT(DISTINCT `lot_number`))

 

 

Then click on the Beast mode atop your chart to open the menu and select Data Format > Display as and select Percentage with 2 decimal places. You can then also tell it to multiply by 100. 



**Was this post helpful? Click the heart icon**

**Did this solve your problem? Accept it as a solution!**

View solution in original post

Highlighted
Black Belt

I know i'm late to the party, but @MartinB  it's just basic math.

 

CONCAT(ROUND(1-(COUNT(DISTINCT `nc_list`) / COUNT(DISTINCT `lot_number`)),2)*100, '%')

 

If you have 1/3 ( = .33333333) and you wrap that in round( 2) you'd get .33 so when you multiply by 100 you'd get 33.

 

if you wanted 33.33 then you do round(4).


Jae Wilson
Check out my Domo Training YouTube Channel

**Say "Thanks" by clicking the heart in the post that helped you.
**Please mark the post that solves your problem by clicking on "Accept as Solution"

View solution in original post


All Replies
Highlighted
White Belt

You may not even need to round using a beast mode calculation. It seems like you are using a textbox chart, however for have you tried using the single value chart? It is a similar chart, and if you look in Chart Properties>General>Decimal Places, you will be able to select how many decimal places you would like to show.

View solution in original post

Highlighted
Red Belt

Hi @MartinB 

The display options for the field can handle all of this for you.

 

You can change your beast mode to be:

 

1-(COUNT(DISTINCT `nc_list`) / COUNT(DISTINCT `lot_number`))

 

 

Then click on the Beast mode atop your chart to open the menu and select Data Format > Display as and select Percentage with 2 decimal places. You can then also tell it to multiply by 100. 



**Was this post helpful? Click the heart icon**

**Did this solve your problem? Accept it as a solution!**

View solution in original post

Highlighted
Major Blue Belt

Thanks @GrantSmith and @user096693 I'll try both approaches 👨‍💻

Highlighted
Major Blue Belt

@GrantSmith I tried your approach, however the details you explain apply only to the Optional Value

 

round3.JPG

Highlighted
Major Blue Belt

@user096693 thanks, your solution was exactly what I needed

 

round4.JPG

Highlighted
Black Belt

I know i'm late to the party, but @MartinB  it's just basic math.

 

CONCAT(ROUND(1-(COUNT(DISTINCT `nc_list`) / COUNT(DISTINCT `lot_number`)),2)*100, '%')

 

If you have 1/3 ( = .33333333) and you wrap that in round( 2) you'd get .33 so when you multiply by 100 you'd get 33.

 

if you wanted 33.33 then you do round(4).


Jae Wilson
Check out my Domo Training YouTube Channel

**Say "Thanks" by clicking the heart in the post that helped you.
**Please mark the post that solves your problem by clicking on "Accept as Solution"

View solution in original post

Highlighted
Major Blue Belt

Silly me, this formula made the difference. Thanks @jaeW_at_Onyx 

 

CONCAT(ROUND(1-(COUNT(DISTINCT `nc_list`) / COUNT(DISTINCT `lot_number`)),4), '%')

 

Still, had some trouble when adding strings either at the beginning or the end of the formula pasted above...until this I hit jackpot:

 

CONCAT('Quality ', CONCAT(ROUND(100*1-(COUNT(DISTINCT `nc_list`) / COUNT(DISTINCT `lot_number`)),2), '% FPY'))

 

fpy6.JPG

 

Thanks to all, this is the solution I was looking for.

Announcements
Domopalooza 2021 Call for Presenters: We want to hear how Domo is revolutionizing the way you do business!

Click here to submit your story.