Monday 30 March 2020

Access SAP ERP data from SAP HANA through SDI ABAP Adapter

Do you want to use data residing in SAP ERP for analytics or machine learning ?

SAP offers several options to extract data residing in ABAP-based systems. We will explore one of these options in this blog : SAP HANA smart data integration (SDI). SDI provides tools to access source data and provision, replicate, and transform that data in SAP HANA on-premise or in the cloud. You can efficiently connect to many sources to provision and cleanse data for loading into SAP HANA. For supported systems, you can also write back from HANA to the original source.

Friday 27 March 2020

Using Postman For OData / Netweaver Gateway Testing CRUD Methods

Introduction:


If you have ever used an inbuilt gateway client in SAP for testing your OData services, you must have wondered, isn’t there a better & more effective tool to do this testing. Something that gives users an options not to memorize multiple Parameters or group their requests in folders – so that next time when they resume testing, it should start from where they left.

To solve most of these problems, we can make use of a lightweight Open Source Tool called Postman. As per official documentation, “Postman is a tool to design, build, and test APIs”.

Wednesday 25 March 2020

CDS based data extraction – Part II Delta Handling

As promised in part one, let’s have a closer look at the delta handling in CDS based extraction.

In cases, in which big data volumes with a frequent changes are expected, e.g. transaction data like sales orders or similar, the application needs to provide delta records. In most of the cases daily (nightly) full uploads are not what you want, as time windows for data extractions are limited. Extraction of transaction data should always be delta enabled as this allows a seamless loading and reporting scenario.

Monday 23 March 2020

Developing GraphQL API on ABAP: GraphQLAdmin Web Interface

SAP ABAP Tutorial and Material, SAP ABAP Exam Prep, SAP ABAP Learning, SAP ABAP Guides

With the success of the initial version of GraphQL ABAP implementation and usage analysis over several APIs, though the APIs can be built and used with ease, I felt an urge to improve the efficiency of developing APIs with an easier and standardized way.

Friday 20 March 2020

ABAP CDS VIEWS simplified – PART 1

INTRODUCTION:


ABAP Core Data Service Views also known as ABAP CDS Views. There are so many limitations in SE11 views but we can come out of all the limitations and create a powerful views with the help of ABAP CDS Views.

In general SE11 views and ABAP CDS Views both will create a database views at the backend. When we try to access these views as a table in the ABAP code, this code will be executed at the database level.

Wednesday 18 March 2020

Custom MIGO: Transfer postings & Reservation/Unreservation against Sales Order

Introduction:


This blog will be helpful for any Manufacturing industries, either Make to Order or Make to Stock this scenario works and this could be requirement for most FMCG industries.

Standard MIGO screen in SAP has multiple functionalities whereas very few functionalities only have auto population of line items like GR against Purchase order, GR against Production Order etc., only have this functionality.

Monday 16 March 2020

Call a Remote Function Module (RFC) From SAP Cloud Platform ABAP Environment

First some important prerequisites (because I noticed these myself just late somewhere in the fine print after spending [wasting] some time trying things in my own trial accounts)

◉ You need a Global Enterprise Cloud Account – i.e. not just a trial account
◉ You need this for both, the SAP Cloud Foundry and the SAP Cloud Neo environment
◉ SAP Cloud Foundry and the SAP Cloud Neo need to be in the same region

Friday 13 March 2020

ABAP unit: CL_ABAP_UNIT_ASSERT=>ASSERT_EQUALS method improved for asserting Standard tables

The ABAP class CL_ABAP_UNIT_ASSERT is a great class for asserting Actual and Expected data for ABAP unit testing. Asserting equal is comparing the Actual data with the Expected data that it is equal. If it is not equal than a failure will be raised.

The method ASSERT_EQUALS even supports deep structures.

As you can see in my blog ABAP BAPI BO Class Generator in paragraph “Testing the read method” I use deep structures a lot, for example for GET_DATA methods which return all BAPI data in a deep structures returning parameter, so I can use one returning parameter instead of multiple exporting parameters. Example:

Thursday 12 March 2020

How to create a Payroll Function in SAP HR

All companies have their own business processes, that must be reflected into the Payroll calculation. Or, one company may simply disagree on SAP’s logic, and would like to replace it with their own. To these scenarios, the best alternative is to create a Payroll Function and add it the Payroll Schema, so that it can be called and executed by the Payroll and “do the magic” as the guys from business required. Check below how to do it!

Wednesday 11 March 2020

SAPUI5 Smart features controlled by OData Annotations

In this post I want to give an insight into metadata based UI development. I will showcase some of the Smart component features controlled by metadata annotations. With the use of annotations and Smart components like SmartTable you can minimize the UI View code to be written for conventional scenarios like listing and filtering data.

Monday 9 March 2020

Using Standard BOPF Object for CRUD Operations – Single/Multiple

What you will learn in this blog?


In this blog, you will learn to use SAP delivered standard BOPF object for CRUD operations in Custom Application.

My scenario / Example to Understand


For my use case, I have to create an excel upload utility to update/create multiple Service Entry Sheets in one go – Header & Item. There is a Standard Fiori Application that exists for creating Service Entry Sheet one by one. This application uses a BOPF object to perform CRUD operation along with draft functionality. For my use case I need to upload multiple Service Entry Sheet in one go-to standard tables so that they are visible to Standard Application and for this, I have few options:

Friday 6 March 2020

SELECT-OPTIONS F4 help in ABAP Report Programs

This post describes how F4 help can be displayed for selection criteria defined by SELECT-OPTIONS on selection screen of ABAP report programs.

F4 help can be added to selection criteria:

◉ automatically: if there is input help associated to the data type of the selection criteria, F4 help will be displayed automatically in the selection screen

◉ programatically: if no input help exists for the data type of the selection criteria, F4 help can be provided by program code

Wednesday 4 March 2020

Alternative to MD_STOCK_REQUIREMENTS_LIST_API to get Item in MRP document (MDPS), Individual lines of the MRP elements (MDEZ) for multiple materials / plant combination

Introduction


Normally there is a need to get stock requirements information for certain selected materials and plants. After scouting through various answers in sap forums and blogs we knew we had to use the FM MD_STOCK_REQUIREMENTS_LIST_API or BAPI_MATERIAL_STOCK_REQ_LIST to get results similar to MD04 transaction.

Monday 2 March 2020

Get Expanded Entity Set /Get Expanded Entity Sap OData

Writing this blog for purpose of beginners in order to explain Deep structures handling in SAP OData.

Usually we encounter a business case where in we need to Fetch Parent child relationship data in single call  or we may need to save the Header Item details to database.

OData framework provides an option to perform this operations using Deep Structures.