Skip to Content

BPC RUN_ALLOCATION on HANA : differences

Dec 19, 2016 at 02:07 PM


avatar image

When executing an allocation through logic script using the RUN_ALLOCATION keyword, the system generates a stored procedure to calculate the result. While the performance is very good , the result is not exactly correct (compared to the calculation done in Excel). I am talking about a very small difference, but because my customer is counting in thousands, they are complaining about the difference.

A solution is to make the allocation run on the ABAP stack (adding the keyword *ACCELERATOR = OFF) , but then we lose the advantage of the performance. I have two main questions on this topic :

1. Whey is there a difference when the allocation is executed as a stored procedure on HANA ?

2. Is there a way ( a setting, parameter ?) to overcome this ?

10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

2 Answers

Vadim Kalinin Dec 19, 2016 at 03:28 PM

Can you provide clear test results?

I suspect that the difference is due to different calculation precision!

For classic ABAP BPC ALLOCATION the calculation are performed with rounding on the 7th decimal digit.

For Excel - on the 14th decimal digit in best case

10 |10000 characters needed characters left characters exceeded
Wouter Vanhoutte Dec 19, 2016 at 03:55 PM

I don't need Excel to show the difference. The difference exists between two identical allocation runs,

one with the keyword *ACCELERATOR = OFF and the other without the keyword. When you have

for example a total of 32989,83539 that should be allocated, the result of the allocation will

add up to 32989,81352 . This is off course no significant differrence, but it matters when you have

to explain this to a customer , especially when they store numbers in thousands or millions.

Show 1 Share
10 |10000 characters needed characters left characters exceeded

I don't think that you can do anything with it...

Both allocations are precise to some point (hana or abap). If you use different USING/TOTAL you will see different results for different allocation methods... And the result will never be exactly as the total (only in some trivial cases).