Friday, 10 May 2024
Create trusted RFC with specific technical user
Monday, 1 May 2023
Parallel Processing On OABAP – Using Classes and Methods
Parallel processing is implemented in ABAP reports and programs, not in the background processing system itself. That means that jobs are only processed in parallel if the report that runs in a job step is programmed for parallel processing. Such reports can also process in parallel if they are started interactively.
Parallel processing in OAbap is using class and methods in report level program.
Parallel Processing is implemented with a special variant of Asynchronous RFC. It’s important that you use only the correct variant for you own parallel processing applications. The “CALL FUNCTION STARTING NEW TASK DESTINATION IN GROUP” keywords.
Friday, 11 February 2022
Import Event Push of Configuration Text Tables to External Database
Introduction
I was recently posed with a problem that needed a new solution for our planned S4 migration in a few weeks. How to get the configuration domain text data to an external database to retain some existing reporting capabilities? I’m betting that a lot of folks work in heterogenous landscapes and sometimes it requires getting creative with how to tackle a problem. I have seen a couple of approaches in the past and have to admit that I’m not a fan of either, but I’ll let you decide for yourself which one is least preferred. First example – two synchronous ABAP Proxies of megalith proportions statically defined to return data on several dozen configuration domains based on daily or weekly frequency. The second – several recurring job instances throughout the day (four or five maybe) that extract the data whenever change pointers are detected on dependent business objects, and saved as files on the application server, which requires some other process to fetch the data and load it. Is a many times daily, daily, or weekly cadence appropriate given the relatively infrequency that configuration tables are updated in a productive environment?
Friday, 27 August 2021
ASYNC/Parallel ABAP in a OO way
Motivation
Every now and then we find a need for doing some work in parallel. Recently I’ve worked on a process that was taking far too long to be of any use. It was taking large amounts of data in and creating an even larger amount of records given complex rules, validations and enrichment.
Refreshing some ABAP parallelism techniques, my options were basically to split the input data and then running FMs in background, starting a new task or writing a report and scheduling a job with parallelism being ranges of a selection criteria.
All valid options, I suppose, but I got used to work purely in OO and hammering FMs here and there to have my parallelism had a particular bad smell. It would prevent me to assert some critical behavior via unit tests, for starters, and it would also add this new responsibility, running in parallel, to weird places with code that looked boring and repetitive (take data from classes, run fm, take data back…).
Thursday, 22 July 2021
Exploring SAP Profitability and Performance Management’s Remote Function Adapter – External Function Type
SAP Profitability and Performance Management (abbreviated as “PaPM” in this blog further) Remote Function Adapter (RFA) function provides automated communication capabilities to other application and systems. Remote Function Adapter comes with different function types to set-up communication and posting. These vary from:
◉ Posting of Finance AP, AR, GL entries
◉ Calling external R script procedure
◉ Calling HANA stored procedure
◉ Integration scenario with SAP SD for creation of Sales Order, Inquiry or Quotation
◉ Replicating CO Master Data
◉ And External Function for calling remote NetWeaver function or a Web service
Friday, 12 February 2021
RFC Gateway security, part 1 – basic understanding
Basic understanding
In the following i will do the question and answer game to develop a basic understanding of the RFC Gateway, the RFC Gateway security and its related terms.
What is the RFC Gateway?
The RFC Gateway can be seen as a communication middleware. The RFC Gateway act as an RFC Server which enables RFC function modules to be used by RFC clients. It also enables communication between work or server processes of SAP NetWeaver AS and external programs.
From a technical perspective the RFC Gateway is a SAP kernel process running on OS level as user <SAPSID>adm.
Friday, 5 February 2021
PPM Financial Planning – Update FIN_PLAN Values using API: How-to guide
My project had a requirement to add up actual values(actual and actual-manual) and copy to forecast values in the Financial Planning of the PPM Module. Even though this sounds very simple, anyone who knows PPM tables knows that it is more than what meets the eye.
Wednesday, 16 September 2020
Unexpected behaviour of the RFC call
Let’s start from the coding, you can find below small synthetic example which is easier to understand than real cases. So please do not focus on the deep sense of it, rather pay attention to the coding itself.
Friday, 3 April 2020
Navigation from SAP S/4 HANA to SAP ECC 6.0 to view the replicated sales order
Below are the step by step development that I did to accomplish the same.
Saturday, 2 November 2019
How to Profit from FAST RFC Serialization
Introduction
Fast RFC serialization speeds up RFC-communication by factors and is easier to manage than other RFC serializations. It is required for all scenarios with t/q/bgRFC in the cloud and brings great advantages for all RFC communication with S/4HANA releases. Therefore, you should use fast serialization for all new RFC scenarios. Due to its optional compatibility with classic serialization and basXML, it’s also easy to use fast serialization for existing RFC-scenarios – based on classic serialization or basXML – , if you want to speed up data transmission or profit from fast serialization’s other advantages.
Wednesday, 27 February 2019
RFC creation using AMDP
Analysis of the Table to consult.
We begin by identifying the tables and fields we need for the RFC. For this we enter the se11, se11n, se16 or se16n to consult the columns of the tables:

