Symptom
The revenue recognition run finishes with the error
"Bug detected in module "Class CL_FAI2D_FOREX_ROUNDING_DIFF" (reason "Subtransaction rounding error"): Please create a case."
"Secondary processes are not allowed to create rounding difference rows."
Environment
SAP Business ByDesign
Reproducing the Issue
- Go to Cost and Revenue work center.
- Go to Revenue Recognition sub view.
- Search for the document the relevant Revenue Recognition Run.
- Under Messages tab, the errors are displayed.
Cause
This error occurs due to rounding differences in the backend. In some cases, secondary process entry lines may be generated, which can lead to duplicates when multiple sales document items are processed simultaneously.
In many situations, the error appears only once, and a subsequent revenue recognition run processes the data without any issues.
Another way to resolve the issue is to execute the run specifically for the sales order where the error occurs:
- In the revenue recognition run, navigate to the Processed with Errors tab.
- Locate the sales order item associated with the rounding error.
- Go to the Sales Document Items view in the Cost and Revenue work center and find the corresponding sales order item.
- Execute the revenue recognition run only for that sales order, for example, using the Revenue Recognition button.
Resolution
If the rounding error continues to appear, please create a case with SAP Support and include written approval to perform the necessary correction. This correction involves removing the duplicate backend line entry and executing the Revenue Recognition Run in Test/Update mode.
Keywords
Revenue Recognition, Contract, Secondary processes, Duplicate Entry, Rounding difference rows, CL_FAI2D_FOREX_ROUNDING_DIFF, Subtransaction rounding error, subta rounding error , KBA , SRD-FIN-COR , Cost & Revenue , How To
SAP Knowledge Base Article - Public