Wednesday 21 June 2023

SAP S/4HANA Cloud, public edition, ABAP environment case introduction

Since the introduction of a 3-system landscape (3SL) in September 2022 for the SAP S/4HANA Cloud, public edition, SAP added a new pillar to the Extensibility landscape: Developer Extensibility, also known as SAP S/4HANA Cloud, ABAP environment. But what can Developer Extensibility do? Can we do classical ABAP programming in SAP S/4HANA Cloud? Can we debug the code? Will Key User Extensibility (in-app extensibility) be of no use anymore? … Lots of questions come to our mind. Today, I would like to present some differentiation scenarios we implemented using Developer Extensibility for SAP S/4HANA Cloud, public edition, hoping it can give you some concrete ideas on the capabilities of Developer Extensibility and the typical business scenarios we can solve using Developer Extensibility.

Notes: Please bear in mind, for the cases presented below we are only using Developer Extensibility to build up core differentiation in the presented business scenarios. The UI development of these differentiated business processes is done in SAP BTP, BAS (Business Application Studio). For more details about BAS, you can check the UI Development of Developer Extensibility.

Case I: Mass processing for Work Center


In SAP S/4HANA Cloud, public edition, we have standard Apps for mass processing, like Mass Maintenance for Master Data.  However, we have learned from some of our customers, that they do have requirements for mass processing for certain business objects.

On the API Business Hub, there is a new section called “Developer Extensibility”, where you will find the Business Object Interface:

SAP S/4HANA Cloud, SAP HANA, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs, SAP HANA Prep, SAP HANA Preparation, SAP HANA Certification, SAP HANA
Business Object Interface part on API Business Hub

With the availability of the Business Object Interface, we can develop custom Fiori applications for mass processing SAP standard business object. Here, we present an example of how we created a new application by leveraging the Business Object Interface of Work Center. With this new app, customers can choose multiple work centers for mass updating of the values of certain fields.

SAP S/4HANA Cloud, SAP HANA, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs, SAP HANA Prep, SAP HANA Preparation, SAP HANA Certification, SAP HANA
Business Object Interface: Work Center

SAP S/4HANA Cloud, SAP HANA, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs, SAP HANA Prep, SAP HANA Preparation, SAP HANA Certification, SAP HANA
Custom application “Mass processing for Work Centers”

SAP S/4HANA Cloud, SAP HANA, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs, SAP HANA Prep, SAP HANA Preparation, SAP HANA Certification, SAP HANA
Choose the fields for mass processing

As you can see above, we selected three fields (Supply Area, Usage, Back Flush) for mass updating, based on the customer requirement. You can also implement other fields for mass updating as long as the fields are supported in the Business Object Interface.

Another thing to mention is, that with the new 3SL in SAP S/4HANA Cloud, public edition, you can now create custom Business Catalogs – something that was not available before. Now users can assign custom applications  to custom business catalogs. This new function will help us to be more precise when creating authorization controls.

SAP S/4HANA Cloud, SAP HANA, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs, SAP HANA Prep, SAP HANA Preparation, SAP HANA Certification, SAP HANA
Create custom Business Catalog for custom application

Case II: Mass Upload for Purchase Requisition


This is another case of custom application for mass processing: mass upload/creation. In this case, we create a custom Fiori application for Purchase Requisition mass upload. The custom application can create multiple purchase requisitions from an Excel file template. Furthermore, you can define the upload template based on your own requirement. This was implemented using the Business Object Interface Purchase Requisition.

SAP S/4HANA Cloud, SAP HANA, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs, SAP HANA Prep, SAP HANA Preparation, SAP HANA Certification, SAP HANA
Business Object Interface: Purchase Requisition

SAP S/4HANA Cloud, SAP HANA, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs, SAP HANA Prep, SAP HANA Preparation, SAP HANA Certification, SAP HANA
Custom application “Purchase Requisition Mass Upload”

Case III: Enhanced Goods Receipt Process


On the API Business Hub, under Developer Extensibility section, you will find a section for Business Add-ins “BAdIs”. Here, you will find the list of all BAdIs that you can utilize to enhance your business process by implementing your own logic.

SAP S/4HANA Cloud, SAP HANA, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs, SAP HANA Prep, SAP HANA Preparation, SAP HANA Certification, SAP HANA
Business Add-Ins (BAdIs) for Developer Extensibility

Recently, a customer wanted to pass some internal memos to the auto-created inspection lot when posting goods receipt for a purchasing document. We implemented this requirement by using two BAdIs. The first BAdI is MMIM_GR4XY_CHECK_DATA (Check Header and Item Data in Goods Receipts), and we used it to save the internal memo text when posting goods receipt. The second BAdI is BADI_QPL1_CHANGE_AT_CREATE4CLD (Change Inspection Lot Header During Lot Creation), and we used this BAdl to pass the saved internal memo text to the Short Text field of the newly created inspection lot when system creates the inspection lot.

SAP S/4HANA Cloud, SAP HANA, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs, SAP HANA Prep, SAP HANA Preparation, SAP HANA Certification, SAP HANA
Enter the text to Note field when posting goods receipt

SAP S/4HANA Cloud, SAP HANA, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs, SAP HANA Prep, SAP HANA Preparation, SAP HANA Certification, SAP HANA
The text will be saved to auto-created inspection lot

SAP S/4HANA Cloud, SAP HANA, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs, SAP HANA Prep, SAP HANA Preparation, SAP HANA Certification, SAP HANA
Enhanced the goods receipt process by 2 BAdIs

With Developer Extensibility, we can set breakpoints in the code, and easily debug the code. This will make it easier for the developer when troubleshooting is required.

SAP S/4HANA Cloud, SAP HANA, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs, SAP HANA Prep, SAP HANA Preparation, SAP HANA Certification, SAP HANA
Debug in Eclipse ADT tool

Case IV: Customized Inventory Aging Report


Reporting is one of the commonly used business scenarios in SAP S/4HANA Cloud, public edition. In 2SL, customers usually create custom CDS Views and use the embedded SAP Analytics Cloud (SAP SAC) to create all kinds of reports. With the new 3SL, we can create custom CDS Views using ABAP. We can implement much more complicated business logic using ABAP code that provide us much more flexibility.

The Inventory Aging report is a widely used report by our S/4HANA Cloud customers. We implemented this report in 3SL using ABAP code. We define a custom entity for data storage and implement the complicated logic in a custom Class. Moreover, we defined a maintenance object, in which customer can maintain which movement types will be counted in the inventory aging report.

SAP S/4HANA Cloud, SAP HANA, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs, SAP HANA Prep, SAP HANA Preparation, SAP HANA Certification, SAP HANA
Define a custom entity

SAP S/4HANA Cloud, SAP HANA, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs, SAP HANA Prep, SAP HANA Preparation, SAP HANA Certification, SAP HANA
A custom Class to implement the business logic

SAP S/4HANA Cloud, SAP HANA, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs, SAP HANA Prep, SAP HANA Preparation, SAP HANA Certification, SAP HANA
The customized Inventory Aging Report

No comments:

Post a Comment