Custom Fields in S/4HANA: Key User versus Developer Extensibility
With SAP S/4HANA releases 2208 (public cloud) and 2022 (on-premise and private cloud), it is now possible to create custom fields with developer tools (ADT) for additional use cases, so that customer now have the option to create custom fields either in the Custom Fields key user app, or with developer tools (ADT).
In this blog post, I would like to share some recommendations and comments on the different options for creating custom fields.
Our recommendation is to select the option for creating custom fields in the following sequence, this means the subsequent option should be chosen only if the previous option is not possible.
1. Use the Custom Fields app (key user extensibility tool).
- available for SAP S/4HANA Cloud and SAP S/4HANA
- prerequisite is the enablement of the SAP application for key user extensibility
- for SAP S/4HANA (on-premise/private cloud), legacy fields can be enabled so that they can be used with the Custom Fields app, see transaction SCFD_EUI
2. Use ABAP Development Tools (ADT) with ABAP language version ABAP for Cloud Development (developer extensibility)
- available for SAP S/4HANA Cloud (2208) and SAP S/4HANA (2022)
- prerequisite is the enablement of the SAP application for cloud development. In versions 2208/2022, there is no application adoption for creation of custom fields for ABAP language version for ABAP for Cloud Development. This means this option can be used in future releases only, in SAP S/4HANA Cloud, public edition starting with first scenarios in 2302 (labs preview)
3. Use ADT or SAPGUI tools with ABAP language version Standard (classic extensibility), e.g. if the corresponding SAP application is not enabled for the key user extensibility or developer extensibility.
- available for SAP S/4HANA (on-premise/private cloud)
- Custom fields can be added to CDS views (extend view) and for table/structure appends with developer tools
- Adding custom fields to the transactional logic of an application depends on the SAP application. We recommend that you read the extensibility documentation that is provided for the application.
- Adding custom fields to OData services that were built with technologies before RAP, depends on the implementation details of the OData service. See for example, the blog: How to redefine RDS based OData services? | SAP Blogs
- Custom Fields app: Documentation for public cloud: https://help.sap.com/docs/SAP_S4HANA_CLOUD/0f69f8fb28ac4bf48d2b57b9637e81fa/ce819b8557194ae0aa180ba4ac6a04de.html?version=2208.500
- Custom Fields app: Documentation for on-premise / private cloud: Custom Fields | SAP Help Portal
- Blog: https://blogs.sap.com/2020/02/01/adding-field-in-standard-fiori-apps-of-s-4hana-with-custom-fields-and-logic/
- Documentation: Enabling Custom Database Fields for Usage in SAP Fiori Applications | SAP Help Portal
- RAP Developer Extensibility Documentation for public cloud: https://help.sap.com/docs/SAP_S4HANA_CLOUD/e5522a8a7b174979913c99268bc03f1a/95d0ab272a6745618f18590453a7cf0c.html?version=LATEST
- RAP Developer Extensibility Documentation for on-premise / private cloud: Enabling Data Model Extensions | SAP Help Portal