Key User extensibility Guide

Key User extensibility Guide


Together with Stanislav Garipov we have prepared development guide for key user extensions as a small help for developers with SAP reference articles and some comments from our side.

Definition

The Key User Extensibility is a set of tools providing a simplified way to extend SAP systems. Despite the words "key user" in it's name, not every tool could be used by a user without ABAP knowledge.

Custom Fields

This Fiori application is recommended for creating new fields. It must be considered before using classic ABAP developer extensibility.


SAP Fiori Apps Reference Library (F1481)

SAP Help Portal: Creating Custom Fields

SAP Learning: Using Custom Fields and Logic

Warning: initially this app comprised the Custom Logic part that is now dedicated into the separate app.

You can

  • Create and edit custom fields (extend the SAP table, application, CDS views and OData services)
  • Delete an existing custom field (deletion is not possible if a field has been transported)
  • Manage the usages of a custom field such as other UIs, reports, forms (print and e-mail forms), service interfaces (OData, SOAP, BAPI, IDOC), processes (data flows), search.
  • Define fields of type associations to custom business objects or to SAP standard business objects
  • Extend SAP CDS Views and OData-Services with SAP fields that are available in CDS views in “lower layers” of the virtual data model (VDM) (tab “Data Source Extensions” in the Custom Fields and Logic app)

The Custom Fields Fiori app completely hides the technical details of the underlying software stack (for example database table, CDS views, OData services) from you as a key user. Together with the UI adaptation mode, you can simply add a new field end-to-end with a few clicks.


Few of the below disadvantages of Custom Fields.

  • No control of the Screen layout or screen visibility where Custom Fields are displayed on GUI like we had for custom field displayed on custom screen.
  • The tab where custom fields are displayed is displayed as ‘Custom Fields’, this can’t be renamed.
  • The fields get displayed in sequence we publish them on the GUI.

Please follow the recommendations in the Naming Convention when creating new fields in the Custom Fields app.

How to delete a Custom Field?

  • Login to Fiori Launchpad and search for Custom fields app
  • Click on the custom field which we are going to delete, before going to delete we need to disable the field usage
  • Click on each tab(UIs and Reports, Email Templates, Form Templates, Business Scenarios, OData APIs, SOAP APIs, BAPIs, IDOCs) and check the field is enabled
  • If it is enabled, click on "Disable Usage", make sure that this field is disabled in all tabs
  • Remove all field usages by checking Where-used tab
  • Click on "Delete", we will get screen Do you want to permanently delete data?
  • Click on Delete again, after few seconds we will get message "Deleted" and screen will be refreshed

In case of deletion issues check the transaction SCFD_LOG.

Change of Transported Custom Fields

Make sure that registered package of the custom field you try to change is assigned to new Transport Request via Configure Software Packages app. Otherwise you won’t be able to change anything.

Custom Logic


This Fiori application is recommended for BAdI implementation. This is the preferred way to implement BAdIs released by SAP.

SAP Fiori Apps Reference Library (F6957)

SAP Help Portal: Creating Implementations

Warning: don’t confuse with the deprecated one with the same name (which is part of F1481)


Packages and Transport

Initially key user extensibility artefacts are assigned to the special temporary package TEST_YY_KEY_USER_LOCAL and should be reassigned to the target Z-package before transport. This could be done in 2 steps:

  • register a package in Configure Software Packages app and then
  • assign extensibility item to this package in Register Extension for Transport

Configure Software Packages

In this Fiori application we can register relevant for the key user extensibility packages and assign transport request to them (optional). Packages registered in this application will be available for use in the next step.


SAP Fiori Apps Reference Library (F1590)

SAP Help Portal: Configure Software Packages

Please use the following packages or their successors:

  • ZOTC_EXTENSIBILITY
  • ZPTP_EXTENSIBILITY
  • ZRTR_EXTENSIBILITY
  • ZTC_EXTENSIBILITY


Register Extension for Transport

This Fiori app is used to assign extensions to the transports requests. The TR should be registered in Configure Software Packages app.


SAP Fiori Apps Library (F1589)

SAP Help Portal: Register Extensions for Transport


Configuration

Transaction S_ATO_SETUP

Setup Adaptation Transport Organizer


Other useful tcodes

S_ATO_SUPPORT - Support Tools for ATO

More information

SAP Help Portal: Key User Extensibility

SAP Note 2660620 - How to associate values of Search Help(F4) to a custom field in S/4HAN

Michael L.

SAP Development and Integration Consultant

4 个月

Also, remember that objects created by key users are not visible from the developer's extensibility scope.?For example, if you have Customer BO or Customer CDS objects created by tools for key users your developer will not be able to consume them in the developer's CDS, etc. However, key user tools can consume objects from the developer's scope (like in Customer BO code exits).

回复

要查看或添加评论,请登录

社区洞察

其他会员也浏览了