12

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

 1 year ago
source link: https://blogs.sap.com/2023/04/06/sap-s-4hana-cloud-public-edition-abap-environment-case-introduction/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client
April 6, 2023 6 minute read

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.

Before we jump to the examples, I advise you to read this blog that provides a great summary of all extensibility techniques used in SAP S/4HANA Cloud, public edition.

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:

Capture12.jpg

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.

Picture2-13.png

Business Object Interface: Work Center

Capture123.jpg

Custom application “Mass processing for Work Centers”

choose.jpg

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.

catalog.jpg

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.

pr.jpg

Business Object Interface: Purchase Requisition

prapp.jpg

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.

badi.jpg

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.

qm1.jpg

Enter the text to Note field when posting goods receipt

qm2.jpg

The text will be saved to auto-created inspection lot

qm3.jpg

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.

qm4.jpg

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.

report1.jpg

Define a custom entity

report2.jpg

A custom Class to implement the business logic

report3.jpg

The customized Inventory Aging Report

While this blog doesn’t cover an exhaustive list of the differentiation scenarios possible using Developer Extensibility, I hope it can give you some ideas for potential future scenarios.

I would like to thank the following colleagues who supported  the implementation of these differentiation  scenarios: Rex Xie, Hongbo Wang, Riya Yang, Qi Liu, Ecco Liu, Zhehui Xia, Angela Dai, Joey Li.

If you would like to see more sample scenarios of Developer Extensibility, I would suggest you to visit SAP Extensibility Explorer.

If you would like to know more details about Developer Extensibility, you can visit the official Developer Extensibility Help Document.

More Information on SAP S/4HANA Cloud, Public Edition:

  • SAP S/4HANA Cloud, public edition, release info here
  • Latest SAP S/4HANA Cloud, public edition, release blog posts here and previous release highlights here
  • Product videos on our SAP S/4HANA Cloud, public edition and SAP S/4HANA YouTube playlist
  • SAP S/4HANA PSCC Digital Enablement Wheel here
  • Early Release Webinar Series here
  • Inside SAP S/4HANA Podcast here
  • openSAP Microlearnings for SAP S/4HANA here
  • Best practices for SAP S/4HANA Cloud, public edition, here
  • SAP S/4HANA Cloud, public edition, Community: here
  • Feature Scope Description here
  • What’s New here
  • Help Portal Product Page here
  • SAP S/4HANA Cloud ABAP Environment Community here

Follow us via @SAP and #S4HANA or follow Vincent Zhu


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK