managing qrfc traffic

32
© 2008 Wellesley Information Services. All rights reserved. Managing qRFC Traffic Don Kehoe Symmetry Corporation 1 1 In This Session ... We will go over the technology behind qRFC We’ll look at the tools used to monitor and administer it See examples of applications using qRFCs Take a peek at the new bgRFC 2 2 What We’ll Cover … qRFC and underlying architecture SAP Gateway qRFC transactions Other tools Example applications using qRFC bgRFC Wrap-up _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________ _________________________________

Upload: vipin-muthukattil

Post on 04-Mar-2015

533 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Managing qRFC Traffic

© 2008 Wellesley Information Services. All rights reserved.

Managing qRFC Traffic

Don KehoeSymmetry Corporation

11

In This Session ...

• We will go over the technology behind qRFC• We’ll look at the tools used to monitor and administer it• See examples of applications using qRFCs• Take a peek at the new bgRFC

22

What We’ll Cover …

• qRFC and underlying architecture• SAP Gateway• qRFC transactions• Other tools• Example applications using qRFC• bgRFC• Wrap-up

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 2: Managing qRFC Traffic

33

Transactional RFC (tRFC)

• An asynchronous communication method that executes the called function module in the RFC server only once

The remote system doesn’t need to be available when the RFC client program is executing a tRFCThe tRFC component stores both the called RFC function and the corresponding data in the SAP database under a unique transaction ID (TID)

• tRFC is always used if a function is executed as a Logical Unit of Work (LUW)

Within a LUW, all calls are executed in the order in which they are called, executed in the same program context in the target system, and run as a single transaction: they are either committed or rolled back as a unit

• Implementation of tRFC is recommended if you want to guarantee preserving the transactional order of the calls

44

Transactional RFC (tRFC) (cont.)

• tRFCs are transferred immediately to the target

Sending Application

tRFC

Receiving Application

tRFC

55

Queued RFC (qRFC)

• To guarantee that multiple LUWs are processed in the order specified by the application, you can serialize tRFC using queues (inbound and outbound queues)

• This type of RFC is called queued RFC (qRFC) qRFC is therefore an extension of tRFCIt transfers an LUW (transaction) only if it has no predecessors(in reference to the sequence defined in different application programs) in the participating queues

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 3: Managing qRFC Traffic

66

Queued RFC (qRFC) (cont.)

• Inbound and outbound queues

Sending Application

tRFC

Receiving Application

tRFC

Outbound Queue Inbound Queue

Outbound

Inbound

77

Outbound Queues

• qRFC is a layer between the application and tRFCIt only allows a LUW to be transferred to a target system if no predecessor LUWs exist in the participating queuesAfter a qRFC LUW is executed, the QOUT Scheduler automatically executes the next qRFC LUW waiting in the queue

• qRFC with outbound queue enables serialization of the LUWs in the sending system

You can use qRFC with outbound queue with every tRFC-supported target system, because the sequence of the calls is established in the application program

The target system therefore does not require any knowledge about the serialization

88

Outbound Queues (cont.)

• The queued RFC with outbound queue causes the pages of the sending system to be serialized

The target system has no knowledge of the serialization in the sending systemThis means that it is possible to communicate with any SAP target system from release 3.0 onwards

• A LUW (transaction) can be distributed between more than one queue

However, it is only transferred if all predecessor LUWs in all participating queues have been processedAfter a qRFC transaction has been executed, the system tries to start all waiting qRFC transactions in sequence

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 4: Managing qRFC Traffic

99

• Outbound queue processingqRFCs

System 1 System 2

qLUW 1

qLUW 2

qLUW 3

Queue1

Queue2

Queue3

Queue4

Queue5

Outbound Queues (cont.)

1010

Inbound Queues

• You use qRFC with inbound queue if the application itself determines when it processes the inbound qRFC LUWs in the target system

• You also use inbound qRFC if you want to remove the connection between the transfer of LUWs and their execution

• qRFC with inbound queue always means that an outbound queue also exists in the sending system

1111

Inbound Queues (cont.)

• Using an inbound queue separates the transfer of qRFC LUWs from their processing

The outbound queue is used to write the qRFC LUWs to the inbound queue of the target system

This reduces the processing workload in the sending system to the transfer of LUWs to the target system

• LUWs arriving in the inbound queue are read and processed from the queue either by the QIN Scheduler or by program calls from an application program

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 5: Managing qRFC Traffic

1212

SAP Web Application Server (WAS)

• WAS infrastructure

1313

qRFC Components

• When an application uses qRFC it uses all the underlying layers

qRFC

TCP/IPCPICRFC

tRFC

Applications

1414

Architecture

• CPI-C (Common Programming Interface for Communication)

Provides a cross-system-consistent and easy-to-use programming interface for applications that require program-to-program communicationThe conversational model of program-to-program communication is commonly used in applicationsThe model is described in terms of two applications —speaking and listening — hence, the term conversation

A conversation is simply a logical connection between two programs that allows the programs to communicate with each otherFrom an application’s perspective, CPI-C provides the function necessary to enable this communicationIt is an Opens Group (X/OPEN) standard

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 6: Managing qRFC Traffic

1515

Architecture (cont.)

• CPI-C (BC-CST-GW)• Gateway/CPIC (BC-CST-GW)

Standardized interface for system-wide communication between programsThe protocol can be divided into four areas:

Session setup Session control Communication End of session

1616

Architecture (cont.)

• Example CPI-C command: Send_Data (CMSEND)A program uses the Send_Data (CMSEND) call to send data to a remote programWhen issued during a mapped conversation, this call sends one data record to the remote program

The data record consists entirely of data and is not examined by the system for possible logical records

When issued during a basic conversation, this call sends data to the remote program

The data consists of logical recordsThe amount of data is specified independently of the data format

1717

What We’ll Cover …

• qRFC and underlying architecture• SAP Gateway• qRFC transactions• Other tools• Example applications using qRFC• bgRFC• Wrap-up

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 7: Managing qRFC Traffic

1818

SAP Gateway

• Each instance of an SAP system has a gatewayThe gateway enables communication between work processes and external programsIt also enables communication between work processes from different instances or SAP systems

• SAP also provides a stand-alone gateway for external systems

1919

Gateway Read Process

• Gateway read (gwrd, gwrd.exe) is the main process in the gateway system

• It is started by the application server (dispatcher) and checked by it periodically

• The gateway reader receives and processes all CPI-C requests

• If the executable gwrd program is called without parameters or with the switch -help, the program outputs a description of the possible command parameters, as well as all the patches

SAP Gateway speaks CPI-C

2020

Gateway Monitor

• Use the Gateway Monitor (gwmon, gwmon.exe) to analyze and administer the SAP Gateway

• When you start it, you initially get a list of active CPI-C connections

You can call up the other monitor functions via a menu • You can monitor the gateway from the SAP system

(transaction SMGW) or from the operating system

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 8: Managing qRFC Traffic

2121

What We’ll Cover …

• qRFC and underlying architecture• SAP Gateway• qRFC transactions• Other tools• Example applications using qRFC• bgRFC• Wrap-up

2222

qRFC Transactions

• SMQ1qRFC Monitor for the outbound queue

• SMQ2qRFC Monitor for the inbound queue

• SMQSOutbound Queue Scheduler used to register, deregister, and exclude destinations

• SMQRInbound Queue Scheduler used to register and deregister queues

• SMQEqRFC Administration

2323

SMQ1

• SMQ1 Outbound Queue Monitor

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 9: Managing qRFC Traffic

24

SMQ1 (cont.)

• SMQ1 Status InformationDouble clicking some fields gives more information

2525

SMQ1 (cont.)

• SMQ1 qRFC dataThis is a display of the LUW data being sent

2626

SMQ1 (cont.)

• BI – NOSENDLUWs of this queue are never sent but are retrieved by a special applicationThese queues are only used internally at SAP (BW or CRM during communication with mobile clients)Even if a LUW was read by the corresponding application (BW, CRM), this status does not changeThe LUW is only deleted from the queue if this application confirms collection (collective confirmation possible)Under no circumstances should this status be reset using transaction SMQ1 and the queue activated

Caution

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 10: Managing qRFC Traffic

2727

SMQ1 (cont.)

• BI – NOSEND (cont.)Status changes depending on BI state of the data

Caution

2828

SMQ2

• Initial screen

2929

SMQ2 (cont.)

• Inbound queueDouble clicking on some fields gives more information

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 11: Managing qRFC Traffic

3030

SMQ2 (cont.)

• Queue entriesYou can delete, display, and execute qRFCs from here

3131

SMQ2 (cont.)

• Inbound Queue Data

3232

SMQS Outbound Scheduler

• SMQS and registrationYou can register and deregister queues here

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 12: Managing qRFC Traffic

3333

SMQS Outbound Scheduler (cont.)

• SMQS and deregistration

3434

SMQS Outbound Scheduler (cont.)

• SMQS and excludeYou can use SMQS to exclude a destination

3535

SMQS Outbound Scheduler (cont.)

• RZ12 RFC quotasQuotas are used to limit resources used by qRFC

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 13: Managing qRFC Traffic

3636

SMQS Outbound Scheduler (cont.)

• SMQS RFC quotasYou can check on the resources allocated to qRFC

3737

SMQS Outbound Scheduler (cont.)

• SMQS RFC quotas (cont.)

3838

SMQS Outbound Scheduler (cont.)

• RZ12 RFC quotas

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 14: Managing qRFC Traffic

3939

SMQS Outbound Scheduler (cont.)

• SMQS Change RFC GroupYou can change the server group here

4040

SMQS Outbound Scheduler (cont.)

• SMQS Change RFC Group (cont.)

4141

SMQR Inbound Scheduler

• SMQR and registration

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 15: Managing qRFC Traffic

4242

SMQE qRFC Administration

• SMQEYou can see and change log and trace settings

4343

SMQE qRFC Administration (cont.)

• SMQE logs and traceYou can also activate and view traces

4444

SMQE qRFC Administration (cont.)

• SMQE qRFC Log

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 16: Managing qRFC Traffic

4545

SMQE qRFC Administration (cont.)

• SMQE qRFC Trace

4646

What We’ll Cover …

• qRFC and underlying architecture• SAP Gateway• qRFC transactions• Other tools• Example applications using qRFC• bgRFC• Wrap-up

47

Other Tools

• SMGW – Gateway Trace• ST11 – Developer Traces• ST05 – RFC Trace• SLG1 – Application Log• RZ20 – CCMS Monitoring

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 17: Managing qRFC Traffic

48

SMGW Gateway Trace

• The Gateway Trace File is an essential source of information

You can display the file by clicking on the icon

49

SMGW Gateway Trace (cont.)

• Gateway Trace File contains CPIC commands and dataWatch for the errors, data dumps, and time stamps

50

SMGW Increase Trace Level

• There are three trace levelsYou can change the trace levels here

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 18: Managing qRFC Traffic

51

ST11 Developer Traces

• Developer traces narrow the trace scopeIncluding RFC information for each work process

52

ST11 RFC Trace

RSTR0006: Display Developer Traces

**** Trace file opened at 20080115 211237 EST SAP-REL 700,0,75 RFC-VER 3 852527======> CPIC-CALL: 'ThSAPOCMINIT'Timeout during connection setup. Please check partner availabilityABAP Programm: RSRFCPIN (Transaction: SM59)Called function module: RFC_PINGUser: XXXXXX (Client: 000)Destination: SAPOSS (handle: 2, , {478D4BA3-4A07-02EC-0000-0000AC1600D0})Error RFCIO_ERROR_SYSERROR in abrfcpic.c : 2323CPIC-CALL: 'ThSAPOCMINIT'Timeout during connection setup. Please check partner availabilityHOST =77.71.78.74SERV =sap2224

• Developer RFC traces display data from a work processData is the same as in Gateway Trace

53

ST05 RFC Trace

• ST05 can be used to trace RFC You can filter the trace and the display

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 19: Managing qRFC Traffic

54

ST05 RFC Trace (cont.)

55

SLG1 Application Log

• SLG1 shows logs written by the applicationsThis can show reasons for qRFC failures

56

RZ20 CCMS Monitor

• QRFC errors can be viewed in CCMSAlerts can be monitored and sent out

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 20: Managing qRFC Traffic

57

Other Tools

• STAD – Statistics Records• ST03N – Workload Analysis• Tables ARFCRSTATE, ARFCRDATA, ARFCSSTATE, and

ARFCSDATA• SM21 – System Log• SM50 – Work Process Monitor and Trace File• SM04 – User Trace• Solution Manger Business Process Monitoring• Solution Manager Diagnostics

5858

What We’ll Cover …

• qRFC and underlying architecture• SAP Gateway• qRFC transactions• Other tools• Example applications using qRFC• bgRFC• Wrap-up

5959

Some Applications Using qRFC

• PI (Process Integration)/XI (Exchange Infrastructure)• SCM CIF(Core Interface)• CRM Middleware• NetWeaver BI (Business Intelligence)• SAP Tax Interface• ALE (Application Linking and Enabling)

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 21: Managing qRFC Traffic

6060

PI qRFC

• Inbound queue of PI Here the inbound queue has eight PI entries

6161

PI qRFC (cont.)

• PI provides tools for analyzing qRFC errorsYou can use these tools in SMQ1 and SMQ2Double clicking on Queue Name field shows diagnostic screen

6262

PI qRFC (cont.)

• PI LUW data diagnostic screen

12

3

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 22: Managing qRFC Traffic

6363

PI qRFC (cont.)

• PI Display Process 1

6464

PI qRFC (cont.)

• Display Message Monitor 2

6565

PI qRFC (cont.)

• PI Display XML Message

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 23: Managing qRFC Traffic

6666

PI qRFC (cont.)

• PI Display Trace 3

6767

PI qRFC (cont.)

• PI Manage Queues

6868

PI qRFC (cont.)

• PI provides a tool to manage its queues You can use this tool to register and deregister PI queues

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 24: Managing qRFC Traffic

6969

SCM Queue Manager

• SCM provides a Queue ManagerSCM Queue Manager manages both SCM and R3 queuesUse transaction /SAPAPO/CQ

7070

SCM Queue Manager (cont.)

• /SAPAPO/CQ

7171

SCM Using Inbound Queues to ERP from SCM

• Inbound queues are configured in SPROLook in Integration with SAP Components

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 25: Managing qRFC Traffic

7272

SCM Using Inbound Queues to ERP from SCM (cont.)

• Queue Type field is used to set inbound queuesBlank is for outbound queues, I for inbound queues

7373

SCM Using Inbound Queues from ERP to SCM

• Queue Type field is used to set inbound queues (cont.)Blank is for outbound queues, I for inbound queues

7474

SCM qRFC

• CIF Debugging can be set in SPROIn Basic Settings for Data Transfer

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 26: Managing qRFC Traffic

7575

SCM qRFC (cont.)

• Debugging is off (blank), on (X) or NOSENDS (R)An R setting will stop entries in the queue

7676

SCM CIF

• Planned Independent Requirements (PIR) sent to SAP R/3These commonly have application errors

77

SCM CIF (cont.)

• Planned Independent Requirements ErrorSYSFAIL

No Requirement Type found

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 27: Managing qRFC Traffic

7878

CRM Middleware Queues

• Outbound queuesCDB* Start queues for loads CRM to CDBCRM_SITE* Load queues for Mobile ClientsCSA* Send queues of CRM Server ApplicationsEXT* Start queues for loads CRM to Ext.R3AI/R* Start queues for loads from ERP Backend systemR3AU* Load queues CRM to ERP Backend system

• Inbound queuesCRI* Initial load queues CRM to CDBCRM_SITE* Load queues from Mobile ClientsR3A* Load queues ERP Backend to CRMCSA* Send inbound queues of CRM Server Applications

7979

CRM Middleware Queues (cont.)

• SMWP Monitoring CockpitGreat overview and tool for CRM Middleware

8080

CRM Middleware Queues (cont.)

• SMW01 BDOC MessagesList all BDOCS processed by CRM

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 28: Managing qRFC Traffic

8181

SAP Tax Interface

• Documents with errors in qRFC queue

8282

What We’ll Cover …

• qRFC and underlying architecture• SAP Gateway• qRFC transactions• Other tools• Example applications using qRFC• bgRFC• Wrap-up

8383

bgRFC

• Classic qRFCThe 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

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 29: Managing qRFC Traffic

8484

bgRFC (cont.)

• bgRFCWith the bgRFC (background RFC), 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 are detected only onceThe additional effort when storing the data is compensated to a large extent by efficient algorithms and optimizations in the database design

For each client, a defined number of outbound schedules are started that process the queued load in parallel

The load on the target systems is determined in shorter intervals and is, therefore, more accurate than before

8585

bgRFC (cont.)

• bgRFC is configured in SM59 Special Options0 is Classic RFC, 1 is bgRFC

8686

bgRFC (cont.)

• bgRFCmonSelection screen

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 30: Managing qRFC Traffic

8787

bgRFC (cont.)

• bgRFCmon shows queue status and breakdown for bgRFCDetailed breakdown of bgRFC units

8888

bgRFC (cont.)

• bgrfcperfmon bgRFC Performance Monitor

8989

What We’ll Cover …

• qRFC and underlying architecture• SAP Gateway• qRFC transactions• Other tools• Example applications using qRFC• bgRFC• Wrap-up

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 31: Managing qRFC Traffic

90

Resources

• RFC Monitoring – Best Practices for Solution Management

http://service.sap.com/~form/sapnet?_FRAME=CONTAINER&_OBJECT=011000358700000657512007EOr search Service Marketplace for “Best Practices RFC Monitoring”

• SAP Professional Journal: May/June 2007Wolfgang Baur, “Increase the Efficiency of Your RFC Communications with bgRFC — A Scalable and Transactional Middleware Framework”

9191

7 Key Points to Take Home

• qRFC is a basic method for inter-system communication• SMQ1 is the main tool for qRFC monitoring as outbound

queues are default; SMQ2 is the main tool for inbound monitoring

There are many other tools you can use for qRFC administration• Most activities with qRFC are automatic• Additional activities are normally directed by SAP• Do not delete or change queues or qRFCs unless you

know exactly what the data is• Pay attention to bgRFC as it may be used in many

applications using qRFC in the future• Keep a close watch on changes to SAP communication

architecture

9292

Your Turn!

How to contact me:Don Kehoe

[email protected]

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

_________________________________

Page 32: Managing qRFC Traffic

Wellesley Information Services, 990 Washington Street, Suite 308, Dedham, MA 02026

Copyright © 2008 Wellesley Information Services. All rights reserved.