Connectivity
Components of SAP Communication Technology
Basic Technical Concepts
Example Applications: Synchronous Communication
Application Examples: Asynchronous Communication
Example Applications: Communication with Non-ABAP Technologies
Classic SAP Technologies (ABAP)
RFC
RFC Basics
RFC Interface
RFC Communication Scenarios
RFC Destinations
RFC System Fields
RFC Authorizations
Code Pages
Maintaining Trust Relationships between SAP Systems
RFC Administration
Limit Values for Resource Allocation for Asynchronous RFC
Configuring Resources for bgRFC
Checking RFC Authorizations
Maintaining Remote Destinations
Displaying, Maintaining, and Testing Destinations
Connection Types
Entering Destination Parameters
Technical Settings
Logon and Security
Settings for Code Pages
Preconfigured Code Pages
Special Options
Maintaining Group Destinations
Maintaining Trust Relationships between SAP Systems
Maintaining Trust Relationships between SAP Systems
Analyzing RFC Statistical Data
Monitoring tRFC
Writing RFC Programs in ABAP
Calling RFC Function Modules in ABAP
Introduction
RFC Calls
Parameter Handling in Remote Calls
Calling Remote Functions Locally
Calling Remote Functions Back
RFC Call Restrictions
Characteristics Using Unicode
RFC Exceptions
Usnig Pre-Defined Exceptions for RFC
Exceptions That Cannot Be Handled
RFC Variants
Synchronous RFC (sRFC)
Asynchronous RFC (aRFC)
Call Properties of Asynchronous RFCs
Receiving Results from an Asynchronous RFC
Keeping the Remote Context
Parallel Processing with Asynchronous RFC
CALL FUNCTION - STARTING NEW TASK
RECEIVE
WAIT UNTIL
aRFC Programming Example
Transactional RFC (tRFC)
CALL FUNCTION - IN BACKGROUND TASK
Queued RFC (qRFC)
Writing Remote Function Modules in ABAP
Steps for Implementing Remote Function Modules
Programming Tips
Debugging Remote Function Modules
Background Communication
Queued Remote Function Call (qRFC)
qRFC Communication Model
qRFC Outbound Queue
qRFC Inbound Queue
qRFC with Outbound and Inbound Queue Process Flow
qRFC Administration
Authorizations for Administering qRFC
Outbound Queue Administration
The QOUT Scheduler
Configuring System Resources for QOUT Scheduler
Registering/Deregistering a Destination
Optimizing Performance
Monitoring the Outbound Queue
Restarting Blocked Queues
Testing the qRFC Connection
Inbound Queue Administration
The QIN Scheduler
Configuring System Resources for QIN Scheduler
Inbound Processing Details
Executing qRFC Calls Locally
Registering the Inbound Queue
Monitoring the Inbound Queue
Checking Queue Status
Specifying Log-On Data for RFC Destinations
Display Management Data
qRFC Programming
qRFC Design
qRFC with Outbound Queue
Transferring Queue Names
qRFC with Inbound Queue
Transferring Queue Names to the Inbound Queue
qRFC API
qRFC API for the Outbound Queue
qRFC API for the Inbound Queue
qRFC API: Example Program
bgRFC (Background Remote Function Call)
bgRFC Architecture
bgRFC Configuration
Creating a Supervisor Destination
Creating Inbound Destinations
bgRFC Scheduler: System-Specific Settings
bgRFC Scheduler: Application Server-Specific Settings
bgRFC Scheduler: Destination-Specific Settings
bgRFC Administration
bgRFC Authorizations
Authorization Object S_BGRFC
Debug Authorizations for bgRFC
Troubleshooting and Monitoring
bgRFC Monitor
Debugging bgRFC Units
Debugging Using the bgRFC Monitor
Debugging with External Breakpoints
Migration
Outbound Scenarios
Inbound Scenarios
bgRFC Programming
API of bgRFC Type t and bgRFC Type q
Calling a Function Module
Transactional Consistency Check
Creating a Destination Object and Unit Objects
Manipulating a Background Unit
Using Queues to Lock and Unlock Units
RFC Client-Side Runtime Control
RFC Server-Side Runtime Control
New Data Types
Exception Handling
Examples for Inbound and Outbound Processing
Locking a bgRFC Type t Unit
Locking a Queue
Filling Multiple Units in Parallel
Local Data Queue (LDQ)
LDQ: Administration and Monitoring
LDQ Monitor
LDQ Programming
LDQ: Overview and Architecture
Class Description
Classes in the LDQ API - "Write"
Classes in the LDQ API - "Read"
Examples for LDQ API "Write" and "Read"
LDQ API "Write"
LDQ API "Read"
"Read" with Initial Confirm and Forecast
Repeated Read-and-Confirm Cycles
RFC API: Classical & SAP NetWeaver
Classical RFC SDK
Features in Detail
Contents of the classical RFC SDK
Compiling and Linking RFC Programs
The SAPRFC.INI File
Introduction
Examples
Possible Parameters
Error Handling
Debugging
Error Handling in ABAP
Error Handling in RFC Server Programs
More Information in Error Cases
Call-Back from an ABAP Function Module
Call-Back from an RFC Server Program
RFC and SAProuter
Introduction to SAProuter
RFC Client Program and SAProuter
Starting an RFC Server Program Via SAProuter
Using the Registering Feature
Program Start by Application Server
Program Start by Gateway
Program Start by SAPGUI
RFC Between External Programs
Using A Local sideinfo File
Using the saprfc.ini File
Platform-Specific Features of the RFC API
OS/2
SAP-Based UNIX Platforms
Windows 3.x
Windows NT/95
Programming with the RFC API
Technical Description
Supported Data and Transfer
Basic Functionality
Components of the RFC API
RFC Client Programs
Introduction to RFC Client Programs
Establishing an RFC Connection to R/2 Systems
Programming Example of Working With Local sideinfo File
Programming Example of Working Without Local sideinfo File
Programming Example of Working With saprfc.ini File
Establishing an RFC Connection to SAP Systems
Programming Example of Working With Local sideinfo file
Programming Example of Working With saprfc.ini File
Programming Example of Working Without Local sideinfo File
Load Balancing
Programming Examples
RFC Using the ABAP Debugger
Remote Function Calls Using SAPGUI
RFC Server Programs
Introduction to RFC Server Programs
Registering Server Programs with the Gateway
Programming Examples
RFC Server Program Working With RfcDispatch
RFC Server Program Working With RfcDispatch and RfcListen
RFC Server Programs Sending/Receiving Internal Tables
Establishing an RFC Connection from an R/2 System
Establishing an RFC Connection from an SAP System
Passing Parameters
Writing an RFC Function in C
Using Multiple-Client Server Programs
Classical RFC SDK Reference
Classical RFC API Data Types
Function Reference
SAP NetWeaver RFC SDK
Introduction
Architecture
Data Processing and Transfer
Security Issues
Contents of the NW RFC SDK
Administration
Supported Platforms
The SAPNWRFC.INI File
Examples
Parameter Overview
RFC API and SAProuter
RFC Client Program and SAProuter
Starting an RFC Server Program Via SAProuter
Using the Registering Feature
Program Start by Application Server
Program Start by Gateway
Programming with the RFC API
Working with the NW RFC SDK Files
Getting Connected
Passing Parameters
RFC Client Programs
Calling a Function in SAP Systems
Passing Structures and Tables
Executing a Call-Back from an ABAP Function Module
Load Balancing
RFC Server Programs
Establishing an RFC Connection from an SAP System
Registering Server Programs on the Gateway
RFC Server Programming Example
Executing a Call-Back from an RFC Server Program
tRFC Between SAP and External Systems
Transactional RFC Client Programs
Transactional RFC Server Programs
Error Handling
Debugging
Error Handling in ABAP
Error Handling in RFC Server Programs
SAP NetWeaver RFC SDK Reference
SAP NetWeaver RFC API Handles, Structures, Enumerations
RFC API Handles
handle RFC_HANDLE
handle RFC_TYPE_DESC_HANDLE
handle RFC_STRUCTURE_HANDLE
handle RFC_FUNCTION_DESC_HANDLE
handle RFC_FUNCTION_HANDLE
handle RFC_TABLE_HANDLE
handle RFC_TRANSACTION_HANDLE
RFC API Enumerations
enum RFCTYPE
enum RFC_DIRECTION
enum RFC_RC
RFC API Structures
struct RFC_ERROR_INFO
struct RFC_CONNECTION_PARAMETER
struct RFC_PARAMETER_DESC
struct RFC_FUNCTION_DESC
struct RFC_FIELD_DESC
struct RFC_STRUCTURE_DESC
struct RFC_ATTRIBUTES
SAP NetWeaver RFC API Functions
Administrative Functions
RfcInit
RfcSetTrace
Connection Handling
RfcCloseConnection
RfcGetConnectionAttributes
RFC Client Functions
RfcOpenConnection
RfcOpenClient
RfcInvoke
RFC Server Functions
RfcStartServer
RfcRegisterServer
RfcListenAndDispatch
RfcInstallServerFunction
RfcInstallGenericServerFunction
Transactional Functions
RfcGetTransactionID
RfcCreateTransaction
RfcInvokeInTransaction
RfcSubmitTransaction
RfcConfirmTransaction
RfcDestroyTransaction
RfcInstallTransactionHandlers
Function-Handling Functions
RfcInvoke
RfcSetFunctionDesc
RfcGetFunctionDescHandle
RfcCreateFunction
RfcDestroyFunction
RfcGetParameterValue
RfcSetParameterValue
RfcSetParameterActive
RfcGetFieldValue
RfcSetFieldValue
Table-Handling Functions
RfcCreateTable
RfcCloneTable
RfcDestroyTable
RfcAddNewRow
RfcInsertNewRow
RfcAddRow
RfcAppendNewRow
RfcAppendRow
RfcInsertRow
RfcDeleteRow
RfcDeleteCurrentRow
RfcDeleteAllRows
RfcMoveToFirstRow
RfcMoveToLastRow
RfcMoveToNextRow
RfcMoveTo
RfcMoveToPreviousRow
RfcGetCurrentRow
RfcGetRowCount
RfcGetRowType
Structure-Handling Functions
RfcSetStructureDesc
RfcGetStructureDescHandle
RfcGetStructureDes
RfcCreateStructure
RfcCloneStructure
RfcDestroyStructure
Metadata and Repository Functions
RfcGetFunctionDesc
RfcGetCachedFunctionDesc
RfcAddFunctionDesc
RfcXXXTypeDesc()
RfcCreateTypeDesc
RfcAddTypeField
RfcSetTypeLength
RfcGetTypeName
RfcGetFieldCount
RfcGetFieldDescByIndex
RfcGetFieldDescByName
RfcGetTypeLength
RfcDestroyTypeDesc
RfcCreateFunctionDesc
RfcAddParameter
RfcEnableBASXML
RfcGetFunctionName
RfcGetParameterCount
RfcGetParameterDescByIndex
RfcGetParameterDescByName
RfcIsBASXMLSupported
RfcDestroyFunctionDesc
RfcGetRcAsString
RfcGetTypeAsString
RfcGetDirectionAsString
IDoc Interface/ALE
BAPI
Communication Between ABAP and Non-ABAP Technologies
Internet Communication Framework
Architecture
Server Architecture
Client Architecture
Classes and Interfaces for the Server Role
IF_HTTP_SERVER
Attributes
Constants
Methods
IF_HTTP_RESPONSE and IF_HTTP_REQUEST
Methods for IF_HTTP_RESPONSE and IF_HTTP_REQUEST
IF_HTTP_ENTITY
Attributes for IF_HTTP_ENTITY
IF_HTTP_EXTENSION
Attributes
Constants for Describing the Control Flow
Constants for Describing Lifetime Control
Methods
IF_HTTP_UTILITY
Methods for Interface IF_HTTP_UTILITY
Classes and Interfaces for the Client Role
Interface IF_HTTP_CLIENT
Attributes
Constants
Methods
ICF Administration
Server Function Administration
Authorizations
Authorization Object S_ICF
Authorization Object S_ICF_ADM
Authorization Object S_ICFREC
Restricting Authorizations for Transaction SICF
Determining Authorizations in the Target System
Client Function Administration
Establishing a Connection Using a Destination (SM59)
Parallel Requests
Configuring a Proxy
Error Handling and Monitoring
Fehleranalyse: Vorgehen
External Debugging
External Debugging under Load Distribution
Traces
Parsing URLs
ICF Recorder
Activate Recording
Displaying and Processing Entries
Authorization Object S_ICFREC
Maintaining the ICF Profile Parameters
Managing Error Information
Performance Measurements
Troubleshooting Using Central Monitoring Functions
Statistical Data for RFC and ICF
Development
Server-Side Development
HTTP Request Handler
Developing a HTTP Request Handler
Creating an HTTP Request Handler
Accessing Header Fields
List of the Pseudo Header Fields
Accessing Form Fields
Accessing Cookies
Accessing HTTP Body Data
Accessing HTTP Multipart Data
Stateless/Stateful Communication
Terminating a Session
Code Page in ICF
Compression Techniques
Creating and Configuring ICF Services
Create Service
Maintaining Logon Procedures
Logon Checks: Overview
Standard Logon Order
Alternative Logon Order
Logon Using Service Data
Logon with SSL Certificate
Logon Using Tickets
Logon Using Basic Authentication.
Logon via SAML
Specifying the Client
Determining the Logon Language
Defining Service Data
HTTP Load Distribution
Defining Security Requirements
Setting Up Error Pages
Format and Parameters of the Error Document
Inserting an HTTP Request Handler
Activating and Deactivating ICF Services
Creating Virtual Hosts
Virtual Hosts: Application Example
Internal Aliases
External Aliases
Testing the HTTP Request Handler
Transporting ICF Services
Client-Side Development
Example program: Executing an HTTP Request
Parallel Processing Requests
Redirecting Requests
Web Service Technologies in the Application Server
Example: SOAP Message
Example: WSDL File
Gateway
XML- Library
SAP XSLT Processor Reference