WebSphere® Message Broker V6.1 SAP adapter nodes overview WebSphere® Message Broker V6.1 This presentation is an overview of SAP adapter nodes for WebSphere Message Broker V6.1 Agenda Agenda SAP terminology Overview Adapter connection wizard Transaction support Problem determination Summary The agenda for this presentation is shown here. SAP terminology SAP terminology Section This section covers SAP terminology. SAP terminology SAP terminology IDoc (SAP intermediate document) Represent SAP business objects as flat structures Proprietary format defined by SAP for business data transmission Used for asynchronous batch data transmission SAPJCo: SAP Java connector (SAPJCo) is a toolkit used for a Java application to communicate with any SAP System The package supports both Java™ to SAP system and SAP system to Java calls Shown on this slide and the next is some common SAP terminology to help you to better understand SAP adapter. IDocs represent SAP business objects as flat structures. IDocs are proprietary format defined by SAP for business data transmission. The SAP Java Connector, often called SAPJCo, is a toolkit that allows a Java application to communicate with any SAP System. The package supports both, Java to SAP System and SAP System to Java calls SAP terminology (continued) SAP terminology (continued) Business Application Program Interfaces (BAPI) Programming interface to access SAP Database Provide integration between the SAP System and external applications, legacy systems and so on. Defined in the Business Object Repository as methods of SAP business objects or SAP interface types. Enables object-oriented access to application components in the SAP System ALE (Application Link Enabling) Integration interface in SAP's business framework architecture Enable software components from SAP and from other software vendors to communicate and be integrated with each other ALE uses IDoc for data exchange Advanced Business Application Programming (ABAP) programming language intended to be used by SAP users to enhance SAP applications ABAP programs reside inside the SAP database. BAPIs, or business application program interfaces, are used to access SAP databases from within SAP or other development platforms external to R/3 that support the remote function call (RFC) protocol. The main objective of BAPI is to achieve integration between the SAP system and external processes such as applications or legacy systems. BAPIs are defined in the business object repository as methods of SAP business objects or SAP interface types and enable object-oriented access to business or application components in the SAP System Application link enabling, or ALE is an integration interface in the SAP business framework architecture, a component-based architecture enabling software components from SAP and other software vendors to communicate and be integrated with each other ALE can integrate business processes between SAP Systems and external applications and between SAP Systems. Application systems are loosely coupled in an ALE integrated system and the data is exchanged asynchronously ALE uses IDoc for data exchange Advanced business application programming, or ABAP is a programming language intended to be used by SAP users to enhance SAP applications. You can develop custom reports and interfaces with ABAP programming and all ABAP programs reside inside the SAP database. Overview Overview Section This section provides an overview of the SAP Adapter functionality. SAP adapter outbound support SAP adapter outbound support SAP application SAP Adapter BAPI Outbound Interface Message flow ALE Outbound Interface Message flow SAP Query Interface Message flow SAP Queue AEP Interface Message flow ABAP extension module qRFC Interface Outbound calls supported using these interfaces: BAPI interface Single BAPI call BAPI / RFC Multiple BAPI calls in a single interaction (BAPI unit of work) BAPI result set ALE interface Single IDoc IDoc packets (collection of IDocs) qRFC support Advanced Event Processing (AEP) Interface Custom IDocs and ABAP handlers Query Interface for SAP Software (QISS) interface Retrieve application table data Outbound calls are supported with the BAPI interface, ALE interface, or Advanced Event Processing (AEP) interface using ABAP handlers and Query Interface for SAP Software (QISS). With BAPI, outbound can be simple BAPI calls, or BAPI using remote function calls, or multiple BAPI calls in a single interaction, referred to as a BAPI Unit of work. BAPI outbound calls have request and response interaction style. The ALE interface supports passing single or multiple IDocs, which are one-way calls where the IDocs are passed to the SAP application. With the Advanced Event processing interface, the adapter makes use of the Advanced Business Application Programming (ABAP) handlers. With the QISS interface, you can directly query the SAP application tables SAP adapter inbound support SAP adapter inbound support Inbound calls supported using these interfaces: ALE using asynchronous event notification For processing IDocs Event recovery table is used for inbound event management Advanced event processing For processing custom IDocs SAP Application SAP Adapter Event push Event Recovery DB ALE Inbound Interface Endpoint qRFC inbound SAP Queue Advanced Event Processing Interface Endpoint Event poll Event table This diagram shows the high level flow and the components for the inbound events from SAP. Inbound calls are supported by the ALE interface using asynchronous event notification. For the inbound call, the Adapter acts as an Rfc Server and listens for ALE events from the SAP Application and the adapter uses an event recovery table to manage the inbound events. With the Advanced Event Processing interface, the adapter processes any events related to custom IDocs. More details on outbound and inbound calls are discussed later in this presentation. SAP adapter metadata discovery SAP adapter metadata discovery Introspect returned SAP Metadata Import SAP Resource Adapter Discover/Import Metadata Service SAP Application SAP EMD Service Query EIS Discover/Import EMD Plugin Adapter Component Message set containing message definitions Select WebSphere Message Broker Toolkit Adapter Connection Wizard This diagram shows the interaction between the Adapter Connection wizard in WebSphere Message Broker Toolkit and the Enterprise Metadata Discovery support classes within the SAP adapter. It also shows the end to end flow of interaction from the tool to the adapter to the SAP application to create the artifacts for the outbound and inbound requests to and from SAP. The wizard lets you discover and import SAP metadata definitions and other artifacts related to BAPI, ALE and other interfaces. Based on your selection of metadata, message definitions containing properties that correspond to the method arguments are generated. Application specific information is set in the message definitions (mxsds) The inbound and outbound adapter components are also generated. Dependent files Dependent files Section This section covers the details of the dependent files required by SAP adapter. Setting up the broker runtime Setting up the broker runtime Your EIS provider provides client libraries that the broker requires in order to connect to the EIS Toolkit sapjco.jar, librfc32.dll and sapjcorfc.dll for Windows® sapjco.jar, librfccm.so and libsapjcorfc.so for UNIX® Use “mqsichangeproperties” to set up and report the properties, for example: To set up the sapjco.jar file required to connect to SAP system To set up native library files required for SAP( such as librfc2.dll, Sapjcorfc.dll (or .so) To report the properties mqsichangeproperties B1 -c EISProviders -o SAP -n jarsURL -v mqsireportproperties B1 -c EISProviders -o SAP -r mqsichangeproperties B1 -c EISProviders -o SAP -n nativeLibs -v A set of dependent files are required by the adapter at runtime and during design time when working with the adapter connection wizard. The Adapter Connection Wizard prompts you for the files required during design time. Once you finish the development of the application, and before you deploy the application to the broker runtime, you must set the dependency files required by the adapter to connect to the enterprise information system. You can make use of the mqsichangeproperties command to accomplish this task. This slide shows the format of the command for setting SAP dependencies like the sapjco.jar and the dll files, which are dependent files used by the adapter to connect and communicate with the SAP system. Transaction support Transaction support Section This section covers the transaction and security support. Transaction Transaction SAP applications support transaction for BAPI calls only Adapter provides local transaction support for the BAPI interface using these BAPI calls BAPI_TRANSACTION_COMMIT BAPI_TRANSACTION_ROLLBACK Adapter provides local transaction support for the ALE interface SAP applications support transactions for BAPI calls only through the use of BAPI_TRANSACTION_COMMIT and BAPI_TRANSACTION_ROLLBACK calls. The adapter also provides local transaction support for the ALE interface. The client must determine how to store the SAP transaction ID and how to relate the SAP transaction ID with the data being sent to the adapter. If the client does not send an SAP transaction ID with the message, the adapter returns one after processing the transaction. If the client has an SAP transaction ID, it must populate the SAP transaction ID property with that value before executing the transaction. Problem determination Problem determination Section This section is a review of problem determination. Log and trace files are covered in the common WebSphere Adapter nodes overview presentation. Problem determination Problem determination Logs Local error log Windows: Event log UNIX: syslog Broker logs Eclipse error logs: located under \.metadata\.log Broker domain event logs: log is stored and managed by the configuration manager can be information, errors, or warnings view the messages in the editor area of the Broker Administration perspective Trace User trace Service trace Before interacting with the Adapter, test the components in SAP, where possible On Windows systems, the local error log is the Windows Event log application view. On UNIX and Linux systems, the local error log is the syslog. Where syslog messages are sent depends on how you configure your UNIX or Linux system. The Eclipse error log captures internal errors that are caused by the operating system or your code and are logged in the .log file under your workspce. Broker domain log information is written to the broker domain Event Log, which is stored and managed by the Configuration Manager. The Event Log displays messages about events that occur within the broker domain, such as deploying topology or topics hierarchy configuration. The messages can be information, errors, or warnings. You can view the messages in the editor area of the Broker Administration perspective. The broker domain Event Log shows errors that are generated by all workbench users in that particular domain. You can enable the user and service traces by using the mqsichangetrace command Summary and references Summary and references Section This section provides a summary and references. Summary and references Summary and references Summary Discussed SAP adapter overview covering the architecture, inbound and outbound interface support, adapter connection wizard and problem determination References Information center User guide IBM Education Assistant This presentation provided an overview of SAP adapter nodes. More information can be found in the user guide and the Adapter information center. Feedback Feedback Your feedback is valuable You can help improve the quality of IBM Education Assistant content to better meet your needs by providing feedback. Did you find this module useful? Did it help you solve a problem or answer a question? Do you have suggestions for improvements? Click to send e-mail feedback: mailto:iea@us.ibm.com?subject=Feedback_about_WMBV61_SAPAdapterNodes_Overview.ppt This module is also available in PDF format at: ../WMBV61_SAPAdapterNodes_Overview.pdf You can help improve the quality of IBM Education Assistant content by providing feedback for this module using the link on this slide. Trademarks