Enterprise Resource Planning Blogs by SAP
Get insights and updates about cloud ERP and RISE with SAP, SAP S/4HANA and SAP S/4HANA Cloud, and more enterprise management capabilities with SAP blog posts.
cancel
Showing results for 
Search instead for 
Did you mean: 
ThomasSchneider
Product and Topic Expert
Product and Topic Expert

More than one year ago, SAP announced SAP Build, a toolset for creating low code / now code (LCNC) extension on SAP BTP (Low-Code App Development and Automation Solutions | SAP Build). In this blog I want to share my ideas on how both tools can be combined to build powerful extensions.

 

Who Are Key Users?

Who are key users? An excellent answer to this question has been given by my colleague @Jocelyn_Dart  in her blog SAP Fiori for SAP S/4HANA – What is Key User Exten... - SAP Community. I want to briefly summarize it here: key users are users who are authorized to make changes on behalf of other users, typically for the users of a special group or department. Examples are:

  • During your project, you might designate your functional consultants as your key users to make some initial adjustments as they discuss business needs directly with your business stakeholders.
  • Some organizations have a central process governance group who might be designated as responsible for key user changes or for certain types of key user extensions. For example, you might want your central process governance group to control adding custom fields, so that you don't end up with several teams creating similar fields.
  • You might give some key user capabilities to your IT team or even selected developers – as key user functions can be the most effective way to extend your apps and the essential way to add custom fields. For example, as you build your skills into intelligent technologies, you might want your IT team to make some initial settings for your pilot machine learning or situation handling use cases.

Key user extensibility uses a no-code/low-code approach so business users can make the changes themselves. Thus, you can minimize lost-in-translation errors and communication overhead between business and IT.

 

What do key users expect?

Well, key users expect that they can create extensions:

  • Simple – no-code/low-code (LCNC)
  • Cost-effective – with minimum cost/effort/skill
  • Upgrade-stable – extensions are automatically retained as you upgrade releases
  • Safe - changes can be tested in a draft mode, they can be undone or reset, if needed

Example: You all know that business processes require governance processes and not all processes are handled by central IT systems. So, key users start creating excels or word templates and over time they will add more and more logic (calculations, validations, etc. to it). But in the end, the data in the excel or word files must be synchronized with the central IT systems. So the more key users can adapt the system itself, the less overhead for data synchronization is needed.

 

What are Key User Extensibility Tools and What is SAP Build?

Key User Extensibility Tools are Fiori apps that are part of SAP S/4HANA ( SAP S/4HANA ) (or other products such as SAP IBP) and that can be used by key users to adapt SAP applications and services (e.g. adapt the UI, forms, add custom fields and logic) or to create small custom applications (e.g. create custom CDS views, custom business objects, …). In other words, it is the LCNC offering that is embedded in the prod

SAP Build ( SAP Build ) is a set of LCNC tools on SAP BTP:

  • SAP Build Apps is a visual programming environment where citizen and professional developers can build enterprise-ready custom applications without writing any code. With hundreds of pre-built components and logic functions, you can jumpstart your application projects and reduce development time. Explore how you can develop web and native mobile cross-platform apps while integrating to other SAP systems with drag-and-drop ease.
  • SAP Build Process Automation allows you to simplify automation of business processes with visual drag-and-drop tools. It enables both citizen and professional developers to easily digitize their workflows without writing code. There are hundreds of pre-built content packages and connectors you can use to jumpstart your automation projects and save on development time.
  • SAP Build Work Zone enables you to bring together all types of content, UI tools, IT systems, content repositories, applications, and channels using drag-and-drop and customization tools to create portals, intranets, and workspaces.

The following picture shows the four options for building extensions for SAP S/4HANA in context.

  • Low code/no code options for key users (already explained).
  • Options for developers:  
    • the on-stack SAP S/4HANA Cloud ABAP Environment
    • SAP Build Code or ABAP Environment as the side-by-side extensibility options on SAP BTP

Picture1.png

 

Why Two Different Tools Sets? When Do I Use What?

Key user tools are used for local extension. If you want to adapt a Fiori UI (e.g. hide or rename fields on the UI), or you want add a validation for a field, you have to do it locally in the app. And this is why you use the embedded key user tools for this case. Also, if you want to add a custom field or custom tables to the S/4HANA data model and you want to use the data closely together with the S/4HANA data, for example in analytics.

But if you want to create a new UI or a new process, for example a workflow, not only one S/4HANA may be involved; it makes sense to create these extensions in a central “hub” on SAP BTP.

Let me explain this in two examples:

Example 1: New UI for a Custom Business Object

With the Custom Business Object key user app, you can create new custom tables in SAP S/4HANA and on top of the tables CDS views and a business object with a generic maintenance UI without writing one line of code. The CDS views that are generated on top of the tables are available for other key user extensions, for example in custom logic or custom analytical applications. The generic maintenance UI that comes with the custom business object is sufficient for most cases.

But in some cases, you would expect a more elaborate UI for a broader audience. You might even need a UI for users that do not have direct access to the SAP S/4HANA system (= they have no business user in the SAP S/4HANA system). Here, SAP Build Apps is the ideal tool to create an elaborate UI without being a developer and writing code.

Picture2.png

The following tutorial leads you through a typical use case:
Extending SAP S/4HANA with SAP Build Apps and Key User Extensibility | SAP Learning

An app is created that helps users in goods inbound processing to check the incoming goods and perform specific checks on the goods (e.g. for chemical or other dangerous goods). The specific checks and check results are stored in custom business objects. An app created with SAP Build Apps uses the standard SAP services for products and purchase orders and the services generated for the custom business object to guide the user through the check process.

Another tutorial that you can use for a start is the following:
https://developers.sap.com/tutorials/build-apps-s4hana-crud.html

The tutorial describes how to build a UI with SAP Build App on an S/4HANA OData service, namely the Business Partner. You can adapt the tutorial to custom business objects (CBO) in S/4.        Instead of the A_BusinessPartner entity in the tutorial, you would use the root entity of your custom business object, and instead of the A_BusinessPartnerAddress entity you would use a sub-node of your custom business object.

 

Example 2: New Process for a Custom Business Object

Key users typically define the processes for a specific department or user group, which includes workflow. To empower the key user to implement their processes themselves, it makes sense to combine the Custom Business Object key user app and the process automation on SAP BTP.

Thus, the custom business object is created locally in the SAP S/4HANA system (so that it can be used by other extensions). Conversely, the process is created centrally on SAP BTP, so that they can be combined with other processes and potentially other data sources that are available on SAP BTP.

A typical example is: A bonus plan application is developed as custom business object using key user extensibility in SAP S/4HANA. When a bonus plan is created, an approval is required. This process is created with SAP Build Process Automation and runs on SAP BTP. When the approval is finished, the BTP process calls the bonus plan service and creates the bonus plan SAP S/4HANA.

Picture3.png

The following tutorials can be used to implement such a use case:

Summary

In this blog post, I explain why it makes sense to combine the capabilities of the local key user extensibility tools with the capabilities of SAP Build to empower key users to create powerful extensions without any lines of code.