Is it possible to abbreviate currency field values in a table?

I've been asked to adjust the formatting of two currency fields in a table card to show by thousands, for example $17.2M rather than $17,200,000. Is this possible?

Best Answer

Answers

  • Hi @cthtcc

    There doesn't appear to be an option built into the formatting of the text to allow for abbreviation so you'd need to do it yourself using a beast mode. Here's one that I typically use to abbreviate numbers in the billions.

    CONCAT(CASE WHEN LENGTH(ROUND(SUM(`Number Orders`), 0)) >= 10 THEN
    	CONCAT(
    		ROUND(SUM(`Number Orders`) / 1000000000, 2), 'B'
        )
    WHEN LENGTH(ROUND(SUM(`Number Orders`), 0)) >= 7 THEN
    	CONCAT(
    		ROUND(SUM(`Number Orders`) / 1000000, 2), 'M'
        )
    WHEN LENGTH(ROUND(SUM(`Number Orders`), 0)) >= 4 THEN
    	CONCAT(
    		ROUND(SUM(`Number Orders`) / 1000, 2), 'K'
        )
    WHEN LENGTH(ROUND(SUM(`Number Orders`), 0)) <= 3 THEN
          ROUND(SUM(`Number Orders`), 0)
    WHEN SUM(`Number Orders`) IS NULL THEN 0
    ELSE ''
    END
    )
    

    Just replace `Number Orders` with your field name. You might need to change the last ROUND function to 2 if you want 2 decimal places. My example only used whole numbers so I didn't need decimal places if the number was under 1,000.

    **Was this post helpful? Click Agree or Like below**
    **Did this solve your problem? Accept it as a solution!**
  • cthtcc
    cthtcc Member
    Answer ✓

    Thanks very much @GrantSmith this works beautifully.

  • OOF.

    Brillinat solution @GrantSmith

    I would push back on the customer. if you apply formatting to the currency it will convert type to text. By converting it to text, you can no longer take advantage of Total and Subtotal columns.

    Jae Wilson
    Check out my 🎥 Domo Training YouTube Channel 👨‍💻

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