PRPS-USR06 decimal notation problem

After enhancing the datasource 0WBS_ELEMT_ATTR with the two additional user fields  USR06 (UF value 1 WBS) and USE06 (UF unit value 1 WBS) I encountered some strange behaviour.

This began when I extracted data from the ECC source system and I saw that the notation of the user value (after DSO activation) was different from the value filled in by the end user. SAP note 1646349 summarizes this problem. It states that the USR06 and USR07 fields of the PRPS table are always stored with 3 decimals places.
SAP Knowledge Base Article - 1646349 - Decimal Shift in User Currency Fields
For this problem I have developed some lines of ABAP code. The logic uses the TCURX table to calculate how many places decimal must shift for each user value known in the RESULT_PACKAGE. Use this ABAP code inside a transformation to get the same user value as maintained in ECC.

Joury Jonkergouw

Joury Jonkergouw

Business Intelligence consultant a.k.a.a.k.a. Data Ninja, Blogger & Enthusiast. Experience in various SAP business processes. Believes strongly in a future where analytical EIM and Data Governance are the key to success.