This is a test message to test the length of the message box.
Login
ABAP Cloud Key User Apps
Created by Software-Heroes

ABAP Cloud - Key User Apps

411

Key User Extensibility is a part of ABAP Cloud when it comes to extending the core, but how can you use the tools effectively and how do they complement each other?



In this article we will take a look at the existing key user apps and how they can complement, but also hinder, the ABAP Cloud portfolio. You will learn a little more about the apps and in which scenarios they are worth a look.

 

Introduction

Extensibility is currently divided into the areas of on-stack extensibility and side-by-side extensibility. With on-stack we look at the possibilities in our current system, without using the Business Technology Platform (BTP). Key User Extensibility (Key User Apps) and Developer Extensibility (ABAP Cloud) are currently offered. Today's article is about the interaction between the two.

 

© SAP SE

 

Side-by-Side Extensibility deals with the extension of the core system as a separate approach on the BTP. The ABAP Environment, Steampunk for short, with the ABAP RESTful Programming Model (RAP) or the JAVA/nodeJS environment with the Cloud Application Programming Model (CAP) are available to you. There are also various services in the SAP Build portfolio, such as SAP Build Apps or SAP Build Process Automation, which pursue different approaches and options.

 

Key User Apps

So what are the Key User Apps? In this section we will take a look at the apps, helper apps and the use of the tools.

 

Introduction

These are Fiori applications that run in your S/4HANA system and with which a key user (user without development experience but with IT know-how) can extend the system and create new objects. In principle, the tools are also interesting for developers, as they can use them to make simple extensions without programming. The changes are made on the development system and then have to be made available in the system landscape in the classic way via transport. In many companies, the developer then takes over the deployment in any case.

 

Apps

What apps are there and what use cases are they intended for? In this section we will go into the details. Let's start with the main apps that you need:

  • Custom Fields (F1481) - You can add your own fields to business objects. The standard ensures that the new field is included from the database to the UI or API.
  • Custom Logic (F6957) - Implementation of pre-designed BADIs with the language version "ABAP for Key-Users" (version 2). The language scope is very limited so far.
  • Custom CDS views (F1866A) - You can create your own core data services using the app. This allows different data to be brought together in a new CDS view and there is the option of making the CDS view available as an OData service. The basis is released core data services (C1 contract).
  • Custom Business Objects (F1712) - Generates one or more tables that are represented as a business object. The underlying technology is currently BOPF, the predecessor of RAP. Data models, APIs and Fiori apps can be generated on the object.
  • UI adaptation - This is not an application, but a function. With the necessary authorizations, the "Adapt UI" option is available in Fiori apps. in the menu available so that the app and the interfaces can be customized.
  • Custom Analytical Queries (F1572) - Creation of evaluations based on CDS for use in reporting or as a data source (SAP Analytics Cloud, SAP Datasphere).
  • Custom Logic Tracing (F3438) - Creation of traces for the analysis of customer-specific implementations for business objects or BADI implementations.

 

In addition, various apps and programs are made available in order to be able to make the new objects available at the end:

  • Extensibility Inventory (F2587) - List of all extensions in the system, with additional statistics and open points for processing.
  • Configure Software Packages (F1590) - Registration of packages that can be used to create extensions.
  • Register Extensions for Transport (F1589) - Assignment of extensions to packages and transports. This prepares the extensions implemented for going live.

 

Use

The Key User Apps are a powerful tool for adapting standard processes in the system and should be used with caution. From our own experience, some changes to the system could not be reversed, so it is worth checking beforehand on a CAL or sandbox system. The second point is to clarify which users will have access to the options. If key users are not very experienced, training should be carried out beforehand so that the risks are known.

When you create objects with the key user apps, these are first saved in a temporary package. In this package, all objects are created without transport, as it is a temporary package. However, you must have previously configured the package and the name abbreviation using the S_ATO_SETUP transaction. The objects cannot therefore be transported. Using the "Register Extensions for Transport" app you can then transfer the objects from the temporary package to a customer-specific package and transport the objects normally.

 

Differentiation

In this section we want to look at the differentiation from ABAP Cloud and how you can use the two models.

 

Restrictions

The Key User Apps provide various functions that are also possible with ABAP Cloud. They also generate objects with language version 2 (ABAP for Key Users) and are therefore not reusable with ABAP Cloud (language version 5). This is exactly the point at which you should decide which objects you will make available with which tool. However, some objects can also be used across the board; you can find more information about this in the SAP Help.

In the 3-TIER model, you would either classify the objects in TIER-3 or place them as a stand-alone package next to the model. In TIER-1, the artifacts cannot be moved, and neither can APIs for TIER-2.

 

Suggestion

If a developer is involved in the objects, it is recommended to implement your own objects (CDS views, business objects, analytical queries and BADI implementations) via ABAP Cloud. The objects can be freely created and adapted by the developer and there is also the option of creating a C1 contract for the object, which also makes the object available for the key user apps. This is also the way to make additional customer-specific functions available for the apps.

 

However, there are also points where the key user apps are better, simpler or the only option. For example, when integrating a new customer-specific field into standard business objects. The UI adaptation and the provision of app variants is simple and flexible in order to provide adaptations to standard Fiori apps.

The background to the suggestion is better handling of the tools by you as a developer in order to be able to easily implement further requirements for objects. On the other hand, you then save yourself outdated objects in the system, such as BOPF business objects, which you may have to convert later for extensions. The framework is also not known to every developer.

 

Conclusion

The key user apps enrich the portfolio of extensibility in the ABAP cloud area, but should be used with caution. What do you want to use the objects for in the future? The tools should give you a rough idea of what to do next.

 

Other sources:
YouTube - Understand the clean core extensibility options for Cloud ERP
YouTube - What software developers want to know about Key User Extensibility
SAP Help - Key User Extensibility
SAP Fiori Apps Reference Library


Included topics:
ABAP CloudABAPKey User AppsExtensibility
Comments (3)



And further ...

Are you satisfied with the content of the article? We post new content in the ABAP area every Friday and irregularly in all other areas. Take a look at our tools and apps, we provide them free of charge.


ABAP Cloud - Locks

Category - ABAP

What do you need to set locks for and how can you easily do that in ABAP Cloud? In this article we will look at the process in detail.

11/08/2024

ABAP Cloud - HTTP Client

Category - ABAP

What does the current HTTP client in ABAP Cloud look like? Let's take a look at the new model.

11/01/2024

ABAP Cloud - JSON Conversion

Category - ABAP

Is there a new API for converting JSON and do you need it for ABAP Cloud? Here we will take a look at the structure and conversion of JSON.

09/27/2024

ABAP Cloud - Number ranges

Category - ABAP

How can you use number ranges in ABAP Cloud and does this actually still make sense? In this article we will look at some of the background informations.

09/13/2024

ABAP Cloud - Data Types

Category - ABAP

What does it actually look like when using data elements in ABAP Cloud? In this article we look at alternatives in the definition.

09/06/2024