# Formatting numbers in calculations

2 years 9 months ago #109333
Hi there,

I have a survey that utilises a number of calculations to output an answer.
Many of these are basic sums.

My question is whether it is possible to format the numbers for ease of use.
For example I'd like 1000000 to be displayed as 1,000,000 or even 1 000 000

At the moment if I format then it affects the output of the calculation.

Perhaps someone could point me to the correct way to format the fields?

Thanks

2 years 9 months ago #109346 by Ben_V
Never used (I didn't manage billion of \$) but i suppose you are looking forthis kind of expression:
`{number_format(123456789)}`

Have a look to the " bible " of all expression manager functions

Ben

Benoît

EM Variables => bit.ly/1TKQyNu | EM Roadmap => bit.ly/1UTrOB4
Last Releases => 2.6x.x goo.gl/ztWfIV | 2.06/2.6.x => bit.ly/1Qv44A1
Demo Surveys => goo.gl/HuR6Xe (already included in /docs/demosurveys)

2 years 8 months ago #109503
Hi Ben.

Thanks so much for the response we have tried everything but when applying this to the input fields it doesn't work on the "total" field. As in, the result seems to be affected by the inputs.

Is there someway to mask the input field but have the entries sent through only as integers?

Here is the link if you want to see what I'm talking about.

2 years 8 months ago #109508 by Ben_V
maybe using the EM "round" or "intval" functions
(you may have a look at "ceil" & "floor" as well)

for example using "round" to get a number with 2 decimals:

{round(sum(arg1, arg2),2)}
if arg1=2.1111 & arg2=2.222 the result will be 3.33

I suppose (not tested) the following syntax will return an integer
{round(sum(arg1, arg2),0)}
if arg1=2.1111 & arg2=2.222 the result will be 3

I hope that someone else can give you more accurate help; Maybe using javascript instead EM.

Benoît

EM Variables => bit.ly/1TKQyNu | EM Roadmap => bit.ly/1UTrOB4
Last Releases => 2.6x.x goo.gl/ztWfIV | 2.06/2.6.x => bit.ly/1Qv44A1
Demo Surveys => goo.gl/HuR6Xe (already included in /docs/demosurveys)

2 years 8 months ago #109512 by Ben_V
I attached a sample survey if it could be helpful to someone...

#### File Attachment:

File Name: formatting...bers.lss
File Size:26 KB

Benoît

EM Variables => bit.ly/1TKQyNu | EM Roadmap => bit.ly/1UTrOB4
Last Releases => 2.6x.x goo.gl/ztWfIV | 2.06/2.6.x => bit.ly/1Qv44A1
Demo Surveys => goo.gl/HuR6Xe (already included in /docs/demosurveys)
##### Attachments:

2 years 8 months ago #109695
Hi Ben, unfortunately that didn't work. The problem is we can apply the formatting but it breaks the calculations. We need some sort of 'mask' that will show the formatting on the frontend but parse the actual integer in to the db.

Anyone have any ideas? There must be a way of doing this...

2 years 8 months ago #109698
Hi Ben, would you be able to chat on Skype? Perhaps we can find a solution for this together.

2 years 8 months ago #109700 by Ben_V

The problem is we can apply the formatting but it breaks the calculations. We need some sort of 'mask' that will show the formatting on the frontend but parse the actual integer in to the db.

I understand your issue now... The bad news is that I've no idea on how to make it work ...
Probably only with javascript.
I hope that someone else could give you a hand too

Benoît

EM Variables => bit.ly/1TKQyNu | EM Roadmap => bit.ly/1UTrOB4
Last Releases => 2.6x.x goo.gl/ztWfIV | 2.06/2.6.x => bit.ly/1Qv44A1
Demo Surveys => goo.gl/HuR6Xe (already included in /docs/demosurveys)

2 years 8 months ago #109776
Hi,

I think you must use 2 system:
- Do all calculation in Hidden Equation question type.
- Show the result with 'text display' question tye (or put it in group description).

Example:
CALCUL1 : {sum(Q1,Q2,Q5)}
DISPLAY1 : {number_format(CALCUL1)}

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand (or search sondages pro).
The following user(s) said Thank You: jboogie21

2 years 1 month ago #115922

Now my next question, does the "number_format" function with EM allow to control decimal placement? It doesn't seem to, but I'm not a programmer and can't tell if it should or not.