I get a dump that states 'Exception Condition ERROR_CHECK_LIMIT Triggered' when I call BAPI_PR_CHANGE passing items with currency of type COP and values where second last digit is 0 (eg: 12305).
The standard code calls FM CURRENCY_CONVERTING_FACTOR and obtains a factor of 100 for currency type COP.
Post this, it divides the value by the factor (eg: 12305/100 = 123.05).
Next, it checks if the [value - floor(value) = 0.05] obtained lies between 0.01 and 0.09. If it does, then it raises an exception. It performs this in Method CHECK_CURRENCY_DECIMALS of class CL_LIMIT_MMSRV.
Any idea why it does this? Any suggestions on what I could do to avoid this?