Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Want to see what's currently in public preview? We've pulled it all together in one place. Check it out here
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Help for about decimal.

Hello,

In Pivot table , Expression i used the num( ) function. The function is show the decimal place is correct but when the formula was manipulated they used the original value. That mean

i used the function like that,

num('0.32409178531','.##') * num('40648.216','.##') => 13173.752893

I checked each function's output is correct , num('0.32409178531','.##') output is => 0.32

num('40648.216','.##') output is => 40648.22

but combine these functions together

num('0.32409178531','.##') * num('40648.216','.##') output=> 13173.752893

The answer should be, 13007.

Can anybody help me? Thanks a lot for advance.

Labels (1)
1 Solution

Accepted Solutions
Not applicable
Author

yeah philippe, your expression will give the answer.

we can use the floor function to get the numeric part.

=Floor(=round(num('0.32409178531','.##'),0.01) * round(num('40648.216','.##'),0.01))

-Raghu

View solution in original post

6 Replies
Not applicable
Author

I think they taken 0.32 instead of 0.32409178531

floor(num('0.32','.##') * num('40648.216','.##')) . This will give you the exact value 13007

-Raghu

Not applicable
Author

Hi Raghu,

But , i don't want to change the the value '0.32409178531' to '0.32'.

Because in the report the value may not be the fix.

Do you have any other way to do that.

Thanks a lot.

Not applicable
Author

Take first two decimal places using functions and multiply with the number.

I think the only reason the value get changed because of '0.32409178531'. If you take only the first two decimal places then the answer will be correct.

-Raghu.

Not applicable
Author

Hello,

Can you try that :

=round(num('0.32409178531','.##'),0.01) * round(num('40648.216','.##'),0.01)

Not applicable
Author

yeah philippe, your expression will give the answer.

we can use the floor function to get the numeric part.

=Floor(=round(num('0.32409178531','.##'),0.01) * round(num('40648.216','.##'),0.01))

-Raghu

Not applicable
Author

Hi Raghu and Philippe,

Thanks you very much.

Your function is work. Thanks a lot.