SAP C0 CONSUMER RULES DDIC



Get Example source ABAP code based on a different SAP table
  



C0 Contract Rules for Consumers of DDIC Objects
The provider rules for objects with the C0 contract ensure that released objects are changed only in a very restricted way and help to avoid errors and interruptions after an SAP upgrade. Nevertheless, the rules do not prescribe full downward compatibility and leave some room for necessary enhancements to released APIs. Therefore, the users of released APIs still have to consider the allowed compatible changes and access the APIs in such a way that the following errors and interruptions are avoided:
Problems during an upgrade.
Syntax errors after an upgrade.
Runtime errors after an upgrade.
Wrong behavior after an upgrade.
The following sections list rules for extensions to released APIs that must be considered when creating an extension.
ITOC

Naming Rules
All extension field names must start with the correct namespace prefix.
All extension fields must have the element suffix that is defined in the released API by means of the annotation @AbapCatalog.enhancement.fieldSuffix.

Rules for Extensions
Only DDIC database tables and DDIC structures are available for C0 developer extensibility from a restricted ABAP language version.
The DDIC object must be released under the C0 contract for the corresponding language version (ABAP for Cloud Development or ABAP for Key Users).
All extension fields must be typed with a DDIC data element or with a built-in data type from the ABAP Dictionary using the syntax abap.type$[(n)$|(n,m)$]. Typing with other structures or DDIC table types is not possible.
The extension must fit the quota definition and quota distribution defined in the extended object by means of the annotations @AbapCatalog.enhancement.quotaMaximumFields, @AbapCatalog.enhancement.quotaMaximumBytes, @AbapCatalog.enhancement.quotaShareCustomer, and @AbapCatalog.enhancement.quotaSharePartner.

Rules for Using Released DDIC Objects
When using a C0 released structure as