Summary Numbers - Adding Commas

Options

Hi,

 

I wasn't able to find out much about this searching the DOJO, so hopefully this could be useful to everyone.

I've created a CASE statement using a very simple algorithm to add in comma seperators when you're trying to CONCAT multiple values in the Summary Numbers.

 

CASE
WHEN LENGTH(CONCAT (
''
,ROUND(Sum(`A`), 0)
)) = 12
THEN CONCAT (
SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 1, 3)
,','
,SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 4, 3)
,','
,SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 7, 3)
,','
,SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 10, 3)
)
WHEN LENGTH(CONCAT (
''
,ROUND(Sum(`A`), 0)
)) = 11
THEN CONCAT (
SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 1, 2)
,','
,SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 3, 3)
,','
,SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 6, 3)
,','
,SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 9, 3)
)
WHEN LENGTH(CONCAT (
''
,ROUND(Sum(`A`), 0)
)) = 10
THEN CONCAT (
SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 1, 1)
,','
,SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 2, 3)
,','
,SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 5, 3)
,','
,SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 8, 3)
)
WHEN LENGTH(CONCAT (
''
,ROUND(Sum(`A`), 0)
)) = 9
THEN CONCAT (
SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 1, 3)
,','
,SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 4, 3)
,','
,SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 7, 3)
)
WHEN LENGTH(CONCAT (
''
,ROUND(Sum(`A`), 0)
)) = 8
THEN CONCAT (
SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 1, 2)
,','
,SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 3, 3)
,','
,SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 6, 3)
)
WHEN LENGTH(CONCAT (
''
,ROUND(Sum(`A`), 0)
)) = 7
THEN CONCAT (
SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 1, 1)
,','
,SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 2, 3)
,','
,SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 5, 3)
)
WHEN LENGTH(CONCAT (
''
,ROUND(Sum(`A`), 0)
)) = 6
THEN CONCAT (
SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 1, 3)
,','
,SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 4, 3)
)
WHEN LENGTH(CONCAT (
''
,ROUND(Sum(`A`), 0)
)) = 5
THEN CONCAT (
SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 1, 2)
,','
,SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 3, 3)
)
WHEN LENGTH(CONCAT (
''
,ROUND(Sum(`A`), 0)
)) = 4
THEN CONCAT (
SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 1, 1)
,','
,SUBSTRING(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 2, 3)
)
ELSE RIGHT(CONCAT (
''
,ROUND(Sum(`A`), 0)
), 3)
END

 

 

Enjoy!

 

Warm regards,

 

 

 

Marc H.