SlideShare a Scribd company logo
1 of 22
Download to read offline
http://www.sapyard.com/
http://www.sapyard.com/
bgRFC Framework in SAP
http://www.sapyard.com/
______________________________________________________________
Page 2 of 22
http://www.sapyard.com/
Table of Contents
What is bgRFC?......................................................................................3
bgRFC Configaration..............................................................................5
bgRFC Programming............................................................................17
bgRFC Debugging.................................................................................20
bgRFC Monitoring................................................................................22
http://www.sapyard.com/
______________________________________________________________
Page 3 of 22
http://www.sapyard.com/
i) What is bgRFC?
The bgRFC allows applications to record data that is received later by a called application. When the data
is received, we must ensure that the data was transferred to the receiver either once only in any order
(transactional) or once only in the order of creation (queued).
With the bgRFC, therefore, the asynchronies between the caller and the called application can result in
the following advantages:
 Within an SAP system (same system ID, same client).
Decoupling and (potentially) parallelization are possible. The load is spread across the available
application servers for this system.
This bgRFC scenario is known as an inbound procedure.
 Between two remote SAP Systems
Decoupling and therefore the physical segmentation of an application or a business scenario are
possible. As a result of the asynchronies, differences in the key features of the application servers
for the called and calling applications can be balanced out. The recording is done in the calling
system.
This scenario is an outbound procedure.
 Both procedures can be combined in an out-in procedure.
Here we can take advantage of all the optimization options. If we choose this option, however,
the data is recorded twice, once for the caller (outbound processing) and once for the called
application (special type of the inbound procedure). This results in additional load for both
database and for the application server due to the scheduler.
Restrictions
Combined use of the bgRFC with tRFC and qRFC in a single destination is not possible. However, for each
destination we can define which communication type we want to use.
Architecture
The classic qRFC model detects the dependencies among the individual units only when the data is
processed by the RFC scheduler. For each destination, the outbound scheduler starts a scheduler that
processes the data for this destination.
The schedulers run on each destination only for a limited period of time to ensure processing is consistent
for all destinations. For this reason, the scheduler must determine the sequence again every time before
it processes a destination.
In contrast, with the bgRFC, the dependencies are determined when the data is stored. In doing so, the
RFC scheduler can find all units that can be executed instantly with minimum effort and all dependencies
http://www.sapyard.com/
______________________________________________________________
Page 4 of 22
http://www.sapyard.com/
are detected only once. The additional effort when storing the data is compensated to a large extent by
efficient algorithms and optimizations in the database design.
Gateway
The gateways, another potential source of bottlenecks, have also been optimized. The new concept
regulates the maximum number of outbound schedulers that are allowed to run at the same time on an
application server, and the maximum number of connections that all RFC schedulers can use. This
limitation prevents the local gateway from becoming overloaded.
The gateways of the destinations are protected from overload as well by making the number of parallel
outbound schedulers for each sender system and their maximum number of connections configurable.
Effects on Performance
The improvements implemented with the new bgRFC design become noticeable primarily under high-load
conditions when there are many dependent units for each destination. For the first time, a linear
logarithmical scalability (dependent on the system capacity) is possible for RFC data processing.
The transactional behavior of the queuing function does not allow for significant savings when an
individual unit is being processed, but the application of more or faster hardware produces more
noticeable results in throughput. The limiting factors are the performance of the database and the
processing speed of the units.
A new API also contributes to an optimized procedure. Redundant functions have been removed and
some of the limitations of the old API no longer apply. This has resulted in a smoother and more efficient
concept that will reduce time and effort for both support and development teams.
http://www.sapyard.com/
______________________________________________________________
Page 5 of 22
http://www.sapyard.com/
ii) bgRFC Configuration
1. Creation of Supervisor Destination: On the Define Supervisor Dest. Tab in
transaction SBGRFCCONF, we can define a supervisor destination for bgRFC processing. The supervisor
destination gets the configuration settings for the bgRFC scheduler and starts or stops the schedulers as
required on each application server.
This is a mandatory step because the bgRFC can only function if a supervisor destination has been
defined.
Prerequisites
We have used transaction SM59 to define the supervisor destination as an RFC destination. This
destination must be defined as either an ABAP connection or a logical connection. The following
prerequisites must be met.
ABAP Connection
No load balancing can be defined.
No system number can be entered.
No server can be entered.
http://www.sapyard.com/
______________________________________________________________
Page 6 of 22
http://www.sapyard.com/
http://www.sapyard.com/
______________________________________________________________
Page 7 of 22
http://www.sapyard.com/
A user, password, and client must be entered for both connection types. Please refer
the attached screenshots.
http://www.sapyard.com/
______________________________________________________________
Page 8 of 22
http://www.sapyard.com/
http://www.sapyard.com/
______________________________________________________________
Page 9 of 22
http://www.sapyard.com/
2. Creation of destination: We have to create inbound/outbound destination name
based on the requirement.
a) Creation of Inbound destination: On the Define Inbound Dest. Tab page in the
transaction SBGRFCCONF, we can maintain a separate inbound destination for each application. In the
attached screenshot 6 inbound destinations is maintained. This is also a mandatory step to create any
inbound bgRFC. Logon/server group can be defined using transaction RZ12. For each inbound destination
we can define separate server group also by clicking on the each destination name. Please refer the
attached screen shot for all other settings.
All the settings and activities related to the transaction SBGRFCCONF is BASIS related activity so before
creating/configuring any bgRFC please consult with BASIS team.
http://www.sapyard.com/
______________________________________________________________
Page 10 of 22
http://www.sapyard.com/
b) Creation of Outbound destination: We can create outbound destination using
transaction SM59. Creation of outbound destination in SM59 is normal like any of the destination
creation. Please refer the below screenshot for reference.
http://www.sapyard.com/
______________________________________________________________
Page 11 of 22
http://www.sapyard.com/
We have created outbound destination CE1_xxxcat_chget_active_outbound under ABAP Connections.
For this destination we have to maintain the necessary target destination IP, system no etc. Please refer
all the below screenshots for detailed settings in each tab.
http://www.sapyard.com/
______________________________________________________________
Page 12 of 22
http://www.sapyard.com/
http://www.sapyard.com/
______________________________________________________________
Page 13 of 22
http://www.sapyard.com/
http://www.sapyard.com/
______________________________________________________________
Page 14 of 22
http://www.sapyard.com/
After creation of the outbound destination in SM59 we have maintain this destination in SBGRFCCONF
transaction. We have to maintain the destination in Scheduler: Destination tab of transaction
SBGRFCCONF. Please refer the below screenshot.
http://www.sapyard.com/
______________________________________________________________
Page 15 of 22
http://www.sapyard.com/
http://www.sapyard.com/
______________________________________________________________
Page 16 of 22
http://www.sapyard.com/
iii) bgRFC Programming
After the entire o figuratio ow let’s talk a out the progra i g.
1. Creation of unit: We have to create one bgRFC unit by taking the reference
from the configured inbound / outbound destination name. Destination objects can be
requested using the class methods from the class CL_BGRFC_DESTINATION_OUTBOUND for
the outbound and the class CL_BGRFC_DESTINATION_INBOUND for the inbound. We have
to use method CREATE of the above mentioned class to create a destination object. Please
see the below example of how to create an inbound destination object.
Pass any of the configured inbound destination name in the below mentioned variable.
After creation of the destination object it is time to create a bgRFC unit. bgRFC unit can be
two types like tRFC unit or qRFC unit. We have to use method CREATE_TRFC_UNIT to create
a tRFC unit and method CREATE_QRFC_UNIT to create a qRFC unit. Please refer the below
screenshot for example.
Here L_DEST is created at the previous step. We have to create a tRFC unit for that
destination object. We can also define some delay during creation of the bgRFC unit to
handle passive data changes but it is some advanced requirement and not in the scope of
this bgRFC document.
To create a qRFC unit we just have to call CREATE_QRFC_UNIT method instead of
CREATE_TRFC_UNIT method.
http://www.sapyard.com/
______________________________________________________________
Page 17 of 22
http://www.sapyard.com/
2. Calling a function module: After creation of the unit we have to call any function
module in background. The new syntax for calling a function module for background processing
(previously done using IN BACKGROUND TASK) is as follows:
CALL FUNCTION fu ctio _ a e
IN BACKGROUND UNIT unit
EXPO‘TING …
Inside the calling function module we have to write our required logic which we want to process in
background (e.g. Update a table). Please refer below screenshot for calling of a function module.
In the above example the function module is called in background using the created unit. In the exporting
parameter we can define whatever we want to send in the function module. If we want to send some
tables also we can define it in the calling function module and we can send it.
http://www.sapyard.com/
______________________________________________________________
Page 18 of 22
http://www.sapyard.com/
The function module must be RFC enabled function module.
Here one thing needs to be remembered, calling the function module will happen once program does the
COMMIT WORK. If we want to create bgRFC from our custom program like report in that case we have to
do external COMMIT WORK but if we are trying to create bgRFC from any BADI/USER EXIT/Enhancement
Spot in that case we do not need to apply external COMMIT WORK. Once standard SAP do the COMMIT
WORK bgRFC unit will be created.
http://www.sapyard.com/
______________________________________________________________
Page 19 of 22
http://www.sapyard.com/
iv) bgRFC Debugging
1. Debug bgRFC unit using external break points: This is the most common
way to debug a bgRFC unit. We have to put one external break point in the bgRFC unit to debug the unit.
In the above demonstrated example we have to put external break point in the function module code to
debug the logic of the function module. Any session break point will not work. In the below screen shot
external break point is set inside the calling function module.
2. Debug bgRFC unit with bgRFC Monitor: This is another option to debug any
bgRFC unit. This is generally used if any created unit is failed, in that case we can debug the particular unit
using bgRFC Monitor. We have to use transaction SBGRFCMON to monitor the bgRFC units. Monitoring
bgRFC units will be discussed in detail after this. To debug a particular erroneous unit we have to
position the cursor on the unit in question and choose Unit Analysis ® Debug Unit from the context
menu. There are some prerequisites to debug bgRFC unit this transaction.
 The user creating the bgRFC and the user carrying out debugging must both have the new
debugger set at the time of debugging.
 Units can only be debugged directly with the bgRFC monitor if they have the status red (contain
errors) or yellow (locked). Units with status green (error-free and not locked) cannot be
debugged with the bgRFC Monitor.
http://www.sapyard.com/
______________________________________________________________
Page 20 of 22
http://www.sapyard.com/
In this example we have to put cursor on the particular unit and right click then choose Unit
Analysis -> Debug Unit. If we cannot find this option in the context menu, this means that
we are not authorized to carry out debugging with the bgRFC monitor.
v) bgRFC Monitoring
This is the last topic we will discuss in this document. bgRFC monitor typically required to check if any unit
is failed or there are any issues in any particular unit.
We have to use transaction SBGRFCMON to monitor bgRFC unit. In the selection screen we have option to
monitor Inbound/Outbound unit along with tRFC unit or qRFC unit. Also there are several options in the
selection screen. Please refer the below screen shot.
After executing the transaction we will be able to monitor all the erroneous units in the system. We have
to remember if any unit is created successfully and if there are no data issue or any connection issue in
that case it will be executed and we will not able to see it in this transaction. Only erroneous and warning
units will be displayed here. Please refer the below screenshot.
http://www.sapyard.com/
______________________________________________________________
Page 21 of 22
http://www.sapyard.com/
If we want to restart any units in that case put cursor in the desired unit then right click and select Restart
Unit.
We can also monitor bgRFC unit using transaction SBGRFCPERFMON. Please refer the below screenshot
for reference.
After executing this transaction we can monitor how many units are ready to execute, total no of units
etc.
If we select any Destination then will be able see all the units of that destination. This is the same view as
we see using transaction SBGRFCMON.
http://www.sapyard.com/
______________________________________________________________
Page 22 of 22
http://www.sapyard.com/
References:
http://help.sap.com/saphelp_nw73ehp1/helpdata/en/48/9709f255493987e10000000a421937/content.h
tm Configuration
http://help.sap.com/saphelp_nw73ehp1/helpdata/en/48/929142aa6b17cee10000000a421937/content.h
tm Programming
http://help.sap.com/saphelp_nw70/helpdata/en/44/f6f232f60b41e2e10000000a1553f6/content.htm
Monitor
https://help.sap.com/saphelp_nwpi711/helpdata/en/48/927cd3aa6b17cee10000000a421937/content.ht
m Debugging

More Related Content

What's hot

Introduction Into SAP Fiori
Introduction Into SAP FioriIntroduction Into SAP Fiori
Introduction Into SAP FioriBlackvard
 
Pricing Routine In Vofm
Pricing Routine In VofmPricing Routine In Vofm
Pricing Routine In Vofmgueste6b4e7
 
Payment management in SAP
Payment management in SAPPayment management in SAP
Payment management in SAPAlice Mary Bag
 
Zebra sap-smartforms-solution
Zebra sap-smartforms-solutionZebra sap-smartforms-solution
Zebra sap-smartforms-solutionmartin_josep
 
Table maintenance generator and its modifications
Table maintenance generator and its modificationsTable maintenance generator and its modifications
Table maintenance generator and its modificationsscribid.download
 
12753028 scot-configuration-troubleshooting
12753028 scot-configuration-troubleshooting12753028 scot-configuration-troubleshooting
12753028 scot-configuration-troubleshootingkratos1979
 
Sap fi automatic payment program (configuration and run)
Sap fi   automatic payment program (configuration and run)Sap fi   automatic payment program (configuration and run)
Sap fi automatic payment program (configuration and run)Pradip Sarkar
 
SAP SD IMPLEMENTATION BY NITEEN VAIDYA
SAP SD IMPLEMENTATION  BY NITEEN VAIDYASAP SD IMPLEMENTATION  BY NITEEN VAIDYA
SAP SD IMPLEMENTATION BY NITEEN VAIDYANiteen Vaidya
 
Introducing enhancement framework.doc
Introducing enhancement framework.docIntroducing enhancement framework.doc
Introducing enhancement framework.docKranthi Kumar
 
Oracle EBS R12 Audit trial
Oracle EBS R12 Audit trialOracle EBS R12 Audit trial
Oracle EBS R12 Audit trialFeras Ahmad
 
Dmee sap online_help
Dmee sap online_helpDmee sap online_help
Dmee sap online_helpgabrielsyst
 
Ale Idoc Edi
Ale Idoc EdiAle Idoc Edi
Ale Idoc Edishesagiri
 
Travel management configuration steps
Travel management configuration stepsTravel management configuration steps
Travel management configuration stepsAbhijeet Walke
 
Sap bpc nw 10.0 consolidations ( ic elimination) implementation guide v1 p
Sap bpc nw 10.0 consolidations ( ic  elimination) implementation guide v1 pSap bpc nw 10.0 consolidations ( ic  elimination) implementation guide v1 p
Sap bpc nw 10.0 consolidations ( ic elimination) implementation guide v1 pJothi Periasamy
 
SAP Fiori Interview Q& A - IQ Online Training
SAP Fiori Interview Q& A - IQ Online TrainingSAP Fiori Interview Q& A - IQ Online Training
SAP Fiori Interview Q& A - IQ Online TrainingIQ Online Training
 

What's hot (20)

Introduction Into SAP Fiori
Introduction Into SAP FioriIntroduction Into SAP Fiori
Introduction Into SAP Fiori
 
Ach payment configuration
Ach payment configurationAch payment configuration
Ach payment configuration
 
Pricing Routine In Vofm
Pricing Routine In VofmPricing Routine In Vofm
Pricing Routine In Vofm
 
Payment management in SAP
Payment management in SAPPayment management in SAP
Payment management in SAP
 
Zebra sap-smartforms-solution
Zebra sap-smartforms-solutionZebra sap-smartforms-solution
Zebra sap-smartforms-solution
 
Table maintenance generator and its modifications
Table maintenance generator and its modificationsTable maintenance generator and its modifications
Table maintenance generator and its modifications
 
12753028 scot-configuration-troubleshooting
12753028 scot-configuration-troubleshooting12753028 scot-configuration-troubleshooting
12753028 scot-configuration-troubleshooting
 
Sap scripts
Sap scriptsSap scripts
Sap scripts
 
Sap fi automatic payment program (configuration and run)
Sap fi   automatic payment program (configuration and run)Sap fi   automatic payment program (configuration and run)
Sap fi automatic payment program (configuration and run)
 
SAP SD IMPLEMENTATION BY NITEEN VAIDYA
SAP SD IMPLEMENTATION  BY NITEEN VAIDYASAP SD IMPLEMENTATION  BY NITEEN VAIDYA
SAP SD IMPLEMENTATION BY NITEEN VAIDYA
 
Introducing enhancement framework.doc
Introducing enhancement framework.docIntroducing enhancement framework.doc
Introducing enhancement framework.doc
 
Oracle EBS R12 Audit trial
Oracle EBS R12 Audit trialOracle EBS R12 Audit trial
Oracle EBS R12 Audit trial
 
Dmee sap online_help
Dmee sap online_helpDmee sap online_help
Dmee sap online_help
 
Oracle Fusion Financial Report Centre Reporting Beginner course
Oracle Fusion Financial Report Centre Reporting Beginner courseOracle Fusion Financial Report Centre Reporting Beginner course
Oracle Fusion Financial Report Centre Reporting Beginner course
 
Ale Idoc Edi
Ale Idoc EdiAle Idoc Edi
Ale Idoc Edi
 
Travel management configuration steps
Travel management configuration stepsTravel management configuration steps
Travel management configuration steps
 
Sap bpc nw 10.0 consolidations ( ic elimination) implementation guide v1 p
Sap bpc nw 10.0 consolidations ( ic  elimination) implementation guide v1 pSap bpc nw 10.0 consolidations ( ic  elimination) implementation guide v1 p
Sap bpc nw 10.0 consolidations ( ic elimination) implementation guide v1 p
 
S4Finance
S4FinanceS4Finance
S4Finance
 
Field symbols
Field symbolsField symbols
Field symbols
 
SAP Fiori Interview Q& A - IQ Online Training
SAP Fiori Interview Q& A - IQ Online TrainingSAP Fiori Interview Q& A - IQ Online Training
SAP Fiori Interview Q& A - IQ Online Training
 

Similar to bgRFC Framework in SAP

IRJET- A Review- FPGA based Architectures for Image Capturing Consequently Pr...
IRJET- A Review- FPGA based Architectures for Image Capturing Consequently Pr...IRJET- A Review- FPGA based Architectures for Image Capturing Consequently Pr...
IRJET- A Review- FPGA based Architectures for Image Capturing Consequently Pr...IRJET Journal
 
Single Page Application Best practices
Single Page Application Best practicesSingle Page Application Best practices
Single Page Application Best practicesTarence DSouza
 
Mach 4-PMDX Shopbot Retrofit Guide
Mach 4-PMDX Shopbot Retrofit GuideMach 4-PMDX Shopbot Retrofit Guide
Mach 4-PMDX Shopbot Retrofit GuideAndy Cohen
 
FPGA Implementation of High Speed AMBA Bus Architecture for Image Transmissio...
FPGA Implementation of High Speed AMBA Bus Architecture for Image Transmissio...FPGA Implementation of High Speed AMBA Bus Architecture for Image Transmissio...
FPGA Implementation of High Speed AMBA Bus Architecture for Image Transmissio...IRJET Journal
 
IRJET- Front View Identification of Vehicles by using Machine Learning Te...
IRJET-  	  Front View Identification of Vehicles by using Machine Learning Te...IRJET-  	  Front View Identification of Vehicles by using Machine Learning Te...
IRJET- Front View Identification of Vehicles by using Machine Learning Te...IRJET Journal
 
Enterprise Routing Protocol Migration
Enterprise Routing Protocol MigrationEnterprise Routing Protocol Migration
Enterprise Routing Protocol MigrationJeffrey Sicuranza
 
A LIGHT WEIGHT VLSI FRAME WORK FOR HIGHT CIPHER ON FPGA
A LIGHT WEIGHT VLSI FRAME WORK FOR HIGHT CIPHER ON FPGAA LIGHT WEIGHT VLSI FRAME WORK FOR HIGHT CIPHER ON FPGA
A LIGHT WEIGHT VLSI FRAME WORK FOR HIGHT CIPHER ON FPGAIRJET Journal
 
Architecting Wide-ranging Analytical Solutions with MongoDB
Architecting Wide-ranging Analytical Solutions with MongoDBArchitecting Wide-ranging Analytical Solutions with MongoDB
Architecting Wide-ranging Analytical Solutions with MongoDBMatthew Kalan
 
Load Balancing des McAfee Web Gateway - das Handbuch
Load Balancing des McAfee Web Gateway - das HandbuchLoad Balancing des McAfee Web Gateway - das Handbuch
Load Balancing des McAfee Web Gateway - das HandbuchLoadbalancer_org_Gmbh
 
Planning guide sap business suite 7 2013 landscape implementation
Planning guide sap business suite 7 2013  landscape implementationPlanning guide sap business suite 7 2013  landscape implementation
Planning guide sap business suite 7 2013 landscape implementationLeonardo Parpal Roig
 
IRJET- Performance Comparison of Real-Time Garbage Collection in the Sun ...
IRJET-  	  Performance Comparison of Real-Time Garbage Collection in the Sun ...IRJET-  	  Performance Comparison of Real-Time Garbage Collection in the Sun ...
IRJET- Performance Comparison of Real-Time Garbage Collection in the Sun ...IRJET Journal
 
Load-Balancer-Deployment-Guide-für-McAfee-Web-Proxies-bzw-WebFilter
Load-Balancer-Deployment-Guide-für-McAfee-Web-Proxies-bzw-WebFilterLoad-Balancer-Deployment-Guide-für-McAfee-Web-Proxies-bzw-WebFilter
Load-Balancer-Deployment-Guide-für-McAfee-Web-Proxies-bzw-WebFilterLoadbalancer_org_Gmbh
 
Load-Balancer-Deployment-Guide-für-Smoothwall-Web-Proxy-Web-Filter
Load-Balancer-Deployment-Guide-für-Smoothwall-Web-Proxy-Web-FilterLoad-Balancer-Deployment-Guide-für-Smoothwall-Web-Proxy-Web-Filter
Load-Balancer-Deployment-Guide-für-Smoothwall-Web-Proxy-Web-FilterLoadbalancer_org_Gmbh
 
Load-Balancing-Smoothwall-Web-Proxy-Deployment-Guide
Load-Balancing-Smoothwall-Web-Proxy-Deployment-GuideLoad-Balancing-Smoothwall-Web-Proxy-Deployment-Guide
Load-Balancing-Smoothwall-Web-Proxy-Deployment-GuideLoadbalancer_org_Gmbh
 
MS_SAP_ABAP_WDA_2016_Pict
MS_SAP_ABAP_WDA_2016_PictMS_SAP_ABAP_WDA_2016_Pict
MS_SAP_ABAP_WDA_2016_PictMunir Solkar
 
Challenges and Opportunities of FPGA Acceleration in Big Data
Challenges and Opportunities of FPGA Acceleration in Big DataChallenges and Opportunities of FPGA Acceleration in Big Data
Challenges and Opportunities of FPGA Acceleration in Big DataIRJET Journal
 
Performance Schema and Sys Schema in MySQL 5.7
Performance Schema and Sys Schema in MySQL 5.7Performance Schema and Sys Schema in MySQL 5.7
Performance Schema and Sys Schema in MySQL 5.7Mark Leith
 
IRJET- Design and HW/SW Implementation of a Nonlinear Interpolator for Border...
IRJET- Design and HW/SW Implementation of a Nonlinear Interpolator for Border...IRJET- Design and HW/SW Implementation of a Nonlinear Interpolator for Border...
IRJET- Design and HW/SW Implementation of a Nonlinear Interpolator for Border...IRJET Journal
 
Mongo db reference-manual
Mongo db reference-manualMongo db reference-manual
Mongo db reference-manualDan Llimpe
 
Mongo db reference manual
Mongo db reference manualMongo db reference manual
Mongo db reference manualDeysi Gmarra
 

Similar to bgRFC Framework in SAP (20)

IRJET- A Review- FPGA based Architectures for Image Capturing Consequently Pr...
IRJET- A Review- FPGA based Architectures for Image Capturing Consequently Pr...IRJET- A Review- FPGA based Architectures for Image Capturing Consequently Pr...
IRJET- A Review- FPGA based Architectures for Image Capturing Consequently Pr...
 
Single Page Application Best practices
Single Page Application Best practicesSingle Page Application Best practices
Single Page Application Best practices
 
Mach 4-PMDX Shopbot Retrofit Guide
Mach 4-PMDX Shopbot Retrofit GuideMach 4-PMDX Shopbot Retrofit Guide
Mach 4-PMDX Shopbot Retrofit Guide
 
FPGA Implementation of High Speed AMBA Bus Architecture for Image Transmissio...
FPGA Implementation of High Speed AMBA Bus Architecture for Image Transmissio...FPGA Implementation of High Speed AMBA Bus Architecture for Image Transmissio...
FPGA Implementation of High Speed AMBA Bus Architecture for Image Transmissio...
 
IRJET- Front View Identification of Vehicles by using Machine Learning Te...
IRJET-  	  Front View Identification of Vehicles by using Machine Learning Te...IRJET-  	  Front View Identification of Vehicles by using Machine Learning Te...
IRJET- Front View Identification of Vehicles by using Machine Learning Te...
 
Enterprise Routing Protocol Migration
Enterprise Routing Protocol MigrationEnterprise Routing Protocol Migration
Enterprise Routing Protocol Migration
 
A LIGHT WEIGHT VLSI FRAME WORK FOR HIGHT CIPHER ON FPGA
A LIGHT WEIGHT VLSI FRAME WORK FOR HIGHT CIPHER ON FPGAA LIGHT WEIGHT VLSI FRAME WORK FOR HIGHT CIPHER ON FPGA
A LIGHT WEIGHT VLSI FRAME WORK FOR HIGHT CIPHER ON FPGA
 
Architecting Wide-ranging Analytical Solutions with MongoDB
Architecting Wide-ranging Analytical Solutions with MongoDBArchitecting Wide-ranging Analytical Solutions with MongoDB
Architecting Wide-ranging Analytical Solutions with MongoDB
 
Load Balancing des McAfee Web Gateway - das Handbuch
Load Balancing des McAfee Web Gateway - das HandbuchLoad Balancing des McAfee Web Gateway - das Handbuch
Load Balancing des McAfee Web Gateway - das Handbuch
 
Planning guide sap business suite 7 2013 landscape implementation
Planning guide sap business suite 7 2013  landscape implementationPlanning guide sap business suite 7 2013  landscape implementation
Planning guide sap business suite 7 2013 landscape implementation
 
IRJET- Performance Comparison of Real-Time Garbage Collection in the Sun ...
IRJET-  	  Performance Comparison of Real-Time Garbage Collection in the Sun ...IRJET-  	  Performance Comparison of Real-Time Garbage Collection in the Sun ...
IRJET- Performance Comparison of Real-Time Garbage Collection in the Sun ...
 
Load-Balancer-Deployment-Guide-für-McAfee-Web-Proxies-bzw-WebFilter
Load-Balancer-Deployment-Guide-für-McAfee-Web-Proxies-bzw-WebFilterLoad-Balancer-Deployment-Guide-für-McAfee-Web-Proxies-bzw-WebFilter
Load-Balancer-Deployment-Guide-für-McAfee-Web-Proxies-bzw-WebFilter
 
Load-Balancer-Deployment-Guide-für-Smoothwall-Web-Proxy-Web-Filter
Load-Balancer-Deployment-Guide-für-Smoothwall-Web-Proxy-Web-FilterLoad-Balancer-Deployment-Guide-für-Smoothwall-Web-Proxy-Web-Filter
Load-Balancer-Deployment-Guide-für-Smoothwall-Web-Proxy-Web-Filter
 
Load-Balancing-Smoothwall-Web-Proxy-Deployment-Guide
Load-Balancing-Smoothwall-Web-Proxy-Deployment-GuideLoad-Balancing-Smoothwall-Web-Proxy-Deployment-Guide
Load-Balancing-Smoothwall-Web-Proxy-Deployment-Guide
 
MS_SAP_ABAP_WDA_2016_Pict
MS_SAP_ABAP_WDA_2016_PictMS_SAP_ABAP_WDA_2016_Pict
MS_SAP_ABAP_WDA_2016_Pict
 
Challenges and Opportunities of FPGA Acceleration in Big Data
Challenges and Opportunities of FPGA Acceleration in Big DataChallenges and Opportunities of FPGA Acceleration in Big Data
Challenges and Opportunities of FPGA Acceleration in Big Data
 
Performance Schema and Sys Schema in MySQL 5.7
Performance Schema and Sys Schema in MySQL 5.7Performance Schema and Sys Schema in MySQL 5.7
Performance Schema and Sys Schema in MySQL 5.7
 
IRJET- Design and HW/SW Implementation of a Nonlinear Interpolator for Border...
IRJET- Design and HW/SW Implementation of a Nonlinear Interpolator for Border...IRJET- Design and HW/SW Implementation of a Nonlinear Interpolator for Border...
IRJET- Design and HW/SW Implementation of a Nonlinear Interpolator for Border...
 
Mongo db reference-manual
Mongo db reference-manualMongo db reference-manual
Mongo db reference-manual
 
Mongo db reference manual
Mongo db reference manualMongo db reference manual
Mongo db reference manual
 

More from SAPYard

Flow Chart to get Free access to SAP HANA Cloud Platform
Flow Chart to get Free access to SAP HANA Cloud PlatformFlow Chart to get Free access to SAP HANA Cloud Platform
Flow Chart to get Free access to SAP HANA Cloud PlatformSAPYard
 
SAP HANA for Beginners from a Beginner
SAP HANA for Beginners from a BeginnerSAP HANA for Beginners from a Beginner
SAP HANA for Beginners from a BeginnerSAPYard
 
Unwanted character ‘#’ in the short text print outs and reports sap yard
Unwanted character ‘#’ in the short text print outs and reports   sap yardUnwanted character ‘#’ in the short text print outs and reports   sap yard
Unwanted character ‘#’ in the short text print outs and reports sap yardSAPYard
 
Vistex Chargeback
Vistex ChargebackVistex Chargeback
Vistex ChargebackSAPYard
 
Vistex Contract Overview
Vistex Contract OverviewVistex Contract Overview
Vistex Contract OverviewSAPYard
 
Quick Help in Vistex Technical
Quick Help in Vistex TechnicalQuick Help in Vistex Technical
Quick Help in Vistex TechnicalSAPYard
 
Simple SAP Security Breach !!
Simple SAP Security Breach !!Simple SAP Security Breach !!
Simple SAP Security Breach !!SAPYard
 
Hello SAP Ehp7 !!
Hello SAP Ehp7 !!Hello SAP Ehp7 !!
Hello SAP Ehp7 !!SAPYard
 
Offshore development model in 10 steps sap yard
Offshore development model in 10 steps   sap yardOffshore development model in 10 steps   sap yard
Offshore development model in 10 steps sap yardSAPYard
 
Are you an abap coder or a programmer?
Are you an abap coder or a programmer?Are you an abap coder or a programmer?
Are you an abap coder or a programmer?SAPYard
 

More from SAPYard (10)

Flow Chart to get Free access to SAP HANA Cloud Platform
Flow Chart to get Free access to SAP HANA Cloud PlatformFlow Chart to get Free access to SAP HANA Cloud Platform
Flow Chart to get Free access to SAP HANA Cloud Platform
 
SAP HANA for Beginners from a Beginner
SAP HANA for Beginners from a BeginnerSAP HANA for Beginners from a Beginner
SAP HANA for Beginners from a Beginner
 
Unwanted character ‘#’ in the short text print outs and reports sap yard
Unwanted character ‘#’ in the short text print outs and reports   sap yardUnwanted character ‘#’ in the short text print outs and reports   sap yard
Unwanted character ‘#’ in the short text print outs and reports sap yard
 
Vistex Chargeback
Vistex ChargebackVistex Chargeback
Vistex Chargeback
 
Vistex Contract Overview
Vistex Contract OverviewVistex Contract Overview
Vistex Contract Overview
 
Quick Help in Vistex Technical
Quick Help in Vistex TechnicalQuick Help in Vistex Technical
Quick Help in Vistex Technical
 
Simple SAP Security Breach !!
Simple SAP Security Breach !!Simple SAP Security Breach !!
Simple SAP Security Breach !!
 
Hello SAP Ehp7 !!
Hello SAP Ehp7 !!Hello SAP Ehp7 !!
Hello SAP Ehp7 !!
 
Offshore development model in 10 steps sap yard
Offshore development model in 10 steps   sap yardOffshore development model in 10 steps   sap yard
Offshore development model in 10 steps sap yard
 
Are you an abap coder or a programmer?
Are you an abap coder or a programmer?Are you an abap coder or a programmer?
Are you an abap coder or a programmer?
 

Recently uploaded

Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsPrecisely
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 

Recently uploaded (20)

Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power Systems
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 

bgRFC Framework in SAP

  • 2. http://www.sapyard.com/ ______________________________________________________________ Page 2 of 22 http://www.sapyard.com/ Table of Contents What is bgRFC?......................................................................................3 bgRFC Configaration..............................................................................5 bgRFC Programming............................................................................17 bgRFC Debugging.................................................................................20 bgRFC Monitoring................................................................................22
  • 3. http://www.sapyard.com/ ______________________________________________________________ Page 3 of 22 http://www.sapyard.com/ i) What is bgRFC? The bgRFC allows applications to record data that is received later by a called application. When the data is received, we must ensure that the data was transferred to the receiver either once only in any order (transactional) or once only in the order of creation (queued). With the bgRFC, therefore, the asynchronies between the caller and the called application can result in the following advantages:  Within an SAP system (same system ID, same client). Decoupling and (potentially) parallelization are possible. The load is spread across the available application servers for this system. This bgRFC scenario is known as an inbound procedure.  Between two remote SAP Systems Decoupling and therefore the physical segmentation of an application or a business scenario are possible. As a result of the asynchronies, differences in the key features of the application servers for the called and calling applications can be balanced out. The recording is done in the calling system. This scenario is an outbound procedure.  Both procedures can be combined in an out-in procedure. Here we can take advantage of all the optimization options. If we choose this option, however, the data is recorded twice, once for the caller (outbound processing) and once for the called application (special type of the inbound procedure). This results in additional load for both database and for the application server due to the scheduler. Restrictions Combined use of the bgRFC with tRFC and qRFC in a single destination is not possible. However, for each destination we can define which communication type we want to use. Architecture The classic qRFC model detects the dependencies among the individual units only when the data is processed by the RFC scheduler. For each destination, the outbound scheduler starts a scheduler that processes the data for this destination. The schedulers run on each destination only for a limited period of time to ensure processing is consistent for all destinations. For this reason, the scheduler must determine the sequence again every time before it processes a destination. In contrast, with the bgRFC, the dependencies are determined when the data is stored. In doing so, the RFC scheduler can find all units that can be executed instantly with minimum effort and all dependencies
  • 4. http://www.sapyard.com/ ______________________________________________________________ Page 4 of 22 http://www.sapyard.com/ are detected only once. The additional effort when storing the data is compensated to a large extent by efficient algorithms and optimizations in the database design. Gateway The gateways, another potential source of bottlenecks, have also been optimized. The new concept regulates the maximum number of outbound schedulers that are allowed to run at the same time on an application server, and the maximum number of connections that all RFC schedulers can use. This limitation prevents the local gateway from becoming overloaded. The gateways of the destinations are protected from overload as well by making the number of parallel outbound schedulers for each sender system and their maximum number of connections configurable. Effects on Performance The improvements implemented with the new bgRFC design become noticeable primarily under high-load conditions when there are many dependent units for each destination. For the first time, a linear logarithmical scalability (dependent on the system capacity) is possible for RFC data processing. The transactional behavior of the queuing function does not allow for significant savings when an individual unit is being processed, but the application of more or faster hardware produces more noticeable results in throughput. The limiting factors are the performance of the database and the processing speed of the units. A new API also contributes to an optimized procedure. Redundant functions have been removed and some of the limitations of the old API no longer apply. This has resulted in a smoother and more efficient concept that will reduce time and effort for both support and development teams.
  • 5. http://www.sapyard.com/ ______________________________________________________________ Page 5 of 22 http://www.sapyard.com/ ii) bgRFC Configuration 1. Creation of Supervisor Destination: On the Define Supervisor Dest. Tab in transaction SBGRFCCONF, we can define a supervisor destination for bgRFC processing. The supervisor destination gets the configuration settings for the bgRFC scheduler and starts or stops the schedulers as required on each application server. This is a mandatory step because the bgRFC can only function if a supervisor destination has been defined. Prerequisites We have used transaction SM59 to define the supervisor destination as an RFC destination. This destination must be defined as either an ABAP connection or a logical connection. The following prerequisites must be met. ABAP Connection No load balancing can be defined. No system number can be entered. No server can be entered.
  • 7. http://www.sapyard.com/ ______________________________________________________________ Page 7 of 22 http://www.sapyard.com/ A user, password, and client must be entered for both connection types. Please refer the attached screenshots.
  • 9. http://www.sapyard.com/ ______________________________________________________________ Page 9 of 22 http://www.sapyard.com/ 2. Creation of destination: We have to create inbound/outbound destination name based on the requirement. a) Creation of Inbound destination: On the Define Inbound Dest. Tab page in the transaction SBGRFCCONF, we can maintain a separate inbound destination for each application. In the attached screenshot 6 inbound destinations is maintained. This is also a mandatory step to create any inbound bgRFC. Logon/server group can be defined using transaction RZ12. For each inbound destination we can define separate server group also by clicking on the each destination name. Please refer the attached screen shot for all other settings. All the settings and activities related to the transaction SBGRFCCONF is BASIS related activity so before creating/configuring any bgRFC please consult with BASIS team.
  • 10. http://www.sapyard.com/ ______________________________________________________________ Page 10 of 22 http://www.sapyard.com/ b) Creation of Outbound destination: We can create outbound destination using transaction SM59. Creation of outbound destination in SM59 is normal like any of the destination creation. Please refer the below screenshot for reference.
  • 11. http://www.sapyard.com/ ______________________________________________________________ Page 11 of 22 http://www.sapyard.com/ We have created outbound destination CE1_xxxcat_chget_active_outbound under ABAP Connections. For this destination we have to maintain the necessary target destination IP, system no etc. Please refer all the below screenshots for detailed settings in each tab.
  • 14. http://www.sapyard.com/ ______________________________________________________________ Page 14 of 22 http://www.sapyard.com/ After creation of the outbound destination in SM59 we have maintain this destination in SBGRFCCONF transaction. We have to maintain the destination in Scheduler: Destination tab of transaction SBGRFCCONF. Please refer the below screenshot.
  • 16. http://www.sapyard.com/ ______________________________________________________________ Page 16 of 22 http://www.sapyard.com/ iii) bgRFC Programming After the entire o figuratio ow let’s talk a out the progra i g. 1. Creation of unit: We have to create one bgRFC unit by taking the reference from the configured inbound / outbound destination name. Destination objects can be requested using the class methods from the class CL_BGRFC_DESTINATION_OUTBOUND for the outbound and the class CL_BGRFC_DESTINATION_INBOUND for the inbound. We have to use method CREATE of the above mentioned class to create a destination object. Please see the below example of how to create an inbound destination object. Pass any of the configured inbound destination name in the below mentioned variable. After creation of the destination object it is time to create a bgRFC unit. bgRFC unit can be two types like tRFC unit or qRFC unit. We have to use method CREATE_TRFC_UNIT to create a tRFC unit and method CREATE_QRFC_UNIT to create a qRFC unit. Please refer the below screenshot for example. Here L_DEST is created at the previous step. We have to create a tRFC unit for that destination object. We can also define some delay during creation of the bgRFC unit to handle passive data changes but it is some advanced requirement and not in the scope of this bgRFC document. To create a qRFC unit we just have to call CREATE_QRFC_UNIT method instead of CREATE_TRFC_UNIT method.
  • 17. http://www.sapyard.com/ ______________________________________________________________ Page 17 of 22 http://www.sapyard.com/ 2. Calling a function module: After creation of the unit we have to call any function module in background. The new syntax for calling a function module for background processing (previously done using IN BACKGROUND TASK) is as follows: CALL FUNCTION fu ctio _ a e IN BACKGROUND UNIT unit EXPO‘TING … Inside the calling function module we have to write our required logic which we want to process in background (e.g. Update a table). Please refer below screenshot for calling of a function module. In the above example the function module is called in background using the created unit. In the exporting parameter we can define whatever we want to send in the function module. If we want to send some tables also we can define it in the calling function module and we can send it.
  • 18. http://www.sapyard.com/ ______________________________________________________________ Page 18 of 22 http://www.sapyard.com/ The function module must be RFC enabled function module. Here one thing needs to be remembered, calling the function module will happen once program does the COMMIT WORK. If we want to create bgRFC from our custom program like report in that case we have to do external COMMIT WORK but if we are trying to create bgRFC from any BADI/USER EXIT/Enhancement Spot in that case we do not need to apply external COMMIT WORK. Once standard SAP do the COMMIT WORK bgRFC unit will be created.
  • 19. http://www.sapyard.com/ ______________________________________________________________ Page 19 of 22 http://www.sapyard.com/ iv) bgRFC Debugging 1. Debug bgRFC unit using external break points: This is the most common way to debug a bgRFC unit. We have to put one external break point in the bgRFC unit to debug the unit. In the above demonstrated example we have to put external break point in the function module code to debug the logic of the function module. Any session break point will not work. In the below screen shot external break point is set inside the calling function module. 2. Debug bgRFC unit with bgRFC Monitor: This is another option to debug any bgRFC unit. This is generally used if any created unit is failed, in that case we can debug the particular unit using bgRFC Monitor. We have to use transaction SBGRFCMON to monitor the bgRFC units. Monitoring bgRFC units will be discussed in detail after this. To debug a particular erroneous unit we have to position the cursor on the unit in question and choose Unit Analysis ® Debug Unit from the context menu. There are some prerequisites to debug bgRFC unit this transaction.  The user creating the bgRFC and the user carrying out debugging must both have the new debugger set at the time of debugging.  Units can only be debugged directly with the bgRFC monitor if they have the status red (contain errors) or yellow (locked). Units with status green (error-free and not locked) cannot be debugged with the bgRFC Monitor.
  • 20. http://www.sapyard.com/ ______________________________________________________________ Page 20 of 22 http://www.sapyard.com/ In this example we have to put cursor on the particular unit and right click then choose Unit Analysis -> Debug Unit. If we cannot find this option in the context menu, this means that we are not authorized to carry out debugging with the bgRFC monitor. v) bgRFC Monitoring This is the last topic we will discuss in this document. bgRFC monitor typically required to check if any unit is failed or there are any issues in any particular unit. We have to use transaction SBGRFCMON to monitor bgRFC unit. In the selection screen we have option to monitor Inbound/Outbound unit along with tRFC unit or qRFC unit. Also there are several options in the selection screen. Please refer the below screen shot. After executing the transaction we will be able to monitor all the erroneous units in the system. We have to remember if any unit is created successfully and if there are no data issue or any connection issue in that case it will be executed and we will not able to see it in this transaction. Only erroneous and warning units will be displayed here. Please refer the below screenshot.
  • 21. http://www.sapyard.com/ ______________________________________________________________ Page 21 of 22 http://www.sapyard.com/ If we want to restart any units in that case put cursor in the desired unit then right click and select Restart Unit. We can also monitor bgRFC unit using transaction SBGRFCPERFMON. Please refer the below screenshot for reference. After executing this transaction we can monitor how many units are ready to execute, total no of units etc. If we select any Destination then will be able see all the units of that destination. This is the same view as we see using transaction SBGRFCMON.
  • 22. http://www.sapyard.com/ ______________________________________________________________ Page 22 of 22 http://www.sapyard.com/ References: http://help.sap.com/saphelp_nw73ehp1/helpdata/en/48/9709f255493987e10000000a421937/content.h tm Configuration http://help.sap.com/saphelp_nw73ehp1/helpdata/en/48/929142aa6b17cee10000000a421937/content.h tm Programming http://help.sap.com/saphelp_nw70/helpdata/en/44/f6f232f60b41e2e10000000a1553f6/content.htm Monitor https://help.sap.com/saphelp_nwpi711/helpdata/en/48/927cd3aa6b17cee10000000a421937/content.ht m Debugging