SAP ABAP IMG Activity NOTES_ES_CPE_FE (Notes on Implementation)
PI_BASIS (Software Component) Basis Plug-In
   CA-GTF-CPE (Application Component) Commodity Pricing Engine
     CPE_FA_FE (Package) Commodity Pricing: Formula Assembly and Evaluation (ABAP)
IMG Activity
ID NOTES_ES_CPE_FE Notes on Implementation  
Transaction Code S_BY3_13000001   (empty) 
Created on 20100915    
Customizing Attributes NOTES_ES_CPE_FE   Notes on Implementation 
Customizing Activity    
Document Class SIMG   Hypertext: Object Class - Class to which a document belongs.
Document Name NOTES_ES_CPE_FE    


All the Business Add-Ins (BAdIs) grouped under this structure node belong to the enhancement spot ES_CPE_FE. You can use these BAdIs to define a partner-specific or customer-specific logic within CPE formula evaluation.

SAP delivers an implementation for each CPE formula evaluation routine that provides a set of variants for defining most of the common business rules. You can either adopt these SAP implementations and modify them or implement your own customer-specific logic.

You can use BADI_CPE_FE_EVALUATION_ROUTINE to change the entire formula evaluation logic or replace it with your own logic. If you only want to change parts of the formula evaluation, you can use the BAdIs of this enhancement spot independently from one another to do the following:

Valid Namespaces for CPE Routines and Rules

The following namespaces are valid for the routines:

  • 0000000 - 0009999: General CPE routines from SAP
  • 0010000 - 0199999: Industry-specific routines from SAP
  • 0020000 - 0029999: Routines from SAP partners
  • 0030000 - 0099999: Customer-specific routines
  • 0100000 - 9999999: Not used yet

The following namespaces are valid for the rules:

  • 00000 - 0ZZZZ: General CPR rules from SAP
  • 10000 - 8ZZZZ: Industry-specific rules from SAP
  • 90000 - 9ZZZZ: Rules from SAP partners
  • A0000 - ZZZZZ: Customer-specific rules

Calculation of Amounts with Reference to Currency

The system always internally calculates amounts with two decimal places, independent of the currency (associated type CPET_INTERNAL_VALUE). The system then refers to the assigned currency to output the calculated amounts with the number of decimal places that currency requires (such as in the calculation routine or combination routine).

In the rounding routine, however, the system considers the currency even for internal calculations and always rounds the amounts to the number of decimal places required by the assigned currency.

You use currency USDN and therefore enter the amount with 5 decimal places: 1.12345.

  • In every routine other than the rounding routine the system internally calculates this amount with two decimal places: 1123,45.
    The system then uses this internal value for any further calculations, such as for multiplication by factor 2: 1123.45 x 2 = 2246.9. Since USDN has been assigned in the currency field, the system outputs the amount with 5 decimal places on the user interface: 2.2469 USDN.
  • In the rounding routine, however, the system calculates internally with 5 decimal places: 1.12345. If you have specified that the system should round to 2 decimal places, the system rounds the value to 1.12. The system uses the value 1120.00 for any other internal calculations, such as 1120.00 x 2 = 2240.00. Since USDN is the assigned currency, the system outputs the amount 2.2400 on the user interface.


Standard settings



Business Attributes
ASAP Roadmap ID 257   Create User Exits 
Mandatory / Optional 2   Optional activity 
Critical / Non-Critical 2   Non-critical 
Country-Dependency A   Valid for all countries 
Assigned Application Components
Documentation Object Class Documentation Object Name Current line number Application Component Application Component Name
SIMG NOTES_ES_CPE_FE 0 AEC0000003 Customer Relationship Management 
Maintenance Objects
Maintenance object type    
Last changed by/on SAP  20100915 
SAP Release Created in 731