cancel
Showing results for 
Search instead for 
Did you mean: 

BAPI contract creation: condition amount is getting multiplied by 10

Former Member
0 Kudos

Dear all,

I'm trying to create contracts with the FM BAPI_CONTRACT_CREATEFROMDATA. It goes well, however, I notice that the value I pass as KBETR in CONTRACT_CONDITIONS_IN appears as KBETR*10 in the new contract. Has anybody faced something like this?

Thank you!

Alexander.

Accepted Solutions (1)

Accepted Solutions (1)

sez41
Active Contributor
0 Kudos

If I'm not mistaken the same happens in BAPI_SALESORDER_CREATEFROMDAT2 as well. Just divide KBETR by 10 in the table.

Former Member
0 Kudos

Thank you, Kıvanç. This is of course the first thing, which came to my mind, but I'm a bit reluctant to implement this, because I don't have the confidence that this really happens always and in all the situations.

VeselinaPeykova
Active Contributor
0 Kudos

I don't have such problems with BAPI_SALESORDER_CREATEFROMDAT2 in my sandbox. Are you referring to the fact that KONV-KBETR is stored always with two decimals and that what you see in VA03 depends on the currency?

an you list exactly how you call the FM - what parameters you have specified, screenshot of the KONV values from SE16, screenshot of the pricing details for the condition in VA43.

sez41
Active Contributor
0 Kudos

: I remember to have this as a memory: For percentage condition types, SAP always tends to multiply the condition value by 10. If condition is not of percentage, this does not happen. If you are to send 20 USD for a condition type, sending the value as 20 is alright. If you are to give 20% discount for another condition type, filling the value with 2 will work (as with 20 you'll see it gives a %200 discount). I do neither know the exact reason of this strange behaviour, nor have a connection to a system right now to test it.

VeselinaPeykova
Active Contributor
0 Kudos

Works fine with percentage-based condition.

BAPI:

VA02 (PR00 in IDR gets rounded, but this is normal for this currency):

KONV:

I guess you remember this multiplication/division stuff because in the past you have worked on VOFM routines, where you are stuck with KONV.

Former Member
0 Kudos

Hello, I found out that this is currency-related. I'm using a rather "unusual" currency - Moroccan dirhams and if I don't specify the currency explicitly, I'm getting this issue. The problem was solved: hiowever, when I set 'MAD' as currency.

Still, thank you vrey much for your help!

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi ,

Can you check are you passing the quantity as 10(by mistake) - if it is happening for all the conditions.

If it is for particular condition value, check the entry whether you have entered the correct decimal notation as per your user setting.

Thanks,

Siva.