Professional Documents
Culture Documents
User’s Guide
Software Release 5.1.0
November 2003
Important Information
SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH
EMBEDDED OR BUNDLED TIBCO SOFTWARE IS SOLELY TO ENABLE THE FUNCTIONALITY
(OR PROVIDE LIMITED ADD-ON FUNCTIONALITY) OF THE LICENSED TIBCO SOFTWARE.
THE EMBEDDED OR BUNDLED SOFTWARE IS NOT LICENSED TO BE USED OR ACCESSED BY
ANY OTHER TIBCO SOFTWARE OR FOR ANY OTHER PURPOSE.
USE OF TIBCO SOFTWARE AND THIS DOCUMENT IS SUBJECT TO THE TERMS AND
CONDITIONS OF A LICENSE AGREEMENT FOUND IN EITHER A SEPARATELY EXECUTED
SOFTWARE LICENSE AGREEMENT, OR, IF THERE IS NO SUCH SEPARATE AGREEMENT,
THE CLICKWRAP END USER LICENSE AGREEMENT WHICH IS DISPLAYED DURING
DOWNLOAD OR INSTALLATION OF THE SOFTWARE (AND WHICH IS DUPLICATED IN THE
TIBCO ADAPTER FOR R/3 USER’S GUIDE). USE OF THIS DOCUMENT IS SUBJECT TO THOSE
TERMS AND CONDITIONS, AND YOUR USE HEREOF SHALL CONSTITUTE ACCEPTANCE
OF AND AN AGREEMENT TO BE BOUND BY THE SAME.
This document contains confidential information that is subject to U.S. and international copyright
laws and treaties. No part of this document may be reproduced in any form without the written
authorization of TIBCO Software Inc.
TIB, TIBCO, Information Bus, The Power of Now, TIBCO Rendezvous, TIBCO Designer, TIBCO
Adapter, TIBCO ActiveEnterprise, TIBCO IntegrationManager, TIBCO Administrator, and TIBCO
Hawk are either registered trademarks or trademarks of TIBCO Software Inc. in the United States
and/or other countries.
All other product and company names and marks mentioned in this document are the property of
their respective owners and are mentioned for identification purposes only.
This software may be available on multiple operating systems. However, not all operating system
platforms for a specific software version are released at the same time. Please see the readme.txt file
for the availability of this software version on a specific operating system platform.
THIS DOCUMENT IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER
EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.
THIS DOCUMENT COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL
ERRORS. CHANGES ARE PERIODICALLY ADDED TO THE INFORMATION HEREIN; THESE
CHANGES WILL BE INCORPORATED IN NEW EDITIONS OF THIS DOCUMENT. TIBCO
SOFTWARE INC. MAY MAKE IMPROVEMENTS AND/OR CHANGES IN THE PRODUCT(S)
AND/OR THE PROGRAM(S) DESCRIBED IN THIS DOCUMENT AT ANY TIME.
Copyright © 1997-2003 TIBCO Software Inc. ALL RIGHTS RESERVED.
TIBCO Software Inc. Confidential Information
| iii
Contents
Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
Related Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvi
TIBCO Product Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvi
Other TIBCO Product Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvi
Third Party Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xix
Terminology and Acronyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xx
How to Contact TIBCO Customer Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxii
Chapter 1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
SAP R/3 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
SAP R/3 Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
TIBCO Adapter for R/3 Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Adapter Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Logical Process Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
How the Adapter Works with SAP R/3 Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Services Offered by the Adapter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Publication Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Subscription Service. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Request-Response Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Request-Response Invocation Service. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Features. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Advanced Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
IDoc Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
BAPI Transactional Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Data Chunking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Event Driven Inbound Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Inbound tRFC/IDoc reporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Support for Multiple Application Servers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Multithreading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Replacing Control Fields. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Dynamic Subjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Validation of Destinations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
User Exits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Chapter 2 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Preparing your Environment for Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Operating System Requirements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
SAP R/3 Application Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Pre-Installation Worksheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Installer Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Upgrading an Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Uninstalling an Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Installation Registry. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Microsoft Windows Platforms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
UNIX Platforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Installation History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Adapter Components and Compatible Software. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Adapter Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Required and Optional TIBCO Products . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Installing on Microsoft Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Installing the Adapter on Microsoft Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Combining Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Installation on UNIX Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Installing the Adapter on UNIX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Combining Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Post Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Permission Requirements on UNIX Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Prerequisites for Running the Adapter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Setting Environment Variables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Installation FAQs and Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Frequently Asked Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Speeding Up Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Running Out of Disk Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Installation Errors on HPUX 11.00 64 bit Platform. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Configuring TIBCO Hawk. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Cannot Install the Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Chapter 8 Deploying and Starting an Adapter Using TIBCO Administrator Enterprise Edition .
287
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
Create an EAR File in TIBCO Designer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
Deploy the Project. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
Deploying a 4.x TID Manager in TIBCO Administrator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
Start or Stop the Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
Monitor the Adapter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
Chapter 9 Deploying and Starting the Adapter Using TIBCO Administrator Repository Edition
295
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
Export the Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
Create a Properties File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
Set Properties in Properties File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
Assign Security Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
Start or Stop the Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
Start the Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
Stop the Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
Monitor the Adapter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
Adapter Properties File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
Properties File Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
Predefined Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
Obfuscating or Encrypting a Password in the Properties File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
Server Repository URL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
TIBCO Rendezvous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
HTTP and HTTPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
Defining a urlFile to be Accessed via HTTPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314
Local Project URL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
Install the Adapter as a Service on Microsoft Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
Start and Stop the TIDManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
Starting the TIDManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
Stopping the TIDManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531
Figures
Tables
Preface
Topics
Related Documents
Term Definition
API Application Program Interface.
Component A self-contained replaceable functional unit of the adapter that provides a set
of interfaces. TIBCO Adapter for R/3 has two kinds of components;
r3Outbound and r3Inbound. r3Outbound encapsulates functionality for
outbound communication with the SAP R/3 system while r3Inbound
encapsulates the functionality for inbound communication with the SAP R/3
system.
Gateway Server A server used to exchange data with the SAP R/3 system.
Interface A functional sub-unit of the adapter that exposes one or more adapter
services. For example, the RFCServer interface exposes RFC/BAPI
Request-Response Invocation services.
Term Definition
SAP R/3 Native All SAP R/3 data that the adapter interacts with. It consists of RFC data
data types. This includes IDocs received as RFC tables in an RFC function call.
Inbound Instance An adapter configuration listening for messages inbound to SAP R/3.
Inbound instances transfer messages from the TIBCO environment to SAP
R/3.
Outbound Instance An adapter configuration listening for messages outbound from SAP R/3.
Outbound instances transfer messages from SAP R/3 to the TIBCO
environment.
RFC Server A SAP R/3 term for any external program that can accept and process
RFCs/BAPIs/IDocs from the R/3 system.
RFC Client A SAP term for any program that can post RFCs/BAPIs/IDocs from an
external system into the SAP R/3 system.
One Way One way invocation protocol allows you to invoke the BAPI/RFC in the SAP
Invocation protocol R/3 system without waiting for a reply from the system.
Chapter 1 Introduction
TIBCO Adapter for R/3 enables SAP R/3 systems to exchange real-time business
data with the TIBCO environment. This chapter introduces its features and
components.
Topics
The TIBCO Adapter for R/3 enables SAP R/3 systems to seamlessly integrate
with the rest of the enterprise in a TIBCO environment - a suite of products to
integrate applications within the enterprise, to reach partners beyond the
enterprise, and to connect with other enterprises. The following sections give a
brief of the adapter components.
Adapter Components
Runtime Components
Runtime components deliver the core functionality of the adapter. They use
configuration information and metadata to exchange messages between SAP R/3
systems and applications in the TIBCO environment.
Adapter Application
The adapter functions as an ALE/RFC/BAPI client and server interface to SAP
R/3. It provides the following services:
• Publication Service — This service is used to publish IDocs from the SAP R/3
system to the TIBCO environment.
• Subscription Service — This service is used to subscribe to messages from the
TIBCO environment and post them into the SAP R/3 system.
• Request-Response Invocation Service — This service is used to receive RFCs
and BAPIs from the SAP R/3 system and invokes them as requests in the
TIBCO environment.
• Request-Response Service — This service is used to execute RFC and BAPI
requests in the SAP R/3 system.
TIDManager Service
The TID Manager service prevents duplicate processing of IDocs and tRFCs in
case of communication errors that occur when an IDoc or tRFC is executed in the
SAP R/3 system.
In the figure the two servers on the left are separate physical computers that host
SAP R/3 systems. Software components indicated by shadowed boxes, such as
“Outbound R/3 Adapter 1", are adapter configurations that can run on a single
computer or can be distributed. The lines that connect the adapter components to
SAP R/3 System instances are either direct physical connections or connections
through a gateway and router.
The number of outbound (publication service) and inbound (subscription service)
adapters is not limited by software constraints, and can be increased to handle
message volume increases.
The following section describes how the adapter works with each of the SAP R/3
interfaces.
Publication Service
This service is used to publish information from SAP R/3 system. Only IDocs can
be published. Multiple publication services can be configured to handle different
IDoc types.
Example: ORDERS02 IDoc can be used to publish a sales order from SAP R/3 and
MATMAS01 IDoc can be used to publish material information.
An adapter with IDoc services can be configured to receive IDocs from multiple
SAP R/3 systems or multiple RFC destinations from the same SAP R/3 system.
This is useful for enterprises that need to integrate multiple SAP R/3 systems. For
details on how to configure an IDoc publication service to receive IDocs from
multiple SAP R/3 systems, see Configuring Multiple Connections for Outbound
Instance on page 246.
The adapter provides a rich variety of IDoc publication format options. IDocs
may be processed and transferred in a completely self-describing format easily
understood by partner systems. This facilitates straightforward mapping to the
partner’s data formats. IDoc services can be configured to transfer data in SAP’s
native table format and various other formats.
IDoc services may also be configured to process IDocs individually or in batches.
The former is typically suited for real-time integration while the latter suits a
batch offload scenario. See Identifying the Publication Mode on page 155 for the
complete list of IDoc publication formats.
Subscription Service
This service is used to subscribe to messages from the TIBCO environment and
post them into the SAP R/3 system. Only IDocs can be posted to SAP R/3.
Multiple subscription services can be configured to handle different IDoc types.
Example: Sales information can be subscribed to and posted as ORDERS02 IDoc in
SAP R/3.
Multiple IDoc subscription services can be configured and each one may receive
IDocs from one or more systems in the TIBCO environment. For instance, one
adapter configuration can receive and post Sales Order documents from a legacy
enterprise order management application to the SAP R/3 system. It can also
receive and post updates to Materials master data from an enterprise inventory
management application to the SAP R/3 system.
An adapter with IDoc subscription services may also be configured to connect to
one or more SAP R/3 systems. See Configuring Multiple Connections for
Inbound Instance on page 241 for details on how to configure and run the
adapters connected to one or more SAP R/3 systems.
The IDoc subscription services offers a wide variety of IDoc formats for
subscription suited for real-time and batch postings. See Identifying the
Publication Mode on page 155 for details of available IDoc formats for
subscription. By supporting and being completely compatible with IDoc
publication service message formats, the IDoc subscription service allows easy
end-to-end SAP integration.
Request-Response Service
This service is used to execute RFC and BAPI requests in the SAP R/3 system.
Multiple adapter services can be configured for different BAPIs and RFCs.
Example: BAPI_CUSTOMER_GETDETAIL1 can be used to request the details of an
existing customer from SAP R/3 and BAPI_SALESORDER_CREATEFROMDAT1 can be
used to create a sales order in SAP R/3.
Features
The adapter provides a rich set of features, which offer maximum flexibility for
configuration and deployment in real-life usage scenarios.
The salient features are listed below. Refer to the relevant sections of this
document for detailed description and usage information. For generic adapter
features, refer to the TIBCO Adapter Concepts Book.
• Transaction Support — The adapter provides bi-directional support for
BAPIs/RFCs with transactional semantics. Duplicate processing of
transactional RFCs by the TIDManager component of the adapter. The
adapter also provides support for QRFCs.
• Flexible Connectivity Options — The adapter provides multiple options to
connect to the SAP R/3 system providing flexibility in implementation.
Inbound adapter configurations can connect using dedicated connections to a
specific SAP R/3 application server, and connect using load-balanced
connections to the SAP messaging server. One adapter configuration can
establish connections to one or more SAP R/3 systems.
• Dynamic Application Server Connection — This feature allows the
Outbound adapter to dynamically connect to and service BAPIs/RFCs/IDocs
from a cluster of SAP application servers under a central SAP instance.
• Server side data caching — The inbound adapter caches large record sets
retrieved from the SAP R/3 system. Querying clients can retrieve the records
in packets.
• Support for BAPIs Requiring External Commit — The inbound adapter
supports external commit for BAPIs introduced in SAP R/3 release 4.0.
• Refreshing in-memory image of RFC — The adapter refreshes the
in-memory image of RFCs periodically. Hence any change in the ABAP code
of RFCs is reflected in the adapter automatically.
• A convenient easy-to-use configuration tool — The adapter is configured
using an intuitive Graphical User Interface, TIBCO Designer. TIBCO Designer
connects to a specified SAP R/3 system, downloads the schema for IDocs,
RFCs and BAPIs for the required services, and transfers the schema and
message routing rules for individual services to a central repository. Support
for usage of global and client variables ensure easy and quick migration of
adapter configurations from development to testing, and from testing to
production environments.
• Support for TIBCO BusinessWorks — The adapter can be used in a TIBCO
BusinessWorks 5.1 process.
Advanced Features
IDoc Filtering
IDocs can be used to send business-related data to external applications. Typically
external applications are only interested in limited data whereas in SAP R/3 most
segments of an IDoc are populated. SAP R/3 provides a filtering of IDoc for the
master data (material master, customer master etc) but it does not provide any
filtering mechanism for the transactional data (sales order, purchase order etc.).
Using the IDoc filter feature provided in the adapter, data can be filtered at the
Field as well as at the Segment level. To be consistent with SAP R/3, the adapter
does not allow filtering of mandatory segments in the master IDocs.
Advantage The IDoc message can be trimmed in the adapter, which ensures less network
traffic as well as less processing work on the receiving application side.
Usage Scenario This feature should be used when only a subset of the data contained in the IDoc
is required by the external application.
Advantage You can commit or rollback changes based on the reply from the transactional
BAPI.
Usage Scenario This feature must be used to execute any transactional BAPI requiring an external
commit.
Configuration See Inbound BAPI Transactional Support on page 331 for details.
Data Chunking
This feature is used when a large amount of data is returned from SAP R/3
system. For example RFC_CUSTOMER_GET with kunnr="*" will return details of all
customers. Such large amounts of data can be a bottleneck for the requesting
system. In such circumstances data is retrieved in chunks. Instead of making one
request to the adapter, you can make multiple requests. The number of records to
be retrieved in one request is defined in the request itself. Repeated requests can
be made to the adapter until all the required records are fetched.
Advantage Some applications may not be able to handle large data objects. Using the data
chunking option you can divide the result data set into manageable chunks.
Usage Scenario Use this feature where SAP returns large amounts of data in reply to the RFC
request. (For example, if the number of records returned are greater than 500).
Configuration None
Advantage You can use different login information to dispatch different requests. You can
login to SAP R/3 with specific authorization for a particular request. The
connection to the SAP R/3 system need not be open all the time.
Usage Scenario Publishing systems in the TIBCO environment can perform appropriate actions
based on the reporting message sent out by the adapter. For instance, actions
could be,
• Setting up an e-mail trigger or halting a subsequent dependent activity in case
of error reports from the adapter.
• Proceeding with a subsequent dependent activity only upon confirmation of
successful posting of a message into the SAP R/3 system.
Advantage A single adapter instance can serve multiple application servers obviating the
need for multiple adapter instances. Load-balancing and fault tolerance across
SAP R/3 application servers can also be achieved this way.
Usage Scenario On the outbound side this feature can be used for load balanced SAP R/3
configurations that use a messaging server.
On the inbound side this feature can be used to post the data to different SAP R/3
application servers.
Configuration See Configuring Multiple Connections for Inbound Instance on page 241 and
Configuring Multiple Connections for Outbound Instance on page 246 for details.
Multithreading
The adapter supports a static number of threads specified at the time of
configuration. The number of connections to the application server equals
number of threads. Multithreading allows the adapter to process multiple
messages concurrently ensuring better performance.
Advantage Outbound Adapter Instance — The outbound adapter instance is used to publish
the IDocs or send out RFC/BAPI requests. The outbound configuration can
service multiple requests from R/3. It does not have to wait for a reply to a
previous request to proceed with the next request. Transactional RFCs are
sequenced by the underlying R/3 library and are handled sequentially by the
adapter.
Inbound Adapter Instance — On the inbound side the adapter can post multiple
IDocs to SAP R/3. The adapter instance can process multiple RFC requests for the
same or different RFCs/BAPIs. The Inbound configuration can also service
multiple requests from external systems for posting requests into SAP R/3
without waiting for a reply for the previous request. The adapter also handles
simultaneous IDoc messages.
Usage Scenario Multiple threads greatly enhance performance in situations when the adapter
idle-time for a given message is high. For example, on the inbound side, a request
could take a long time, (a minute or more) to execute in SAP R/3. A
single-threaded adapter would be waiting for a reply and is idle during most of
the entire execution time. A multithreaded adapter will continue to service
further requests even while waiting for the reply from SAP R/3. Similarly, on the
outbound side, the adapter can receive and process further requests from SAP
R/3 while waiting on one connection for a reply from the remote system.
Advantage You have the flexibility to change the values of control record fields right in the
adapter, - this does not require any external transformation.
Usage scenario This feature is useful when you do not need to transform the message, but simply
want to set some fields in the control records. There is no need for transforming
the message but couple of fields in the control record has to be replaced with
’fixed’ values.
Dynamic Subjects
This feature is applicable to IDoc Publication service. Subject for the IDoc
publisher can be constructed based on content of the fields in the control record.
This allows for content-based routing of messages based on the content.
Usage scenario You can publish messages for different partners on different subjects by using the
partner number in your dynamic subject.
Configuration See Publishing IDocs on Dynamic Subjects on page 237 for details.
Validation of Destinations
A list of valid partners (destinations) can be maintained in the adapter
configuration. The adapter will only publish IDocs meant for these destinations
and will write the IDocs for all other destinations, to a file.
Advantage You can avoid publishing IDocs, which are not relevant.
Usage scenario IDoc messages can be filtered in the Publication service based on the receiving
partner specified in R/3 (field RCVPRN in the control record of an IDoc).
User Exits
This feature is used to perform user-defined operations on IDocs just before
publishing or immediately after subscribing from the TIBCO environment.
Advantage User exits can be used to carry out simple transformation of messages before
publishing or immediately after subscribing to it in the TIBCO environment.
Example An example for this feature is provided in the examples directory of adapter
installation.
Configuration See Configuring User Exits on page 230 and Configuring Multiple Connections
for Inbound Instance on page 241 for details.
QRFC Support
This feature is used to perform serialization of transactional RFCs.
In the SAP R/3 system, transactions can be processed as a queue. The sequence of
the transaction in a queue can be defined separately, and each queue can be
processed individually.
Advantage The ability to dynamically discover all active application servers and connect to
them eliminates adapter downtimes, which usually happens when reconfiguring
to connect to a newer set of application servers. The intelligence built into the
adapter allows it to respond dynamically to changes in the SAP R/3 environment
and ensures that the adapter caters to all relevant application servers.
Schema Support
The adapter uses schema to describe data received from or sent to the TIBCO
environment.
Schemas are useful in a variety of situations, for example:
• Where several developers collaborate on an adapter application, a
specification document normally defines the data model for several related
adapter applications. Inside the TIBCO framework, you can define a schema
to serve as the data model and update it as needed.
• When the data model of the adapter changes, developers do not have to
redesign the business process.
• Using Schemas in conjunction with the various mapping tools available in the
TIBCO environment, you can transfer data across applications with
incompatible data formats.
Using the R/3 Adapter Configuration palette in TIBCO Designer, you can connect
to and extract schema definitions (any standard or custom RFC/BAPI or IDoc)
directly from the SAP R/3 system. Schemas are then stored into Designer projects
for run-time use.
R/3 schemas, once saved into a Designer project can be used across projects by
exporting/importing the schemas from/to a project in XML format.
Chapter 2 Installation
This chapter explains how to install TIBCO Adapter for R/3 on Microsoft
Windows and UNIX systems.
Topics
Determine how the adapter installation files are to be transferred to this system.
The installation files can be downloaded from download.tibco.com (if you have
an account setup to download).
The TIBCO Adapter for R/3 run-time and design-time have been tested using the
libraries available with SAP JCO 2.0.9. It is recommended that you use the same
version.
A valid SAP Service ID is required. For more information, contact your SAP
BASIS administrator.
Pre-Installation Worksheet
Use this form to capture the information you will need to collect before starting
installing the TIBCO Adapter for SAP R/3.
Adapter Machine Information
Installer Overview
The installer allows you to run in different modes. Each mode is supported on all
platforms.
• GUI mode
• Console mode
• Silent mode
GUI Mode
In GUI mode, the installer presents panels that allow you to make choices about
product selection, product location, and so on. You can invoke the installer by
clicking on the executable.
Console Mode
Console mode allows you to run the installer from the command line. This is
useful if your machine does not have a GUI environment
Silent Mode
Silent mode either installs using default settings or uses a response file that was
saved during an earlier installation. Silent mode installs without prompting you
for information.
• If no response file has been recorded earlier and you invoke the installer with
the -silent argument, the default installation parameters are used.
• If a response file exists, and the installer is started with -options
<responseFileName> as an argument, the installer uses the values specified by the
user when the response file was generated.
Upgrading an Adapter
Software from TIBCO uses three numbers to indicate whether the release is major,
minor or a patch. For example, 5.0.0 indicates a major release, 5.1.0 indicates a
minor release and 5.1.1 indicates a patch release. The installer for a patch release
performs an automatic upgrade. For example, the installer automatically
upgrades TRA 5.0.0 to 5.0.1 by overwriting the contents of the 5.0 directory.
For a major and minor release, the installer prompts whether you wish to
upgrade, and informs you if incompatible products are on your system. If you
proceed, major or minor releases are installed under a new directory that is
named using the major or minor release numbers.
For example, if you have installed the 5.0.0 release and are upgrading to a 5.1.0
minor release, it will be installed under the 5.1 directory. This allows both the 5.0
and 5.1 releases to coexist on the same machine.
If you are upgrading the adapter, or reinstalling a clean version of the software,
you may uninstall the product first or allow the installer to perform the upgrade
or reinstall.
Note that, if you are reinstalling over the same adapter version:
• You are not prompted to supply the installation location. The software is
automatically reinstalled where the previous version was installed.
• If any files are currently locked (that is, in use), the installer marks the file for
deletion in the install location. After installation, the installer prompts you to
reboot your system. You must reboot before using the software.
Uninstalling an Adapter
The TIBCO Installation Manager (TIM) allows you to:
• Display installed products
• Display product components
• Display product dependencies and references
• Uninstall products and all references
To start the program:
• On Microsoft Windows:
Click Start>TIBCO>TIBCO Installation Manager
• On Unix:
<install-path>/tibco/TibcoInstallationManager.bin
The TIBCO Installation Manager displays all TIBCO software installed on your
machine. Details about the selected TIBCO product are displayed in the right
rows. Click the Uninstall button to remove the selected product. Note that some
products cannot be uninstalled from the utility. Instructions about uninstalling
these products are listed in the uninstall window (after clicking the Uninstall
button).
Click the TIBCO Installation Manager help button for information about using the
program.
Installation Registry
Do not edit, modify, rename, move, or remove any of the registry vpd files.
UNIX Platforms
The installation registry is maintained in the following files in the user’s home
directory:
User_Home_Directory/vpd.properties
User_Home_Directory/vpd.properties.tibco.systemName
Installation History
The installer and uninstaller create a file called TIBCOInstallationHistory.xml
in the same location where the installation registry is created. Each time an
installation and uninstallation is performed, entries are appended to the file.
On Windows: SystemDrive:\WINNT\TIBCOInstallationHistory.xml
On UNIX: Users_Home_Directory/TIBCOInstallationHistory.xml
The file TIBCOInstallationHistory.xml therefore contains the record of all
installation and uninstallation activities of all products, features and components.
You can install different adapter components on different machines. For example,
you can run the runtime adapter on one machine and install the design-time
components on another machine. This allows you to configure an adapter on one
machine and run it on another.
Adapter Components
Table 1 describes the adapter components on the adapter installation package.
Component Description
Run-time adapter This process does the actual work of passing and converting data to and from
the vendor application. Parameters of data exchanges are stored in projects
created using the adapter palette and the design-time adapter (see below).
Adapter palette Adapter-specific GUI that is loaded in TIBCO Designer (see next section for
details) at configuration time.
Component Purpose
TIBCO Runtime Agent Required. TIBCO Runtime Agent supplies a number of TIBCO and
5.1.2 third-party libraries used by the adapter and other TIBCO products both
at design-time and runtime. This includes RVD libraries, SDK libraries
etc. For example maverick50.dll.
You must install TIBCO Runtime Agent on each machine that hosts an
adapter. TIBCO Runtime Agent must be installed before you install the
adapter.
Component Purpose
TIBCO Designer 5.1.2 Required. TIBCO Designer is an easy to use graphical user interface for
design-time configuration of TIBCO adapters.
TIBCO Designer is installed as part of the TIBCO Runtime Agent
installation.
TIBCO BusinessWorks Optional. TIBCO BusinessWorks is a scalable, extensible, and easy to use
5.1.2 integration platform that allows you to develop integration projects.
TIBCO Adapters are typically part of integration projects created using
BusinessWorks.
TIBCO BusinessWorks is available as a separate installation and can be
installed after installing the adapter.
TIBCO Enterprise for Optional. TIBCO Enterprise for JMS allows you to use the Java
JMS 3.1.1 Messaging Services (JMS) as the message transport for your adapter.
TIBCO Enterprise for JMS is available as a separate installation and can
be installed after the adapter is installed.
Component Purpose
TIBCO Hawk 4.2.0 Optional. TIBCO Hawk allows you to use the adapter’s built-in Hawk
microagents to monitor and manage the adapter.
TIBCO Hawk is available as a separate installation and can be installed
after the adapter is installed.
Before starting the installation, review the topics in this section to determine that
your system meets the basic requirements and that you have the prerequisite
software installed.
Memory requirement for the adapter installation is around 256 MB.
The following is a list of prerequisites for installing the adapter on Microsoft
Windows systems. See Installer Disk Space Requirements in Temporary Area on
page 34 for additional disk space requirements.
Table 3 Supported platforms, package names, service packs and disk space for Microsoft Windows
Installer Account
You must have administrator privileges for the machine on which the adapter is
installed.
If you do not have administrator privileges, the installer will exit. You must then
log out of the system and log in as a user with the required privileges, or request
your system administrator to assign the privileges to your account.
The best way to install the adapter on Windows Terminal Server is to use the
Add/Remove Programs control panel applet. This automatically sets your mode
to Install during the installation and then back to Execute afterwards.
Alternatively, you can manually change your mode to Install before starting the
installation by typing the following at a command prompt:
C:\> change user /install
TIB_adr3-simple_5.1.0_w32.exe
When running in console mode you can move through the installation process as
described next:
Enter Key or 1 = Moves forward in the installer
2 = Goes back to previous screen
3 = Cancels the Wizard and exits the installation or uninstallation
4 = Redisplays the current screen
TIB_adr3-simple_5.1.0_w32.exe -silent
Combining Options
You can combine the different available options. For example, to install in silent
mode using a response file, use:
TIB_adr3-simple_5.1.0_w32.exe -silent -options <responseFileName>
Memory requirement for the adapter installation is around 256 MB. Your
operating system must meet the minimum patch requirements listed next. See
Installer Disk Space Requirements in Temporary Area on page 35 for additional
disk space requirements.
Table 4 Supported platforms, package names, patches and disk space for UNIX systems
Disk
Platform Package Names Minimum Patch(es) Space
(MB)
Solaris 7 TIB_adr3-simple_5.1.0_s4_57_CC.bin 107544-03 106980-17 75 MB
106950-16 108376-33
106300-12
106327-11 106541-18
107081-40 107636-08
107226-18 108374-05
107656-07
107702-09 107153-01
Solaris 9 TIB_adr3-simple_5.1.0_s4_58_CC.bin 75 MB
Installer Account
TIBCO 5.x products can be installed by a regular (non-root) user and super-user
(root). Different users can install the same product at different locations.
Product dependencies at install time are resolved at user level through the
installation registry maintained at user's home directory. See Installation Registry
on page 34 for more information.
Windows Environment
A window environment such as CDE (i.e. X Windows) is required to run the
installer in GUI mode. It is not required for a console or silent mode installation.
Use one of the following modes to install the software. The examples assume you
are installing the adapter on Solaris 8.
When running in console mode you can move through the installation process as
described next:
Enter Key or 1 = Moves forward in the installer
2 = Goes back to previous screen
3 = Cancels the Wizard and exits the installation or uninstallation
4 = Redisplays the current screen
% ./TIB_adr3-simple_5.1.0_s4_58_CC.bin -silent
/dir/<responseFile>
The response file does not record selections at the component level It does record
all other selections, for example, which products you wish to install.
Combining Options
You can combine the different available options. For example, to install in silent
mode using a response file, use:
% ./TIB_adr3-simple_5.1.0_s4_58_CC.bin -silent -options
/dir/<responseFileName>
Post Installation
Ensure that there is only one copy of the individual SAP JCO components on your
machine. In particular, ensure that the librfc32.dll (or librfccm.so or
librfccm.sl or librfccm.o) library that comes with SAP JCO 2.0.9 is the only
version of librfc on the machine. This library is also packaged with the
SAPGUI. Hence, if you have SAPGUI installed on the machine and the librfc
library packaged by SAPGUI precedes the SAP JCO 2.0.9 librfc library, the
adapter will use the wrong librfc version.
If there is a version mismatch the following error is displayed.
For example, if the adapter has been installed in /opt/tibco, the user who
installed the adapter can make these directories writable for all other users by
executing the following commands:
% chmod a+w /opt/tibco/adapter/adr3/5.1/bin/
% chmod a+w /opt/tibco/adapter/adr3/5.1/bin/logs
% chmod a+w /opt/tibco/tra/5.1/logs
Windows
The adapter’s default property file adr3.tra has a property named
tibco.env.PATH. During installation, the installer updates the tibco.env.PATH
in this file with the location of the TIBCO software required by the adapter.
For example, the installer writes the following for tibco.env.PATH in
adr3.tra:
C:/TIBCO/adapter/adr3/<ver>/hotfix/lib;
C:/TIBCO/adapter/adr3/<ver>/lib;C:/TIBCO/tra/5.1/hotfix/bin;C:/TIB
CO/tra/5.1/bin;C:/TIBCO/tpcl/5.1/bin;C:/TIBCO/TIBRV/bin
Note that the adr3.tra file is the default property file that is shipped with the
adapter.
To launch your adapter configuration, make a copy of this file and update the
repository and configuration url to the correct values in the copy.
When the adapter is started with this newly created custom property file, the
system settings are automatically updated.
The following example illustrates the procedure to start the adapter from the
command line:
1. Create an adapter configuration in TIBCO Designer and save it to a project.
2. Copy the default adr3.tra file to MyAdapter.tra
3. Update tibco.repourl and tibco.configurl parameters in
MyAdapter.tra
Unix
A shell script adr3setenv.csh is provided with the installation. Running this file
in the C-Shell updates the system path and library path settings.
The following environment variables are updated by the script:
SHLIB_PATH (HP-UX)
LD_LIBRARY_PATH (Solaris and Linux)
LIBPATH (AIX)
PATH (ALL Platforms)
Note that the shell script updates the environment for the current shell session
only. If you open a new shell session, run the script afresh to update.
The following example illustrates the procedure to start the adapter from the
command line:
1. Create an adapter configuration in TIBCO Designer and save it to a project
2. Copy the adr3.tra file to MyAdapter.tra
3. Update tibco.repourl and tibco.configurl parameters in
MyAdapter.tra
RFC_TRACE_DIR Defines location for RFC trace files A valid directory Working
Directory
This section lists some of the frequently asked questions, common errors along
with their causes and solutions.
Why and how should I set the DISPLAY variable on UNIX platforms for GUI
mode?
The installer in GUI mode on UNIX, must open an additional window, generally
for graphics. It uses the DISPLAY environment variable to let the user know on
what computer the window is to be opened. If the environment variable is not set,
the installer will either wait or abort after displaying:
InstallShield Wizard
Initializing InstallShield Wizard...
Preparing Java(tm) Virtual Machine...
...................................
...................................
........
The DISPLAY variable must be set to the IP address or name of the computer (on
which the installer graphics window are to be displayed), followed by a screen
address, which can be :0.0 . For example:
# Bourne shell
DISPLAY=<ip_address>:0.0; export DISPLAY
# Korn shell
export DISPLAY=<ip_address>:0.0
# C-shell
setenv DISPLAY <ip_address>:0.0
For example, consider a scenario where you need to install the adapter on a
remote HPUX machine (named itaska). Because you have a Solaris 5.6 machine
(named alaska) that has a video card and monitor installed, you can run an
X-window application on it. So you decide to telnet to itaska from alaska.
When you telnet to itaska, you will not get access to itaska’s monitor and will
be unable to display an X-window application. That is why you must set the
DISPLAY variable, which instructs the X-server to redirect all windows to the
computer set in the variable. Before doing so, the computer (specified in the
DISPLAY variable) must give permissions to share its monitor.
Speeding Up Installation
The installer for TIBCO 5.x products is Java-based and requires a Java Virtual
Machine (JVM) to launch. If the installer can use a JVM already on your system,
installation is faster and uses less disk space. Otherwise, the installer extracts JVM
from the installation package. This section explains where the installer searches
for JVM, and how you can add a different location to the search path.
Every product installer is bundled with the appropriate platform-specific JVM
version. When launched, the installer first searches for the appropriate JVM
version on the target system.
• If the installer finds the required JVM version, it uses that JVM to launch itself.
• If the installer does not find the required JVM version, it extracts the bundled
JVM into a temporary space and uses that JVM to launch itself.
The installer only searches for JVM version 1.3.1. If a different JVM version exists
in the system, or is passed in using the environment variable or command-line
option, the installer ignores that JVM and extracts the bundled JVM.
Location Description
Environment Set in ControlPanel, not in command prompt)
JAVA_HOME
JDKHOME
JVM 1.3.1
Registry \HKEY_LOCAL_MACHINE\SOFTWARE\
JavaSoft\Java Runtime Environment\
1.3\JavaHome \HKEY_LOCAL_MACHINE\SOFTWARE\
JavaSoft\ Java DevelopmentKit\1.3\JavaHome
Location Description
Environment JAVA_HOME
JDKHOME
Path /usr/jre1.3.1
/usr/java1.3.1
/usr/jdk1.3.1
/opt/jre1.3.1
/opt/java1.3.1
/opt/jdk1.3.1
Location Description
Environment JAVA_HOME
JDKHOME
Path /opt/java1.3
/opt/java1.3/jre
Location Description
Environment JAVA_HOME
JDKHOME
Path /usr/jdk_base
/usr/jdk_base
/usr/java131
/usr/java131
Location Description
Environment JAVA_HOME
JDKHOME
Path /usr/jre1.3
/usr/local/jre1.3
/opt/jre1.3
/opt/j2re1.3.1
Solution
While performing installation, avoid running other processes that consume disk
space in product home location.
Error message
Installation on a HPUX 11.00 64 bit system may crash with the following error
message:
This happens only on HPUX 11.00 64 bit systems. It does not happen on HPUX
11.00 32 bit system and HPUX 11.11 (or 11.i) system.
To determine the OS version on your system, run:
uname -a
Resolution
HPUX kernel patch PHKL_27282, resolves the above crash.
To determine if your system has the kernel patch, run:
or
what /stand/vmunix | grep PHKL_27282
If your system is an HPUX 11.00 64 bit system and it does not have the patch, first
install HPUX kernel patch PHKL_27282 and then proceed with the installation.
Installation of patch PHKL_27282, will reboot your system.
Error
TIBCO Runtime Agent includes the TIBCO Hawk Agent only. If you install the
full TIBCO Hawk package after installing TIBCO Runtime Agent and do not have
a Java Runtime Environment (other then the TIBCO JRE) installed, the TIBCO
Hawk Configuration tool is unable to determine the Java home location and the
JVM executeable. The TIBCO Hawk services will not start correctly and you will
be unable to start the TIBCO Hawk Display.
Resolution
1. Start the TIBCO Hawk Configuration tool. For example, on Microsoft
Windows:
Start>TIBCO>TIBCO Hawk>Hawk Configuration
2. Under the General tab, click Advanced.
3. In the Java Home Directory field, provide the path to Java. For example:
C:\tibco\jre\1.4.2
4. In the JVM Executable field, provide the JVM executable. For example:
java.exe
The services will start properly and the TIBCO Hawk Display will run.
Resolution
On Unix platforms, the installer registry file vpd.properties.tibco.systemName
is located in the user’s home directory.
Case 1: If the vpd.properties.tibco.systemName file exists:
$ cd user’s_home_directory
$ ln -s vpd.properties.tibco.systemName
vpd.properties.tibco.systemName.domainName
For example:
$ cd ~
$ ln -s vpd.properties.tibco.upside
vpd.properties.tibco.upside.tibco.com
For example:
$ cd ~
$ ln -s vpd.properties.tibco.upside.tibco.com
vpd.properties.tibco.upside
Topics
Design-time Requirements
Run-time Requirements
Customization required for run-time interactions with the adapter are described
here. The GUI screen shots describing the customization process in this chapter
use SAP R/3 version 4.6C.
For customization process using SAP R/3 version 3.1H GUI see, SAP R/3 ALE
Configuration on page 489. For other SAP R/3 versions refer to SAP R/3
documentation.
Additional steps might be required, depending on pre-existing maintenance and
allocations in the client SAP R/3 system. Please refer to the help section in the
SAP IMG (Implementation Guide) and other appropriate SAP R/3 user
documentation before customizing.
Outbound Messaging
The SAP R/3 system has to be customized to send out BAPI/RFC Invocations
and Intermediate Documents to the TIBCO environment. This section describes
the minimum configuration to be done in the system to achieve outbound
messaging.
Configuration Needed for Invoking BAPIs/RFCs from the SAP R/3 System
1. Define an RFC destination in the SAP R/3 system.
An RFC Destination should be defined and mapped to a program-id. The
Outbound adapter registers on the SAP R/3 gateway with this program-id
(specified in the adapter configuration) and receives BAPIs/RFCs invoked on
the corresponding RFC Destination. An RFC destination allows the SAP R/3
system to invoke BAPIs/RFCs in the Outbound adapter.
For configuration details, see Defining RFC Destinations on page 76.
2. Make sure that the required authorizations for executing BAPIs and RFCs
exist for the SAP R/3 username intended to be used.
Configuration Needed for Publishing IDocs from the SAP R/3 System
All required ALE outbound customizing can be done using the SAP
implementation management guide (IMG, transaction SALE).
The following minimum steps must be performed to enable the transfer of SAP
R/3 system IDocs to the TIBCO environment.
1. Create a logical system for the adapter. See Creating a Logical System for an
Adapter Instance on page 68 for details.
2. Associate the client logical system with a SAP R/3 Client. See Creating a
Logical System for the SAP R/3 Client on page 72 for details.
3. Define the customer distribution model - this defines what IDocs can be
transferred in the outbound direction. See Establishing the Distribution Model
on page 73 for details.
4. Define RFC destination. See Defining RFC Destinations on page 76 for details.
5. Define the Partner Profile. See Defining Partner Profiles on page 79 for details.
6. Set up (maintain) the RFC Transactional Port. See Maintaining Partner Profile
on page 82 for details.
Inbound Messaging
3. Define the customer distribution model - this defines what IDocs can be
transferred in the inbound direction.
4. Define the Partner Profile. See Defining Partner Profiles on page 79 for details.
5. Maintain the Partner profiles. In the inbound parameters of partner profile,
associate a Process Code for each IDoc type defined for the partner profile.
Link this process code to a Function-module, which processes the inbound
IDoc.
The following section provides the steps required to customize the SAP ALE
system, using the SAP R/3 GUI version 4.6C to operate with the adapter.
The steps are listed next.
• Creating a Logical System for an Adapter Instance
• Creating a Logical System for the SAP R/3 Client
• Establishing the Distribution Model
• Defining RFC Destinations
• Defining Partner Profiles
• Maintaining Partner Profile
• Defining an Extended IDoc Type
The first requirement is to create an ALE logical system to represent the adapter
publication service.
To create a logical system for the adapter application, follow these steps:
1. Log onto the SAP R/3 Server.
2. Run the sale transaction:
and click
When you click to the left of the phrase Define logical system the following
warning window appears.
4. Click to continue.
A Change View window appears like the following:
Assign a change request to the change using an existing change request, or create
a new change request. If you want to create a new change request, complete the
following step.
8. Click on Create request in the bottom button bar.
The Create Request window appears.
The logical system for the client represents the client itself as a business entity, so
that the relationship between the client and other logical systems can be set up. To
create a logical system for the adapter client, follow these steps:
1. Log onto the SAP R/3 Server.
2. Run the sale transaction.
3. Navigate to
Basic Settings>Set up logical system> Assign logical system to the client
4. Click the New Entries button to request the interface used to create a new
logical system.
An empty New Entries window appears.
5. Enter the name of the new logical system in the top window and enter the city.
6. Choose from the Logical System pop-up, the client for which you want to
create the new logical system (often the logical system you’re logged into).
7. Enter a suitable description under column Short Text and choose a role, such
as Test.
8. Save the new logical system.
To make ALE work properly, your SAP R/3 system needs to know the
relationship between the logical systems. You can establish these relationships
through the Maintain Distribution Model dialog.
To establish the distribution model, follow these steps:
1. Run the sale transaction.
2. Click next to Maintain distribution model.
The following window is displayed:
3. Click the Model View button to create a model view that contains the
relationships between logical systems you want to establish.
The Create Model View window is displayed.
4. Type in the name and short description for the new model view, then click
7. Repeat the process to include the type of the message you later want to send
to the TIBCO environment. For example, include MATMAS if you want to send
material IDocs.
8. Click and save.
Now you have established the relationship between the logical systems. You
can view it by expanding the model on the original Distribution Model
screen.
An RFC destination allows the SAP R/3 system to call service functions in the
R/3 Outbound Adapter configured as an IDoc publisher. RFC uses TCP/IP to
interface with the R/3 Outbound Adapter.
One or more RFC destinations for the R/3 Outbound Adapter processes have to
be defined. Usually, only one RFC destination is used. Multiple Outbound
Adapter processes can be load balanced by a SAP R/3 gateway via a single RFC
destination. Multiple destinations can be useful when different destinations are to
be used for different ports. The ports are in turn used for different message types.
1. Run the sale transaction and navigate to
Communication>Define RFC Destination>TCP connections
3. Specify the RFC destination. The RFC destination should have the same name
as the adapter logical system you created. Choose T (TCP/IP connection) as
the connection type, and click .
4. Save the setting.
5. In the RFC Destination window, click Registration and specify the Program
ID.
The Program ID must match the Program ID value in the adapter instance in the
repository. See Configuring Default Server Connection on page 222. It is a good idea
to use a different name than that of the logical system itself. Also, it is
recommended that you do not associate the name to the RFC destination or
logical system.
5. If execution works without errors, save the partner profile by clicking the
small open-folder icon. The partner profile will be created with the default
port.
In case you want to change the port associated with the message type, following
steps need to be carried out to create a port.
7. Click on Transactional RFC to highlight it and click the Change (Pencil) icon.
9. Enter (or select) the name of the logical system and give a description for the
new port. This completes definition of a partner profile.
An outbound partner profile must be defined for each logical message type that is
to be sent to the TIBCO environment. The outbound partner profile defines the
message syntax to be used for the logical message type, the transfer mode, the
port to send to, and the workflow parameters (where error notifications are to be
sent etc.). In the previous section (Defining Partner Profile), the partner profile is
created for logical message type MATMAS. This section explains how you change
the partner profile to add, delete or change the message types and associated
parameters.
1. Run transaction sale and work through the hierarchy displayed to:
Communication>Manual Maintenance of Partner Profiles>Maintain
Partner Profile.
2. Choose the adapter logical system you defined earlier and LS as the partner
type, then click the change (pencil) icon.
3. In the next window, enter ALE as the partner type and A (active) as the
partner status.
SAP R/3 makes basic IDoc types available for use with SAP processes. You can
create extensions to a basic IDoc type using the procedure described in this
section.
1. To create an IDoc extension, initiate transaction WE30. The Develop IDoc
Types screen is displayed. An example of this screen is shown below. Set the
Extension radio button as shown below to indicate that you are going to
create an extension to an existing IDoc type.
2. Enter the name of your IDoc extension in the ObjectName text box. Note that
names used by SAP R/3 are case insensitive. See the following example.
3. Click the Create icon (folded paper) or enter the function F5 key to proceed
with extension creation. The Create extension screen is displayed, as shown
below.
4. Set the Create new radio button. This step associates the new extension with a
basic IDoc type. This is done by entering the name of a basic IDoc type, such
as DEBMAS03, in the text entry box labeled Linked basic type.
5. Click the down arrow to the right of the text entry box and select the basic
type from the list that is displayed. When you have entered the basic IDoc
type, enter a description in the Description box. When your entries are
complete, click to proceed with the extension creation.
6. The following Create extension screen is displayed. This screen shows the
initial default segments contained in the new IDoc extension, as defined by
the basic IDoc type (DEBMAS03 in the example). Add segments using this
screen.
7. For example, you can add a second child segment to segment E1KNA1L by
highlighting the current child segment and clicking on the Create icon (folded
paper).
10. The Create Extension screen is displayed again with the new child segment as
shown in the example below. Save the new IDoc extension.
This chapter describes the basic steps that are required to configure and run the
adapter. More extensive details for each of the steps described here are provided
later in the manual.
Topics
To begin the configuration process, you must first open a project for your adapter
using TIBCO Designer. Although you will probably want to consult the TIBCO
Designer User’s Guide for detailed information, here are the general steps you
should follow to begin configuring the adapter.
1. Run TIBCO Designer either from the Start menu in Microsoft Windows or by
issuing the <install_dir>/bin/Designer.sh command from the UNIX
command line. The following screen is displayed.
2. Select the New empty project button to begin a new project that will specify
all of the configuration details associated with a given instance for the adapter.
3. Save the project. For details on saving, refer to the latest TIBCO Designer
documentation.
TIBCO_HOME\adapter\adr3\5.1\examples\gettingStarted\gettingStarted
.dat
This section explores this sample project and presents an overview of the TIBCO
Adapter for R/3 configuration palette.
Step-by-step instructions are available on how to work with the adapter palette,
save the changes to the sample project and start up the sample adapter
configurations. The steps are listed next.
Open the gettingStarted project in TIBCO Designer. You cannot directly open a
dat file in TIBCO Designer and make modifications to the configurations. To do
this, complete the following steps:
1. Convert the dat file to a multi-file project.
a. Open TIBCO Designer. In the first screen that is displayed, click
Administration. The screen is shown next.
b. Then click the Convert DAT to Files icon. In the window that is displayed,
browse and select gettingStarted.dat. Click OK.
2. Click the Open existing project icon from the first TIBCO Designer screen.
Browse to the directory where the converted multi-file project is saved and
click OK.
Sample Configurations
There are four sample configurations provided covering the most elementary
configurations:
• RFC Outbound Configuration
• RFC Inbound Configuration
• IDoc Outbound Configuration
• IDoc Inbound Configuration
1. Click on this configuration on the project panel. This displays the top-level
configuration details for this configuration in the configuration panel.
2. If you want to test the connectivity and messaging for Outbound RFCs,
navigate to the Outbound Connection tab and specify a valid program-id,
gateway host and gateway service parameters for the adapter.
3. Open out the configuration in the project panel and navigate to the Adapter
Services folder. This folder displays information about the
RFC_CUSTOMER_GET service including the quality of service, the associated
RFC schema and the messaging subject in the Configuration, Schema and
Advanced tabs respectively. Go to the Advanced tab and set the message
subject to RFC.CUSTOMER.GET.
4. Save the project. This configuration is now ready to be tested.
3. To run the sample Inbound RFC Configuration after this, comment out the
above configurl and uncomment the configurl
/tibco/private/adapter/RFCInbound
Ensure that the adapter traces out on the console, a message that looks like the
following,
2003 Jan 22 11:23:34:298 GMT +5
SAPAdapter.R3AdapterConfiguration Info [Adapter] AER3-000082
Successful initialization of Adapter
4. Change the program ID appropriately and select connection from the Test
menu. Ensure that the program ID specified matches that specified in the
adapter instance. The program ID is case sensitive. The bottom line of the
screen should show: Connection: Chandra O.K.
either the adapter is not running or the Program ID names do not match.
The following Test Function Module screen is displayed. Specify the target
system and message data to be sent.
2. Enter the RFC target system identifier (which refers to the RFC destination
that has the program ID on which the adapter is registered), customer number
(KUNNR), and customer name (NAME1) into the window. The following shows
an example of using DEV2 as the target system, and * wildcards (get data for all
customer numbers and names).
3. Click the Execute Function button, to initiate transfer of the RFC message
data.
You can verify that the messages were transferred and acknowledged by the
adapter by observing the Result: value on the Test Function screen. To view
the result, double-click on the icon to the right of Result:.
Note that 18 RFC entries were transferred. The command window in which the
adapter was executed prints the line Connection State: Available when the
messages have been received.
3. Enter a value in the Material field and specify the logical system. The value
used in the example is 100-100.
You can also do a publication test if you have configured SISCSO. Try to create a
sales order using transaction va01. For other logical message types run a
corresponding transaction that creates the IDoc.
You can verify that an IDoc is actually received by the adapter and published on
the TIBCO environment by running the Rendezvous program tibrvlisten that
monitors the subject under which the adapter publishes and displays messages as
they are published. The following is an example of the first few lines from
tibrvlisten:
C:\WINNT\Profiles\bob\Desktop>tibrvlisten SAP.IDOC.*
tibrvlisten: Listening to subject SAP.IDOC.*
Received: subject=SAP.IDOC.SALoopbackIdoc-Instance1, reply=<none>,
message=...
If the tibrvlisten program does not receive any IDocs, go to Monitoring menu
in the transaction, bale. Check whether an IDoc was created during your test
transaction using IDoc overview or using transaction we05.
If not, there is still something wrong with your SAP R/3 ALE configuration.
Correct the error that is indicated by the status. If no, IDoc is created despite
status “data passed to port OK”, re-check the RFC destination.
This screen lists details of clients logged on to the SAP R/3 system.
Check for the entry adr3 in the column TP Name. If the status shows as
CONNECTED, then the adapter is successfully connected to the system.
4. The Customer Name (NAME1) and the Customer ID (KUNNR) are included in the
Mapper as input values. Invoke the request from the process.
5. See the output in the console window of the TIBCO IntegrationManager
engine.
6. The console window of the inbound instance also indicates that the request
from TIBCO IntegrationManager for RFC_CUSTOMER_GET was made.
7. Check for the trace message in the adapter console.
Go to IDoc overview or transaction we05 in the SAP R/3 GUI and check that the
SAP R/3 system has received back the published IDoc.
To be certain that you received the same IDoc messages sent through the adapter
onto the TIBCO environment, compare the IDoc message numbers sent with the
one received. Double-click on the Total Direction Inbound text under Status
description. The IDoc message number received must be the number sent plus
one. So, if message number 349068 was sent, you should see message number
349069 on the inbound side.
If the IDoc was published but not received by the Inbound adapter, check the
subject name specified for the subscriber/consumer in the Inbound adapter’s
configuration file.
Once the adapter receives the ’now’ message on the stop subject, it will
complete any pending transactions, cleanup resources, and then terminate.
• Start TIBCO Hawk. Invoke the stopApplicationInstance() method for the
adapter configuration. Check for the trace message in the adapter console.
This chapter describes the procedures to create an adapter instance and assign it
services by configuring standard settings. All configuration tasks are performed
in TIBCO Designer and the information is stored in a project that is later used by
the run-time adapter. The adapter services are used to communicate with the SAP
R/3 system.
Topics
Overview
Each adapter instance must have its corresponding configuration defined. The
configuration is accessed whenever an adapter application is started.
Configuration is done with TIBCO Designer. Ensure that TIBCO Designer has
been installed before continuing (see the TIBCO Designer User’s Guide). All the
adapter configuration information is saved as a project in a repository.
Configuration Tasks
Use the following sequence to create and configure an adapter service.
1. Start TIBCO Designer and open a multi-file project. See the TIBCO Designer
User’s Guide for details.
2. Drag the R3AdapterConfiguration icon from the palette panel to the design
panel. This creates an adapter named, by default, R3AdapterConfiguration.
3. Define the adapter instance by assigning a new name and select the R/3
connection type in the Configuration tab.
4. Optionally change logging options. See Logging Tab on page 130 for details.
5. Define design-time connection options using the Design-time Connection tab.
See Design-Time Connection Tab on page 115 for details.
6. Define inbound connection options if you are configuring an inbound
instance. See Run-time Inbound Tab on page 118 for details.
7. Define outbound connection options if you are configuring an outbound
instance. See Run-time Outbound Tab on page 121 for details.
8. Define both inbound and outbound connection settings if the connection type,
both is selected in the Configuration tab.
9. Add a service to the adapter instance by dragging the service icon from the
palette panel and dropping it in the design panel. See Adding Adapter
Services on page 144 and Adding Adapter Services Automatically on
page 145 for details.
10. Use the tabs of the service to set the combination of options required for the
service.
11. Save the project as a server repository project and exit TIBCO Designer.
After configuring the adapter, you must create the run-time adapter property file
and add the project name and adapter instance name. See Create a Properties File
on page 298 for details.
Configuration Tab
The Configuration tab can be used to configure an adapter instance.
Instance Name
Use the default name or replace it with a name of your choice.
• An instance name must use alphanumeric characters. An underscore (_)
character can be used. The entire instance name must be less than 80
characters. The space character cannot be used in an instance name.
• An instance name cannot use global variables.
• An instance name must be unique with respect to other adapter instances for
the same adapter in the project. The same instance name can be used to name
an adapter instance for a different adapter in the same project. For example,
an R/3 adapter instance named TEST and a Siebel adapter instance named
TEST can coexist in the same project.
• Each instance name must be unique per adapter within a project even if each
instance is defined in a different folder. That is, configuring same-named
adapter instances in different folders will not make their names unique.
When you create an adapter instance, the palette automatically creates several
resources for it. The names of these resources derive from the name of the instance
they belong to. Changing the adapter instance name results in an automatic
regeneration of the resources names. If you manually modify any resource name,
that particular name will not be automatically regenerated next time you rename
the adapter instance. The following resources in the adapter are automatically
named when you name the adapter instance.
• Subject name
• CM name
• CMQ name
• Ledger file
• Default Client Connections
• Default Server Connections
• Active Connection
Description
Provide information about the adapter instance that you want stored in the
project. The field is optional.
Version
The version string indicates the ActiveEnterprise (AE) format in which the
adapter instance is saved. An adapter instance can be saved in AE 4.0 or AE 5.0
format.
When a new adapter instance is created in TIBCO Designer 5.x, the version string
is set to AE Version 5.0. When a 4.x adapter instance is opened in Designer 5.x,
the Version field is set to AE Version 4.0.
• If a 4.x adapter instance is to be run against a 4.x run-time adapter, the
instance must be saved with the Version field set to AE Version 4.0.
If you are using TIBCO Designer 5.x to modify 4.x adapter instances, change
only features supported by the 4.x. run-time adapter and use the validation
utility to verify the instance before deploying the project. The validation
utility scans the project and returns warnings if any 5.0 features are defined
for 4.x adapter instances. Invoke the utility from the Project>Validate
Project for Deployment menu command in Designer.
Message Filter
Specify a message filter, if you have configured a message filter resource for use
with the adapter. The filter allows you to manipulate incoming and outgoing data
before sending it on the network or handing it to the target application. Filters can
be written using the TIBCO Adapter SDK. See the TIBCO Adapter SDK
Programmer’s Guide for information about writing a message filter.
The adapter instance type Both is a test adapter instance. It is recommended not
to shift between Both to Inbound or Both to Outbound. There is no automatic
mechanism to change the adapter services to reflect the change. You need to
manually delete the Publication service if the change was made from Both to
Inbound and vice versa.
Regardless of the R/3 Connection Type you have chosen in the Configuration
Panel, a client connection reference and a server connection reference are created
whenever you drag a configuration resource into the Design Panel.
For example when Outbound is selected as the R/3 Connection Type upon
creation of adapter configuration, a client connection reference is also created in
the R/3 Connections.
Conversely, when Inbound is selected, a server connection reference is created in
addition to the client connection reference.
Application Server
The host name of the SAP R/3 system instance.
Example: sapsvr
If the SAP R/3 system is behind a firewall, then the SAP router string should be
mentioned along with the application server name.
System Number
The integer specifying the SAP R/3 Database instance.
Example:00
Client
The integer specifying the SAP R/3 client.
Example: 853
Username
Specify a valid name for logging onto the SAP R/3 system
Password
Specify a valid password corresponding to the user name.
Remember Password
If this field is not checked, the password must be entered each time the project is
opened. If it is checked, the password will be stored in the project repository.
If this check box is selected, the default run-time inbound connection would not be
allowed to be modified. All fields in the Run-time Inbound tab will be disabled.
To add custom values in the default Run-time Inbound connection, you need to
clear the Use Design-time Connection for Run-time check box.
Test Connection
Click Apply and click Test Connection to verify the connection parameters
specified.
The options available vary depending on the type of client connection used. For
details on changing default client connection to Load Balancing or saprfc.ini
client connection, refer to the following sections:
— Client Connection with Load Balancing on page 212
— Client Connection with saprfc.ini file on page 214
Application Server
The network name of the SAP R/3 application server host machine.
System Number
SAP R/3 database instance number.
Client
SAP R/3 client number.
User Name
Valid user name to log into the specified SAP R/3 client.
Password
Valid password corresponding to the user name.
Test Connection
Click Apply and then Test Connection to verify that valid options have been
specified.
An adapter instance with multiple inbound connections can have only one
connection, set as the default. In case of multiple inbound connections, only the
configuration of the default inbound instance is displayed. During creation of
adapter services, the default inbound connection is used to configure connections
requiring inbound connectivity to the SAP R/3 system.
Before specifying a server connection reference ensure that the required server
connection has been created. See Adding a Server Connection on page 221 for
details. During creation of adapter services, the default outbound connection is
used to configure connections requiring outbound connectivity to SAP R/3.
The options available on the Run-time Outbound tab vary depending on the
type of server connection used. Options for the default type is detailed in this
section.
Program ID
Specify a valid existing program ID that identifies the RFC Server program for the
SAP R/3 system.
Gateway Service
Specify the SAP R/3 gateway service. The default value is sapgw00.
Gateway Host
Specify the gatewayHost name or IP address or router string. If there is no
specified machine acting as a gateway host, this is the same as the appserver.
RFC Trace
Specify whether the trace is on or off. Possible values are 0 or 1 only.
0 denotes trace is OFF
1 denotes trace is ON
If any other values are entered, an error is displayed. If you do not provide a valid
value, then it defaults to the original value. The default value is 0.
Click Apply.
An adapter instance with multiple outbound connections can have only one
connection, set as the default. In case of multiple outbound connections, only the
configuration of the default outbound instance is displayed.
Valid Destinations
Enter valid destinations in this field. Example: tibrvd. See Configuring Valid
Destinations on page 200 for details.
TID Management
All Publication By default, TID Management is set to local. If you select remote TID
Services Management, the adapter requires a TIDManager instance. Specify the
TIDManager Client.
Select local TID Management if there is only one adapter instance using the
Program IDs defined in any server connections defined in the instance. If there are
multiple instances sharing the same Program ID they must share the same
TIDManager. Else, it is not possible to ensure that data is being sent only once
from the SAP R/3 system.
TIDManager Client
The TID Management Client field is displayed only if the TID Management field
is set to remote. Ensure that the TIDManager client in all the adapter instances
matches the TIDManager server in the TIDManager being used. Also ensure that
the subject name of the TIDManager client is configured appropriately and that
the client and the TIDManager server are on the same transport. The TIDManager
Client field displays only if the TID Management field is set to Remote.
TID filename
The TID file is used by the TIDManager to maintain state information on the
transaction IDs (TID) sent from SAP. By default, the name of the TID file is
tidFile.tid.The TID filename field displays only if the TID Management field
is set to Local.
See Setting TIDManager General Options on page 257 for details on setting
TIDManager Options.
Click Apply.
Sample Adapter Services Tab Screen
General Tab
You can set Termination Subject or Topic, Adapter Encoding Information, Active
Connection Reference and Plugin details using the General tab.
See TIBCO Rendezvous Concepts for information about specifying subject names.
See the TIBCO Enterprise for JMS User’s Guide for information about publishing on
a topic.
ActiveConnections Reference
Specify the name of the active connection to be assigned to the adapter. Changing
the reference of the active connection used by an adapter instance will change all
client and server connections used by the adapter. The facility to change the active
reference allows you to use an existing active connection without having to
reconfigure another adapter instance.
a. Click the Browse Resources.. button to locate the Active Connection
instance.
b. Click the Go to referenced resources.. button to select a new client or
server connection reference for the Active Connection. The Active
Connection folder is displayed. Select the required connection reference
resource from the project. The resource configuration tab displays. Browse
to locate the required server or client connection, click Apply and return to
ReadIDocFromFile
The adapter supports plugins, which are essentially customized dynamic libraries
that are loaded by the adapter on startup. For detailed information on plugins,
refer to the TIBCO Adapter SDK documentation.
The TIBCO Adapter for R/3 packages the ReadIDocFromFile plugin. This plugin
may be used to re-publish IDoc messages written to a file.
An IDoc message gets written to a file under the following circumstances:
• A Publication service or a Subscription service configuration with a list of
Valid Destinations will write an IDoc message from R/3 to a file if the IDoc
message's destination is not one of those configured.
• A Subscription service configuration will write an IDoc message to a file, if the
R/3 system gives a valid process exception. The exception could be due to
invalid data etc., while posting the IDoc. In this case, the data may be
manually changed in the file and replayed later using the plugin.
You can use the ReadIDocFromFile plugin to republish IDocs that are in a file
format on the file system. The plugin is available only when the adapter
configuration type is chosen as Outbound since the plugin is always attached to a
Publisher endpoint.
Enabled
Select this check box to enable the plugin.
Endpoint Reference
Select the publisher endpoint to be referenced. Click the Browse resources button
against this field to locate the required publisher endpoint in the Sessions folder.
If you need access to modify the configuration details of the publisher session,
click the Go to referenced resources.. button.
Mode
Select the mode from the drop-down list. See Identifying the Publication Mode on
page 155 for details on the various modes.
Directory
Specify the directory path where the IDoc files are located.
Filename
Specify the filename of the IDocs. Wild cards can be specified. Characters
supported are * and ?. Wild cards can be used anywhere in the filename.
Click Apply. The ReadIDocFrom File plugin is initialized when the adapter
instance is initialized, IDoc files matching the selection criteria are read and
published.
Logging Tab
The Hawk sink uses the hawk session, created and used by the adapter for
monitoring purposes, to send tracing messages to the TIBCO Hawk monitor or
Display. For details on Hawk sessions, see Using Global Variables on page 272.
The configuration for the Hawk sink involves specifying the MicroAgent Name
that must be specified in the configuration panel.
The Network sink is used to publish tracing message on TIBCO Rendezvous. The
configuration for the network sink involves specifying the session, and the subject
on which the trace messages needs to be published.
For all the sinks, optionally the name and description for the sinks can be
provided.
Log File
Specify the name of the log file (log sink) to which trace messages are written.
Global variables can be used to specify the location of the log file. See Using
Global Variables on page 272 for more information.
The roles available are Info, Debug, Warning, and Error messages. The trace
message generated depends on the roles selected. Turning on the roles can affect
the performance of the adapter. Therefore, it is recommended that you turn on the
required roles only.
Given next is a sample outbound log file.
2001 Jun 5 16:04:57:227 SAPAdapter.SAOutboundIdoc-Instance008
.
The default log file name for the adapter is adapter.log, and is written to the
same directory where your project is stored.
The default log file name for the TIDManager is TIDManager.log.
If no file name is specified, trace information is not written to a file.
Startup Tab
Default Session
This field is predefined and cannot be changed.
Monitoring Tab
Many of the following fields make use of global variables. Click the Global
Variables tab in the project panel to enter a value for a global variable.
The global variable should only be used in cases where all instances of the project
share the same behavior.
In cases where all instances do not share the same behavior, the check box option
must be used.
3. The default values in the Service, Network and Daemon fields are 7474, None
and tcp:7474. Change the default values if required and click Apply. The
screen shot of the default HawkSession is given next.
Use both the Run-time Inbound and the Run-time Outbound tabs to configure
an instance that is both outbound and inbound. Specify the type of instance in the
Configuration tab by selecting Both in the R/3 Connection Type field.
Use the following task sequence to create and configure an adapter publication
service:
1. Start TIBCO Designer and open a project. See the TIBCO Designer User’s Guide
for details.
2. Drag the R/3 Adapter Configuration icon from the palette panel to the design
panel. This creates an adapter named, by default, <name of the default
configuration>. Define the adapter configuration by assigning a new name
and optionally change logging options. See Adapter Instance Fields on
page 111 for details on defining adapter configuration settings.
3. Add a publication service to the adapter configuration by dragging the service
icon from the palette panel and dropping it in the design panel. The fields in
the Configuration and Advanced tabs are disabled until the schema is
associated with the service as described in step 4.
4. Schema association can be carried out in the Schema tab for IDoc.
a. Click Fetch IDocs to retrieve the list of IDocs based on the IDoc filter
provided.
b. Click Select IDoc, a list of IDocs is displayed in a separate window.
c. Choose an IDoc from the list displayed and click OK. The schema of the
selected IDoc is downloaded and displayed in the tab. The IDoc is
displayed in a hierarchical manner similar to the display in the SAP R/3
system. Click on the nodes to expose the relationship to those nodes and
display the fields for those segments.
The names of the fields in segments are displayed, the length is not displayed.
The field lengths are available in the project’s schemas folder.
d. Services are created appropriately for the IDoc and associated with the
IDoc’s schema.
5. Under the Configuration tab, set the combination of options required for
your service. See Configuration Tab on page 152 for details.
6. Save the project and exit TIBCO Designer.
7. Create the run-time adapter property file and add the project name and
adapter configuration name. See Adapter Properties File on page 306 for
details.
Use the following task sequence to create and configure an adapter subscription
service:
1. Start TIBCO Designer and open a project. See the TIBCO Designer User’s Guide
for details.
2. Drag the R/3 Adapter Configuration icon from the palette panel to the design
panel. This creates an adapter named, by default, <name of the default
configuration>. Define the adapter configuration by assigning a new name
and optionally change logging options. See Adapter Instance Fields on
page 111 for details on defining adapter configuration settings.
3. Add a subscription service to the adapter configuration by dragging the
service icon from the palette panel and dropping it in the design panel. The
fields in the Configuration and Advanced tabs are disabled until the schema is
associated with the service as described in step 4.
4. Schema association can be carried out in the Schema tab for IDoc.
a. Click Fetch IDocs to retrieve the list of IDocs based on the IDoc filter
provided.
b. Click Select IDoc, a list of IDocs is displayed in a separate window.
c. Choose an IDoc from the list displayed and click OK. The schema of the
selected IDoc is downloaded and displayed in the tab. The IDoc is
displayed in a hierarchical manner similar to the display in the SAP R/3
system. Click on the nodes to expose the relationship to those nodes and
display the fields for those segments.
The names of the fields in segments are displayed, the length is not displayed.
The field lengths are available in the project’s schemas folder.
d. Services are created appropriately for the IDoc and associated with the
IDoc’s schema.
5. Under the Configuration tab, set the combination of options required for
your service. See Configuration Tab on page 167 for details.
6. Save the project and exit TIBCO Designer.
7. Create the run-time adapter property file and add the project name and
adapter configuration name. See Adapter Properties File on page 306 for
details.
After basic configuration of an adapter instance is complete you can add one or
more adapter services to an instance. The Adapter Services folder is automatically
created when an adapter instance is created.
Adapter services can be added to the adapter in two ways:
• Automatically - Using the R/3 Filters tab available at the Adapter
Services folder level. See Adding Adapter Services Automatically on
page 145 for details on adding services automatically.
• Manually - Dragging adapter service resources from the palette panel to the
design panel.
Use the following steps to add adapter services manually:
1. Drag the R3 Adapter Configuration icon from the palette panel to the design
panel.
2. In the project panel, select the Adapter Services folder.
3. Drag the required Service icon from the palette panel to the design panel.
4. Specify the options in the tabs.
For details refer to the corresponding section for the service to be added.
• Publication Service Options
• Subscription Service Options
• This example shows the advanced configuration options for a subscription
service created for the MATMAS01 IDoc.
• Request-Response Service Options
Subject names are normally defined by the system. If you manually change a
subject name, you must not use SAP.IDoc as a subject since this name is used by
the system.
This section describes how to add services automatically. Use the R/3 Filters
tab from Adapter Services folder and select the required IDocs, RFCs and
BAPIs. Adapter services are automatically created.
For example, go to the IDocs tab and from the list of IDocs displayed, select the
Used? check box against the IDoc MATMAS01. Two adapter services are
automatically created, one for Publication and another for Subscription.
Use the following steps to add adapter services automatically:
1. Drag the R3 Adapter Configuration icon from the palette panel to the design
panel.
2. In the project panel, select the Adapter Services folder.
R/3 Filters tab Specify the following options in the R/3 Filters tab.
IDoc Filter — The IDoc filter used to restrict the number of IDocs returned
from the SAP R/3 system. By default, * is specified. Values like CRE*01*
cannot be used, the * can appear only at the beginning or the end of the
expression. Example: MAT*
RFC Filter — The RFC Filter used to restrict the number of RFCs or BAPIs
returned from the SAP R/3 system. The RFC Filter can be used to restrict the
number based on the actual name of the RFC or BAPI. By default, RFC* is
specified. There is no restriction on the usage of *. Values like BAPI*ORDER
are allowed.
RFC Group Filter — The RFC Group Filter used to restrict the number of
RFCs or BAPIs returned from the SAP R/3 system. By default, * is specified.
The RFC Group Filter can be used to restrict the number based on the RFCs or
BAPIs associated to a particular set of function groups in SAP R/3. If the
function group is not known, leave the value of the RFC Group Filter as * and
specify a value in the RFC Filter field.
To download the list of BAPIs/RFCs with namespaces, you can enter the
entire name of the RFC or give a partial filter in the RFC Filter. Ensure that the
RFC Group Filter is blank.
Example :
• To download a list of all BAPIs/RFCs with namespaces give RFC Filter as "/*"
and leave the RFC Group Filter blank.
• To download an RFC with name space SAPTRX just give RFC Filter as
/SAPTRX/* and leave the RFC Group Filter blank.
The default RFC Filter expression "*' does not download BAPI/RFCs with
namespaces.
IDocs Tab
Use the following steps to add services for selected IDocs.
1. Drag the R3 Adapter Configuration icon to the design panel.
2. In the project panel, select the Adapter Services folder and specify the
required filter criteria, then click Fetch IDocs. While the IDocs are being
fetched the IDocs tab is displayed.
3. Click the IDocs tab and proceed to select the required IDocs.
The list of IDocs displayed depends on the SAP R/3 Logon Language provided in
the Design-Time Connection tab in the adapter configuration. Only those IDocs
maintained in the SAP R/3 Logon Language are shown. If IDocs are not listed,
make sure that IDocs exist in the SAP R/3 system.
If a SAP R/3 Logon Language other than English, French, Italian, Danish, Dutch,
Norwegian, Portuguese, Spanish, Finnish, and Swedish is in use, the description
of the IDoc may be incorrect in some cases.
The fields displayed depend on the version of SAP R/3 release that is currently in
use. Two possible scenarios are detailed in this section.
The sequence in which fields are displayed in the IDocs tab can be modified
using drag and drop.
Example In this example, the list of IDocs retrieved from a 4.x SAP R/3 system is shown.
RFCs/BAPIs Tab
Use the following steps to add services for selected RFCs/BAPIs.
1. Drag the R3 Adapter Configuration icon to the design panel.
2. In the project panel, select the Adapter Services folder. Specify the required
filter criteria and click Fetch RFC/BAPIs. While the RFC/BAPIs are being
fetched the RFC/BAPIs tab is displayed.
3. Click RFC/BAPIs and then select the required RFC/BAPIs to automatically
add the required services.
RFC/BAPI Tab Select the required RFCs or BAPIs in the RFC/BAPI tab.
The sequence in which fields are displayed in the RFC/BAPI tab can be modified
using drag and drop.
Name — The name of the RFC or BAPI. The node alongside this field can be
used to obtain information on the parameters available in the RFC or BAPI. If
the parameter pertains to a structure (denoted by "struct") or table (denoted
by "sequence"), field information for these types can be obtained by
expanding the node alongside the name of the parameter.
Type — The type of BAPI.
Direction — Direction of the BAPI parameter. The possible values are In,
Out or In/Out. If the parameter is an Import parameter, the direction is In.
If the parameter is an Export parameter, the direction is Out. If the parameter
is a Table, the direction is In/Out.
Used? — Check this box to select the RFC/BAPI schema to be downloaded
and for appropriate adapter services to be created.
Operation Type — The operation type. Possible values are
Request-Response Invocation or Request-Response.
Invocation Protocol — Select the appropriate Invocation Protocol in order
to create an adapter service for a particular RFC or BAPI. Possible Invocation
types are Request/Reply and One Way.
One way invocation protocol allows you to invoke the BAPI/RFC in the SAP R/3
system without waiting for a reply from the system.
To configure a One Way RFC/BAPI select One Way from the Invocation Protocol.
4. Click Apply.
Example The list of RFCs or BAPIs is grouped based on their respective function module.
Using the above as an example, BAPI_SALESORDER_CREATEFROMDAT1 is
inside function group 2032
Expanding the node alongside the name allows for browsing the interface of the
RFC or BAPI as shown in the following example.
Configuration Tab
This is standard configuration. You can specify publication service configuration
options using the Configuration tab.
Communication with the SAP server requires the existence of “logical systems,”
the identification of IDoc “message types,” and other custom modifications using
the SAP graphical user interface. While these are not R/3 Adapter configuration
issues, they must be complete before IDocs can be transmitted. See Appendix D
on page 489 for an example of customizing the SAP server to communicate with
the adapter.
Transport Type — Select the type of message transport used by the service.
— JMS indicates that JMS (Java Messaging Service) mode of transport will be
used by the service. An adapter service that uses the JMS mode of transport
can communicate only with the TIBCO Enterprise for JMS server.
— Rendezvous indicates that TIBCO Rendezvous will be used to transport
messages.
The transport can be configured to use a trusted store and identity resource
for use in SSL (Secure Sockets Layer) configurations. TIBCO Rendezvous
sessions and JMS topics have an SSL configuration field which uses a dialog to
perform SSL configuration.
To enable and configure SSL, in the Project panel, expand the Advanced
folder, then expand the Sessions folder. Select the TIBCO Rendezvous
session or JMS topic and click Use SSL?. The SSL configuration options are
explained in the online help associated with the session dialog. Click the
question mark to display the online help.
If the SSL configuration is used by the adapter service sessions, you should
manually change the configuration of the R3JmsTopicSession to SSL. This
can be done by selecting the Use SSL? checkbox in the R3JmsTopicSession
session.
Publish Mode — Select the appropriate publication mode. See Identifying the
Publication Mode on page 155 for details.
5. If you selected Rendezvous in the Transport Type field, the following
options need to be specified:
Wire Format — The format in which messages are to be published. Different
options are displayed according to the Transport Type selected.
One of the following wire formats can be selected for sending the message.
Publishers and subscribers can only send and receive data if they agree on a
specific wire format. Possible values are:
— ActiveEnterprise Message, an externally-described XML message
format supported by the TIBCO Adapter SDK. Control information for
validation is sent in the message. This format allows ActiveEnterprise
components to perform extra validation on messages sent or received.
— XML, allows you to retrieve data as XML documents and metadata as XML
Schemas (XSD).
— Rendezvous Message, a self-describing message format used by TIBCO
Rendezvous applications. Control information for validation is not sent in
the message. For Rendezvous wire format, a message of type RVMSG_RVMSG
(Rendezvous 5.x) or TIBRVMSG_MSG (Rendezvous 6.x) is always sent when
this format is selected. If a publisher sends a simple RVMSG_STRING or
TIBRVMSG_STRING, an exception is passed to the subscribing application.
For integrating two SAP R/3 systems, the wire format and transport type for both
the publisher and subscriber must be same, otherwise an error will occur.
6. If you selected JMS in the Transport Type field, specify the following
options:
Wire Format — The format in which messages are to be published. Different
options are displayed according to the Transport Type selected.
For JMS mode of transport only one wire format is available. Publishers and
subscribers can only send and receive data if they agree on a specific wire
format.
— XML, allows you to retrieve data as XML documents and metadata as XML
Schemas (XSD).
Delivery Mode — The delivery mode for the message. There are two options
to choose from.
— Persistent indicates that the message will be available to a JMS client
even if the JMS server goes down.
— Non-persistent indicates that the message will not be available to a JMS
client if the JMS server goes down.
See the TIBCO Enterprise for JMS User’s Guide for more information.
Connection Factory Type — A message can be published to a topic or sent
to a queue.
— Queue indicates that a message sent to a queue is consumed by one receiver.
Each message has only one receiver though multiple receivers may connect
to the queue. The first receiver to access the queue gets the message. The
other receivers do not. This messaging model is known as point-to-point.
— Topic indicates that a message published to a topic is broadcast to one or
more subscribers. All messages published to the topic are received by all
services that have subscribed to the topic. This messaging model is known
as publish-subscribe.
For details on JMS concepts refer to the TIBCO Enterprise for JMS User’s Guide.
7. Click Apply
See Configuring Schema for Adapter Services on page 191 for details on
configuring data schema for adapter services. See Configuring User Exits on
page 230 for details on setting advanced options for a publisher service.
Example This example shows a publication service created for MATMAS01 IDoc.
The following example shows a publication service configured for JMS mode of
transport.
Mode “none”
In the default interface mode, IDoc output from an SAP R/3 system is processed
in the native RFC table format. This compressed (unexploded) form uses
metadata to describe an IDoc. The IDoc data is most efficiently transmitted in this
format, because no additional processing is required to expand the IDoc segments
and fields. For best performance the decompression (exploding) step is left for the
stage when the data is actually consumed.
IDocs of SAP R/3 System Releases 3.x and 4.x (port types 3 and 4) are supported.
SAP R/3 releases 4.x are also capable of sending IDocs in a format
understandable by older releases, including 3.x.
For SAP R/3 releases 4.x, the IDoc contains the following records:
• EDI_DC40 (one control record)
• EDI_DD40 (multiple data records)
For SAP R/3 releases 3.x, an IDoc contains the following records:
• EDI_DC (one control record)
• EDI_DD (multiple data records)
Figure 8 shows a truncated example of 4.x IDoc data transmitted in the default
“explode” mode. In this example the control record follows the data records.
Note that for transmission purposes, the order is not significant to the adapter.
<attribute class="sequence[EDI_DC40]"
name="IDOC_CONTROL_REC_40"/>
<attribute class="sequence[EDI_DD40]"
name="IDOC_DATA_REC_40"/>
</class>
This flag causes the adapter not to trim any of the blank-padded fields or filter out
empty fields coming from the SAP R/3 system.
Mode “10Xcif”
The unexploded form of an IDoc is received and converted to a SAP Certified
Intermediate Format (CIF). The IDoc message is transformed to a CIF string that
contains Group, Segment and Field name value pairs, in an implicit hierarchical
structure. CIF is one of SAP standards for exchanging information with non-SAP
systems.
If multiple IDocs are received in a batch, then each IDoc in the batch is split from
the other IDocs and sent individually.
Mode “10Xbatched”
The10X batched format is useful to offload extensive volumes of IDocs from an
SAP R/3 system by first collecting them into the ALE layer, and then dispatching
the collected IDocs in one single transaction. This achieves the best throughput for
both the SAP R/3 system, and the adapter.
If an ALE outbound profile is not set up to collect IDocs, the IDocs are sent by the
SAP R/3 system immediately to the adapter, as they are created. In that case, the
adapter packs each IDoc received into a batch format that contains only one IDoc
and then dispatches it. If more than one IDoc is received, the “batched” message
contains a string of IDocs packed together. All control records precede the data
records in the package.
The none, explode and the exploded batch modes can be configured with wire
formats, ActiveEnterprise message, XML and Rendezvous message. The 10Xcif
and 10Xbatched modes can be configured only with Rendezvous messages.
Schema Tab
Publication services must be associated with the IDoc schema. Schema association
can be carried out in the Schema tab.
The procedure to obtain IDocs is detailed in this section.
1. Click Fetch IDocs to retrieve the list of IDocs based on the IDoc filter
provided.
2. Click Select IDoc, a list of IDocs is displayed in a separate window.
3. Choose an IDoc from the list displayed and click OK. The schema of the
selected IDoc is downloaded and displayed in the tab. The IDoc is displayed
in a hierarchical manner similar to the display in the SAP system. Click on the
nodes to expose the relationship to those nodes and display the fields for
those segments.
The names of the fields in segments are displayed, the length is not displayed.
The field lengths are available in the project’s schemas folder.
4. Services are created appropriately for the IDoc and associated with the IDoc’s
schema.
On selecting the required IDoc the service is created as shown in the following
screen.
Advanced Tab
Advanced options can be set for a publication service using two modes of
transport, TIBCO Rendezvous and JMS. The procedures are detailed below:
You can overwrite the subject by entering the new subject in Message
Subject field. If you are using global variables in the subject names, ensure
that they are not deleted.
If you need to globally change the variables %%Domain%% and
%%Deployment%% in the default subject name, use the Edit >Global Variables
menu option. Ensure that the values are not set to null.
If you need to override the subject name for a specific adapter configuration,
override it by entering the required value in the Message Subject field and
not by changing the Global Variables. Once you override the subject name
manually, further updating must be carried out manually when required. The
subject name is not generated automatically.
1. Click Apply.
2. Click Go To to access and modify the configuration options of the endpoint, if
required. See TIBCO Designer Adapter Resource Management Guide for details
on configuring endpoints.
Example This example screen shows the advanced configuration options for a publication
service created for the MATMAS01 IDoc.
If JMS is selected in the Transport Type field (under the Configuration tab):
The advanced options are identical for all types of services using JMS as the mode
of transport.
JMS administrator should define the destinations that will be used by the adapter
services. See TIBCO Enterprise for JMS documentation for details.
Example This example screen shows the advanced configuration options for a publication
service.
A subscription service is used to receive IDocs from the TIBCO environment and
then send it to the SAP R/3 system. A separate subscription service is required for
every IDoc to be sent to the SAP R/3 system.
In cases where the IDoc is being sent in a TIBCO Rendezvous 5.x message format,
the service must still be associated with an IDoc even though the schema of the
IDoc will not be used. This also applies to IDocs sent using 10Xcif, 10Xbatched
and 10XbatchedNL modes.
You can configure Subscription service parameters under the following tabs:
• Configuration Tab
• Schema Tab
• Advanced Tab
Configuration Tab
Subscription service configuration options can be specified using the
Configuration tab.
Communication with the SAP server requires the existence of “logical systems,”
the identification of IDoc “message types,” and other custom modifications using
the SAP graphical user interface. While these are not R/3 Adapter configuration
issues, they must be complete before IDocs can be transmitted. See Appendix D
on page 489 for an example of customizing the SAP server to communicate with
the adapter.
Transport Type — Select the type of message transport used by the service.
— JMS indicates that JMS (Java Messaging Service) mode of transport will be
used by the service. An adapter service that uses the JMS mode of transport
can communicate only with the TIBCO Enterprise for JMS server.
— Rendezvous indicates that TIBCO Rendezvous will be used to transport
messages.
The transport can be configured to use a trusted store and identity resource
for use in SSL (Secure Sockets Layer) configurations. TIBCO Rendezvous
sessions and JMS topics have an SSL configuration field which uses a dialog to
perform SSL configuration.
To enable and configure SSL, in the Project panel, expand the Advanced
folder, then expand the Sessions folder. Select the TIBCO Rendezvous
session or JMS topic and click Use SSL?. The SSL configuration options are
explained in the online help associated with the session dialog. Click the
question mark to display the online help.
If the SSL configuration is used by the adapter service sessions, you should
manually change the configuration of the R3JmsTopicSession to SSL. This
can be done by selecting the Use SSL? checkbox in the R3JmsTopicSession
session.
For an IDoc being received as TIBCO Rendezvous 5.x message, the wire
format must be Rendezvous message.
The wire format and transport type for both the Publication and Subscription
services must be same, otherwise an error will occur.
until they are consumed by the service. The service can be down and expect
to receive its messages when it comes back up.
— Non-durable indicates that the service is not registered with the JMS
server. Messages sent to a non-durable subscription service are not held by
the JMS server. If the service is down, it will not receive the messages that
arrived at the JMS server while the service was down.
For details, see the TIBCO Enterprise for JMS User’s Guide.
Connection Factory Type — A message can be published to a topic or sent
to a queue.
— Queue indicates that a message sent to a queue is consumed by one receiver.
Each message has only one receiver though multiple receivers may connect
to the queue. The first receiver to access the queue gets the message. The
other receivers do not. This messaging model is known as point-to-point.
— Topic indicates that a message published to a topic is broadcast to one or
more subscribers. All messages published to the topic are received by all
services that have subscribed to the topic. This messaging model is known
as publish-subscribe.
For details on JMS concepts refer to the TIBCO Enterprise for JMS User’s Guide.
4. Select the Receive IDOCs in Exploded Mode checkbox to receive IDocs in the
exploded batch format. See Identifying the Publication Mode on page 155 for
details of the exploded batch format.
5. Click Apply.
See Configuring Schema for Adapter Services on page 191 for details on
configuring data schema for adapter services. See Advanced Tab on page 173 for
details on setting advanced options for a Subscriber service.
The following example shows a subscription service configured for JMS mode of
transport.
Schema Tab
Subscription services must be associated with the IDoc schema. Schema
association can be carried out in the Schema tab.
The procedure to obtain IDocs is detailed in this section.
1. Click Fetch IDocs to retrieve the list of IDocs based on the IDoc filter
provided.
2. Click Select IDoc, a list of IDocs is displayed in a separate window.
3. Choose an IDoc from the list displayed and click OK. The schema of the
selected IDoc is downloaded and displayed in the tab. The IDoc is displayed
in a hierarchical manner similar to the display in the SAP R/3 system. Click
on the nodes to expose the relationship to those nodes and display the fields
for those segments.
The names of the fields in segments are displayed, the length is not displayed.
The field lengths are available in the project’s schemas folder.
4. Services are created appropriately for the IDoc and associated with the IDoc’s
schema.
On selecting the required IDoc the service is created as shown in the following
screen.
Advanced Tab
Advanced options can be set for a subscription service using two modes of
transport, TIBCO Rendezvous and JMS. The procedures are detailed below:
If TIBCO Rendezvous is selected in the Transport Type field (under the
Configuration tab):
1. Specify the following options in the Advanced tab:
Endpoint Reference — Specify the endpoint to be used by the Subscription
service.
Click Browse to locate the endpoint reference.
You can overwrite the subject by entering the new subject in Message
Subject field. If you are using global variables in the subject names, ensure
that they are not deleted. If you need to globally change the variables
%%Domain%% and %%Deployment%% in the default subject name, use the
Global Variables tab to change the variable value. Ensure that the values
are not set to null.
If you need to override the subject name for a specific adapter configuration,
override it by entering the required value in the Message Subject field and
not by changing the Global Variables. Once you override the subject name
manually, further updating must be carried out manually when required. The
subject name will not be generated automatically.
If the IDoc is to be posted to a client other than the client in the default client
connection, the client connection reference must be changed to point to the
appropriate client.
2. Click Apply.
If JMS is selected in the Transport Type field (under the Configuration tab):
The advanced options are identical for all types of services using JMS as the mode
of transport.
JMS administrator should define the destinations that will be used by the adapter
services. See TIBCO Enterprise for JMS documentation for details.
Example This example shows the advanced configuration options for a subscription
service created for the MATMAS01 IDoc.
Configuration Tab
Use the Configuration tab to specify transport type, quality of service and
invocation protocol to be used for the Request-Response Invocation service.
1. Specify the following options in the Configuration tab:
Name — A unique and meaningful name for the Request-Response Invocation
service.
Transport Type — Select the type of message transport used by the service.
— JMS indicates that JMS (Java Messaging Service) mode of transport will be
used by the service. An adapter service that uses the JMS mode of transport
can communicate only with the TIBCO Enterprise for JMS server.
— Rendezvous indicates that TIBCO Rendezvous will be used to transport
messages.
The transport can be configured to use a trusted store and identity resource
for use in SSL (Secure Sockets Layer) configurations. TIBCO Rendezvous
sessions and JMS topics have an SSL configuration field which uses a dialog to
perform SSL configuration.
To enable and configure SSL, in the Project panel, expand the Advanced
folder, then expand the Sessions folder. Select the TIBCO Rendezvous
session or JMS topic and click Use SSL?. The SSL configuration options are
explained in the online help associated with the session dialog. Click the
question mark to display the online help.
If the SSL configuration is used by the adapter service sessions, you should
manually change the configuration of the R3JmsTopicSession to SSL. This
can be done by selecting the Use SSL? checkbox in the R3JmsTopicSession
session.
Delivery Mode — The delivery mode for the message. There are two options
to choose from.
— Persistent indicates that the message will be available to a JMS client
even if the JMS server goes down.
— Non-persistent indicates that the message will not be available to a JMS
client if the JMS server goes down.
Connection Factory Type — A message can be published to a topic or sent
to a queue.
— Queue indicates that a message sent to a queue is consumed by one receiver.
Each message has only one receiver though multiple receivers may connect
to the queue. The first receiver to access the queue gets the message. The
other receivers do not. This messaging model is known as point-to-point.
— Topic indicates that a message published to a topic is broadcast to one or
more subscribers. All messages published to the topic are received by all
services that have subscribed to the topic. This messaging model is known
as publish-subscribe.
For details on JMS concepts refer to the TIBCO Enterprise for JMS User’s Guide.
4. Click Apply.
See Configuring Schema for Adapter Services on page 191 for details on
configuring data schema for adapter services. See Configuring Multiple
Connections for Inbound Instance on page 241 for details on setting advanced
options for a request-response invocation service.
Schema Tab
Request-Response Invocation services must be associated with the RFC/BAPI
schema. Schema association can be carried out in the Schema tab.
The procedure to obtain RFC/BAPIs is detailed in this section.
Advanced Tab
Advanced options can be set for a request-response invocation service using two
modes of transport, TIBCO Rendezvous and JMS. The procedures are detailed
below:
If TIBCO Rendezvous is selected in the Transport Type field (under the
Configuration tab):
You can configure the subject to be used when invoking an inbound RFC or BAPI,
by changing the subject in the Advanced tab.
1. Specify the following options in the Advanced tab:
Endpoint Reference — Specify the endpoint to be used by the
Request-Response Invocation service. Click Browse to locate the endpoint
reference.
Message Subject — Specify the subject name to be used by default.
You can overwrite the subject by entering the new subject in Message
Subject field. If you are using global variables in the subject names, ensure
that they are not deleted. If you need to globally change the variables
%%Domain%% and %%Deployment%% in the default subject name, use the
Global Variables tab to change the variable value. Ensure that the values
are not set to null.
If you need to override the subject name for a specific adapter configuration,
override it by entering the required value in the Message Subject field and not
by changing the Global Variables. Once you override the subject name
manually, further updating must be carried out manually when required. The
subject name will not be generated automatically.
2. Click Apply.
If JMS is selected in the Transport Type field (under the Configuration tab):
The advanced options are identical for all types of services using JMS as the mode
of transport.
JMS administrator should define the destinations that will be used by the adapter
services. See TIBCO Enterprise for JMS documentation for details.
Example This example shows the advanced configuration options for a Request-Response
Invocation service.
Configuration Tab
1. Specify the following options in the Configuration tab:
2. By default, a request-response service is named Request-Response Service.
Once the RFC or BAPI is selected using the Schema tab, the service name is
changed to reflect the RFC/BAPI name.
Name — A unique and meaningful name for the request-response service.
Transport Type — Select the type of message transport used by the service.
— JMS indicates that JMS (Java Messaging Service) mode of transport will be
used by the service. An adapter service that uses the JMS mode of transport
can communicate only with the TIBCO Enterprise for JMS server.
— Rendezvous indicates that TIBCO Rendezvous will be used to transport
messages.
The transport can be configured to use a trusted store and identity resource
for use in SSL (Secure Sockets Layer) configurations. TIBCO Rendezvous
sessions and JMS topics have an SSL configuration field which uses a dialog to
perform SSL configuration.
To enable and configure SSL, in the Project panel, expand the Advanced
folder, then expand the Sessions folder. Select the TIBCO Rendezvous
session or JMS topic and click Use SSL?. The SSL configuration options are
explained in the online help associated with the session dialog. Click the
question mark to display the online help.
If the SSL configuration is used by the adapter service sessions, you should
manually change the configuration of the R3JmsTopicSession to SSL. This
can be done by selecting the Use SSL? checkbox in the R3JmsTopicSession
session.
If the SAP R/3 system expects a response from the adapter, the invocation
protocol should be configured as request/reply. If no reply is expected, the
protocol should be set to oneway.
3. Click Apply.
See, Configuring Schema for Adapter Services on page 191 for details on
configuring data schema for adapter services. See Advanced Tab on page 188 for
details on setting advanced options for a request-response service.
Example This example shows a request-response service that is configured using the
default values.
The following screen shot shows a request-response service configured to use JMS
as the mode of transport.
Schema Tab
Request-Response services must be associated with the RFC/BAPI schema.
Schema association can be carried out in the Schema tab.
The procedure to obtain RFC/BAPIs is detailed in this section.
1. Click Fetch RFC/BAPI to retrieve the list of RFC/BAPIs based on the
RFC/BAPI filter provided.
Advanced Tab
Advanced options can be set for a request-response service using two modes of
transport, TIBCO Rendezvous and JMS. The procedures are detailed below:
If TIBCO Rendezvous is selected in the Transport Type field (under the
Configuration tab):
When invoking an RFC or BAPI in the SAP R/3 system the subscribed subject
must match the subject on which the request is being sent. You can configure the
subject to be used when invoking an inbound RFC or BAPI, either by using an
Endpoint Reference or changing the subject.
1. Specify the following options in the Advanced tab:
Endpoint Reference — Endpoint to be used by the Request-Response
service. Click Browse to locate the endpoint reference.
Message Subject — Subject name to be used by default.
You can overwrite the subject by entering the new subject in Message
Subject field. If you are using global variables in the subject names, ensure
that they are not deleted. If you need to globally change the variables
%%Domain%% and %%Deployment%% in the default subject name, use the
Global Variables tab to change the variable value. Ensure that the values
are not set to null.
If you need to override the subject name for a specific adapter configuration,
override it by entering the required value in the Message Subject field and not
by changing the Global Variables. Once you override the subject name
manually, further updating must be carried out manually when required. The
subject name will not be generated automatically.
If the RFC or BAPI needs to be invoked for a client other than the one
referenced in the default client connection, the client connection reference
must be modified to point to the appropriate client.
Logon Required — If the RFC or BAPI being invoked in the SAP R/3 system
requires explicit, check this box, else leave it unchecked. See Event Driven
Inbound Connections on page 348 for details.
If JMS is selected in the Transport Type field (under the Configuration tab):
The advanced options are identical for all types of services using JMS as the mode
of transport.
The invocation protocol for an RFC or BAPI cannot be determined using the
properties available in the Request-Response service.
Example This example shows the advanced configuration options for a request-response
service.
Adapter services must be associated with the IDoc or RFC/BAPI schema. Schema
association can be carried out in the Schema tab for IDoc or RFC/BAPI schema
depending on the type of service.
Use the following steps to configure adapter service schema.
1. Drag the required adapter service icon from the palette panel to the design
panel, then click Schema. The tab displayed depends on the type of service. In
the case of publication and subscription services IDoc schema can be
obtained. In the case of request-response invocation and request-response
RFC or BAPI schema can be obtained. The procedure for both is detailed in
this section.
The names of the fields in segments are displayed, the length is not displayed.
The field lengths are available in the project’s schemas folder.
d. Services are created appropriately for the IDoc and associated with the
IDoc’s schema.
RFC/BAPI
a. Click Fetch RFC/BAPI to retrieve the list of RFC/BAPIs based on the
RFC/BAPI filter provided.
b. Click Select RFC/BAPI a list of RFCs/BAPIs is displayed in a separate
window.
c. Choose an RFC or BAPI from the list displayed and click OK. The schema
of the selected RFC or BAPI is downloaded and displayed in the tab. The
RFC or BAPI details displayed is similar to the display in the SAP R/3
system.
d. Services are created appropriately for the RFC/BAPI and are associated
with the RFC/BAPI schema.
On selecting the required IDoc the service is created as shown in the following
screen.
This chapter explains how to configure the adapter using advanced options.
Topics
Overview
The Adapter Services tab can also be used to specify a list of destinations to
which the IDocs will be sent. This list of destinations applies globally to all IDoc
types that are sent from the SAP R/3 system or to the SAP R/3 system. Typically,
these destinations are SAP R/3 logical system names, but they can be a bank
identifier, a customer identifier, or any Partner Type currently configured.
The RCVPRN field of an IDoc’s control record specifies the receiving partner
(destination) for the IDoc. If an IDoc’s RCVPRN field has a value that is not
configured as a valid destination, the IDoc is not published to the TIBCO
environment. The IDoc will be logged (saved) into an ASCII text file under the
configured directory. For details on how to save IDoc under a directory, see
Saving an IDoc to a Directory on page 232.
To configure valid destinations,
1. In the Adapter Services tab, enter the valid destinations in the Valid
Destinations field. The screen is shown next.
2. To add a new entry in the list, enter the name of the valid destination in the list
separated by comma.
3. Click the Apply button.
You can modify the default connections or create additional connections to suit
your requirements. On creating an adapter instance a basic set of connections are
created depending on whether the adapter instance is Inbound, Outbound or
Both. Connections can be shared by adapter instances in the same project.
The default connections created for an adapter instance that is both Inbound and
Outbound are listed in the next table:
All connections maintained inside an adapter instance are configured using the
Active Connection Resource available from the palette panel.
When you configure an adapter instance, an Active Connection instance is created
by default with reference to one client connection and one server connection. If
the default configuration does not meet your requirements, you can modify the
existing Active Connection instance or create a new one. An appropriate reference
to the Active Connection instance must be provided in the adapter instance.
For details on associating an adapter instance with an Active Connection
Reference, see Assigning an Active Connection to an Adapter on page 207.
Configuration Name — Specify a unique and meaningful name for the Active Connection. By
Tab default, the Active Connection folder is named
R3AdapterConfigurationActiveConnections. You can change it to a name
of your choice.
Description — Enter a brief description.
3. Click Apply.
After creating an Active Connection instance, the next step is to create references
from the Active Connection to the required client or server connections.
See Adding a Connection Reference on page 205.
Example
This example shows the basic active connection folder screen. The active
connection folder has been assigned a name
Ensure that client connections and server connections have been created prior to
creating connection references. See Adding a Client Connection on page 208 and
Adding a Server Connection on page 221 for details.
1. Drag an ActiveConnection icon from the palette panel to the design panel.
2. Drag and drop a ConnectionReference icon from the palette panel to the
design panel. The Configuration tab displays.
3. Specify the following options in the Configuration tab:
Configuration Name — Assign a unique and meaningful name to the Active Connection. By
Tab default the name is ConnectionReference. You can change this to a name of
your choice.
Referenced Connection — Enter the client or server connection to be
referenced by the Active Connection. Click Browse to locate the required
client or server connection.
See Adding a Client Connection on page 208 and Adding a Server Connection
on page 221, for details on configuring client connection and server
connection parameters.
4. Click Apply.
5. If you need to view or modify the client connection or server connection
parameters, click Go To. The display changes to the Configuration tab of the
connection specified.
Example
This example shows a connection reference configuration created by default for
client connections.
Ensure that when any connection reference is made Default (by selecting the
Default Connection check box), the default connection is made the top most
child under the Active Connection folder.
If there is a combination of Server Connection References and Client Connection
References, make sure that the default Server Connection Reference is at the top
(first) of all Server Connection References and default Client Connection
Reference is at the top (first) of all Client Connection References. Making the
Default Connection Reference the top element can be achieved by Sorting. For
details on sorting, refer to TIBCO Designer documentation.
It is recommended that you associate one instance with one active connection.
Client connections requiring gateway hosts different from that of the application
server are not supported. The workaround is to use client connections in
conjunction with saprfc.ini.
Use the Configuration Tab to select the type of client connection you want to
configure.
2. Drag and drop a ClientConnection icon from the palette panel to the design
panel.
3. Select the ClientConnection type in the Configuration tab:
In cases where a dedicated connection is required and the gateway server host
differs from the application server, you must select saprfc.ini file as the
ClientConnection type.
5. The name of the client is derived from the client connection name. However,
advanced configuration for the client is maintained in the client.
Make a note of the client name for future reference in case advanced
configuration is required.
A client connection can be configured for a specific SAP R/3 application server.
Use the following tabs to configure Dedicated Application Server Client
Connection parameters.
• Configuration Tab
• Advanced Tab
Configuration Application Server — The network name of the host SAP application
Tab server machine.
System Number — The SAP R/3 database instance number.
Client — The SAP R/3 client number.
User name — Specify a valid user name to log into the SAP R/3 client
specified
Password — Specify a valid password corresponding to the user name.
R/3 Logon Language — Select the language to be used when logging into the
SAP R/3 system.
3. Click Apply.
4. Click the Advanced tab to access advanced configuration parameters. See
Setting Client Connection Advanced Options on page 216.
5. Click Test Connection to verify the connection configuration settings.
Example
In this example a client connection of the dedicated application server has been
configured.
Use the following tabs to configure a client connection that uses load balancing.
• Configuration Tab
• Advanced Tab
Configuration System Name — The SAP/R3 system ID used in conjunction with load
Tab balancing. For example, TIB.
Msg Server — The message server used in conjunction with load balancing.
For example, SAPSVR.
Logon Group — The SAP logon group that is used in conjunction with load
balancing. For example, PUBLIC.
Example
In this example a client connection of the load balancing type has been
configured.
Use the following steps to configure a client connection that uses the saprfc.ini
file.
1. Drag a ClientConnection icon from the palette panel to the design panel.
Select Saprfc.ini file from the Select Client Connection Type drop
down box.
In cases where a dedicated connection is required and the gateway server host
differs from the application server, you must select saprfc.ini file as the
Client Connection type.
2. Click Apply.
3. Specify the following options in the Configuration tab:
Example
In this example a client connection has been configured to use the saprfc.ini
file.
The advanced properties options are identical for all three types of client
connections.
Example
The example displays the advanced client connection options.
Configuration Name — The name derived from the client connection instance associated with
Tab this client.
Description — A description of the client.
Client — The SAP R/3 client number. This number must exist in the SAP
R/3 system.
User Name — Specify a valid user name to log into the SAP R/3 client
specified
Password — Specify a valid password corresponding to the user name.
R/3 Logon Language — Select the language to be used when logging into the
SAP system.
3. Click Apply.
4. Click the Advanced tab to configure advanced properties.
Example
This example shows the configuration options of a client during creation of a
client connection.
You can specify the tracing and debugging parameters for a SAP R/3 client using
advanced options. This option can be used to carry out debugging of RFCs from
the SAP R/3 GUI.
Use the following steps to set tracing and debugging parameters at the SAP level:
1. Click the Advanced tab.
2. Specify the following options:
Advanced Tab RFC Trace — Indicate whether the trace is on. Possible values are 0 or 1. By
default, set to 0.
ABAP Debug — Indicate whether the debug is on. Possible values are 0, 1, or 2.
By default, set to 0.
Value Significance
0 The corresponding trace or debug is turned OFF
Use SAPGUI — Indicate whether the trace or debug is on. Possible values are 0
or 1. Default value is 0.
If other values are entered, an error message appears. If a valid value is not
provided, the original value is used.
3. Click Apply.
The trace files are generated in the working directory of the adapter. This is set in
the adr3.tra file using the parameter
application.start.dir=C:/Tibco/adapter/adr3/5.1
In case you want the files to be generated into a separate directory you can define
an environment variable RFC_TRACE_DIR and assign its value as the directory of
your choice. Beware, that in this case, you will not be able to put trace files of
separate instances into separate folders as only the value assigned to
RFC_TRACE_DIR will always be picked.
Use the following tab to select the type of server connection you need to
configure.
• Configuration Tab
2. Drag and drop a ServerConnection icon from the palette panel to the design
panel.
3. Select the connection type in the Configuration tab:
Configuration Select Connection Type — Select the type from the drop-down list. The
Tab possible types are:
— Default Server Connection
— saprfc.ini Server Connection
4. Click Apply, the appropriate Configuration tab is displayed.
The following sections provide instructions on configuring the two types of
server connections.
Example
In this example, a server connection is being configured in the default mode.
2. Drag and drop a Server Connection icon from the palette panel to the design
panel, the Configuration tab is displayed.
3. In the Server Connection Type field, select saprfc.ini file.
4. Click Apply.
5. Specify the following option in the Configuration tab.
Example
In this example a server connection that uses the saprfc.ini file has been
configured.
The Advanced tab is used to configure the connection retry management for
Server Connections.
1. Click the Advanced tab in the Configuration panel.
2. Specify the following options in the Advanced tab:
Example
In this example advanced options for a server connection are displayed.
It is important to note that if PROGID is not defined, the value of DEST is used
instead.
The RFC server program is registered as follows:
• Program ID is UseAUniqueProgramID
• SAP gateway is sapsvr
In this example, there is no RFC tracing since RFC_TRACE is defined with a value
of 0.
In this example, there is no RFC trace and ABAP debugging since RFC_TRACE
and ABAP_DEBUG are defined with a value of 0.
To reference the parameters given below, the destination field in the client
connection should be defined as DEST-TIB-B. See Configuring Client Connection
with Load Balancing on page 212 for details.
Note that if R3NAME is not defined, the value of DEST is used instead.
DEST=DEST-TIB-B
TYPE=B
R3NAME=TIB
MSHOST=sapsvr
GROUP=SPACE
ABAP_DEBUG=0
USE_SAPGUI=0
2. In the Write Idoc To Directory field, enter the directory in which these
files are to be saved.
Validation of the directory will not be done during design-time. If this field is not
populated, the ASCII text file will be logged in the current working directory of
the adapter.
Each of the IDocs will be written to a unique file. The name of the file is created
according to the following syntax:
Filename = IdocType_DateTimeStamp_IdocCount.idoc
Configuring Reporting
This feature enables the adapter to report adapter processing errors, application
errors or informational messages about successful posting of messages to the SAP
R/3 system for all one way inbound scenario.
This includes:
• Subscription service messages posted in the SAP R/3 system as IDocs
• Oneway Request-Response service messages invoked in the SAP R/3 system
as RFCs
• Oneway Request-Response service messages invoked in the SAP R/3 system
as tRFCs
Even though the confirm publisher reference is displayed for configuration for
non oneway protocol Request-Response services, the feature is available at
run-time for Request-Response services in oneway protocol only.
You can configure the adapter to publish an IDoc on a dynamic subject name and
specify the dynamic subject using a special notation. Before the adapter publishes
an IDoc, it constructs the subject name by using the contents of the control record
of the IDoc.
An IDoc control record contains the following fields, which are listed in
alphabetical order in Table 10:
Use these names to specify a dynamic subject name. To use a control record field
name within a dynamic subject name, you must surround the control record field
name with two $ characters. For example, to use RCVPRN control record field,
you must use $RCVPRN$ within a dynamic subject name. Some examples are
given below:
MYSUBJECT.$MANDT$$RCVPRN$.$DOCNUM$
$TABNAM$.TEST
MARY.$SNDPRN$.IDOC
2. Click Apply.
The adapter scans the dynamic subject name and replaces the control record
field names (such as $SNDPRN$, $DOCNUM$, and so on) with actual values from
the control record of the IDoc. The resulting subject name must be a valid
TIBCO Rendezvous subject name in case of RV transport and a valid
destination name in case of JMS transport.
If you specify a name that does not represent a valid control record field name,
the subject name is left intact. For example, if you specify A.$XYZ$ for the
dynamic subject name, the adapter leaves the subject name intact because XYZ
does not represent a valid control record field name. In short, the adapter
publishes under the subject A.$XYZ$. Some of the control record fields (of the
IDoc) may be empty.
Replacing control fields is a feature available for the IDoc Publication service.
Using this feature you can replace the field value for the control record. For
example you can override the receiving partner value coming from SAP with
your inputs.
Configuring control fields replacement:
1. The Advanced tab of the Publication service is shown below.
3. In the Name field, enter the control field record, which is to be replaced.
4. In the Value field, enter the value to be changed.
5. Click Set to add the name value pair.
6. To remove an entry from the list, choose the entry and then click Delete.
7. Click Save to apply the changes.
The name value pairs you have entered are added to the project only when
you click Save.
For an inbound instance the connections are specified at the service level. This
means, you can have different connections for different services. When the
adapter instance is configured all the services have a default connection. You can
add new connections to the adapter and then for each service specify one of the
newly added connections.
Carry out the following steps to add a new connection.
1. Configure an inbound adapter instance.
This will create default connection for all the services. Expand the
R3Connections>ClientConnections folder to view this connection. The name
of the connection will contain the adapter instance name. Similarly there will
be a reference created for this connection in the ActiveConnections folder of
that particular adapter instance. This is the default connection and if needed
the parameters of this connection can be modified.
2. Click on the R3Connections>ClientConnections folder. Drag and drop the
ClientConnection icon from the palette panel to the design panel.
3. Select the Client connection type and click Apply. Enter all the parameters
for the second connection in the Inbound Connection tab. You can specify
advanced connection parameters in the Advanced tab. Click Apply.
4. Click on the Active Connection folder for the adapter instance. Drag and drop
a ConnectionReference icon from the palette panel to the design panel.
5. Enter an appropriate name in the Name field. Click the Browse Resource icon
to display the Select a Resource window.
6. Select the newly created Client Connection resource. Click OK to attach the
client connection you created to this reference resource.
7. Click on the Advanced tab of the service for which this connection was
created. In the Client Connection Reference field, click the Browse
Resource icon to display the Select a Resource window.
8. Select the client connection for this service and click Apply to save the adapter
instance.
9. Save the adapter configuration and start the adapter. The adapter dispatches
the calls to SAP R/3 on the connections configured for each service.
Server connections are specified at the instance level. The configured services can
use all the connections created for the instance.
Carry out the following steps to add a new server connection to the adapter.
1. Configure an outbound adapter.
This will have a default connection. Expand the
R3Connections>ServerConnections folder to view this connection. The name
of the connection will contain the adapter instance name. Similarly there will
be a reference created for this connection in the ActiveConnections folder of
that particular adapter instance. This is the default connection and if needed
the parameters of this connection can be modified.
2. Click on the R3Connections>ServerConnections folder. Drag and drop the
ServerConnection icon from the palette panel to the design panel.
3. Select the Server connection type and click Apply. Enter all the parameters for
the second connection in the Outbound Connection tab. Specify advanced
connection parameters in the Advanced tab. Click Apply.
4. Click on the Active Connection folder for the adapter instance. Drag and drop
a ConnectionReference icon from the palette panel to the design panel.
5. Enter an appropriate name in the Name field. Click the Browse Resource icon
to display the Select a Resource window.
6. Select the newly created Server Connection resource. Click OK to attach the
server connection you created to this reference resource.
7. Save and start the adapter instance. Now whenever you start the adapter it
will act as an RfcServer and create connections for all SAP application servers.
TIDManager
The Transaction Identity Manager (TIDManager) is used when tRFCs or IDocs are
exchanged with the SAP R/3 system to ensure exactly-once delivery. The
TIDManager component ensures that no transactional data is lost or duplicated in
case of communication errors between the adapter and the SAP R/3 system.
The TIDManager server configuration is required in one of the following two
scenarios:
• Outbound Configurations — Scenario where multiple publication service
configurations (for IDocs) or Request-Response Invocation service
configurations (for tRFCs) use the same program IDs and running in a load
balanced fashion.
• Inbound Configurations — Scenarios where multiple Subscription service
configurations (for IDocs) or Request-Response service configurations (for
tRFCs) run in a load-balanced fashion.
Outbound configurations sharing the same program ID should reference the same
remote TIDManager server configuration.
If more than one TIDManager is maintained for the same Program ID, once-only
delivery from SAP cannot be guaranteed.
Outbound TIDManagement
In case of remote TIDManagement for outbound configurations, if the
TIDManager server is not running or not reachable because of network outages,
the adapter throws the following errors upon receiving a transaction from the
SAP system:
2003 Aug 29 10:07:52:633 GMT +5 SAPAdapter.R3AdapterConfiguration
Error [Adapter] AER3-000102 TID operation timed out.
2003 Aug 29 10:07:52:633 GMT +5 SAPAdapter.R3AdapterConfiguration
Error [Adapter] AER3-000410 Server thread exited, message : Rpc
invocation timeout
The transaction itself is not lost and is maintained in the SAP system’s tRFC
queue. The SAP system will periodically try to push out the transactions and clear
the queue. If communication to the TIDManager server is restored, normal
processing will continue.
Inbound TIDManagement
In case of remote TIDManagement for outbound configurations, if the
TIDManager server is not running or not reachable because of network outages,
the adapter throws the following errors upon receiving an IDoc from the TIBCO
environment:
03 Aug 29 10:20:37:192 GMT +5 SAPAdapter.R3AdapterConfiguration1
Error [Adapte] AER3-000102 TID operation timed out.
03 Aug 29 10:20:37:212 GMT +5 SAPAdapter.R3AdapterConfiguration1
Error [Adapter] AER3-000493 Remote TIDManager server unreachable
The TIDManager Client Retry Count determines the number of times the
adapter will try to invoke the TID operation on the TIDManager server before
concluding that the TIDManager server is indeed unreachable.
It is recommended that you use the Program ID defined in SAP as part of the
TIDManager name.
Show All Tabs — Select this check box to access the General tab. See Setting
TIDManager Monitoring Options on page 256 for details on setting
monitoring options.
3. Click Apply.
You can configure logging preferences and information in the Logging tab. You
can configure the level(s) of trace messages to be logged, and then specify the
destination for the trace messages. You have the option of using advanced logging
options or standard logging options.
Use the following steps to set up TIDManager logging options.
1. Drag the R3TIDManager Configuration icon from the palette panel to the
design panel.
2. Click Logging. The Logging tab is displayed.
TIDManager logging options are identical to those of an adapter instance. For
instructions on setting logging options see Logging Tab on page 130.
TIDManager Startup options are similar to the adapter instance level startup
options. The only difference is that the DefaultSession field in the Startup tab
of the TIDManager does not have a configured default session. See Startup Tab on
page 133 for details.
Configure TIBCO Hawk information for the TIDManager using the monitoring
options. You can use microagents to supplement the monitoring information
provided by the standard logging levels capability.
Use the following steps to configure TIDManager monitoring options:
1. Drag the R3TIDManagerConfiguration icon from the palette panel to the
design panel.
2. In the Configuration tab, select the Show All Tabs check box and click
Monitoring, the Monitoring tab is displayed.
TIDManager monitoring options are similar to those set for an adapter instance.
For instructions on setting monitoring options see Monitoring Tab on page 134
The fields R/3 Adapter Microagent Name and R/3 Adapter Microagent
Type, described in the referenced section, are not applicable for TIDManager
monitoring.
See the TIBCO Designer Adapter Resource Management Guide for information on
Monitoring, Hawk Agents and Microagents. You can access it using the Help
menu. Click Help>Help For>Adapter Resource.
Configure the RPC Server endpoint to be used by the TIDManager. Ensure that
the subject assigned to the RPC server matches the subject name of the RPC client.
This RPC client is referred to in the TID Manager Client field in the Adapter
Services tab of the adapter instances using this TIDManager instance.
General Tab TIDManager Server — Specify the TIDManager server reference. Click
Browse to locate the appropriate server endpoint.
Or
Click Go To, the RPC Server Session Configuration tab is displayed,
allowing you to configure the RPC server. By default, an endpoint named
TID_RPC_SERVER is provided for a TIDManager instance for messaging on
TIBCO Rendezvous. For details on configuring a TIDManager server for JMS
messaging, see Configuring a TIDManager server on JMS on page 259.
By default, the subject name for the TIDManager Server Session is
SAP.TIDMANAGER. You can change the subject as appropriate. The subject must
be unique for each TIDManager.
The subject name should match subject names being used by TIDManager
Client references in all adapter instances using this TIDManager.
See the TIBCO Designer Adapter Resource Management Guide for information
about configuring endpoints. You can access it using the Help menu. To access
it click Help>Help For>Adapter Resource.
TID Filename — Assign a unique TID filename. The TID file is used by the
TIDManager to maintain state information on the transaction IDs (TID) sent
from SAP. By default, the name of the TID file is tidFile.tid.
It is recommended that you use the name of the TIDManager instance as part
of the filename.
The subject specified for the TIDManager Server and the TID filename must
be unique for each TIDManager instance.
4. Click Apply.
You must change the name of the log file, adapter.log, if you intend to run
multiple R/3 TIDManagers.
Example
This example shows the run time options set for the default TIDManager instance.
Example
Load balancing, as the name indicates, is a concept that allows message loads to
be balanced or shared by multiple adapter instances. Load balancing ensures no
single instance is over-loaded, and minimizes stress-failures.
It also allows fault-tolerance by avoiding a single point of failure. The adapter can
run in load-balanced configurations both on the Inbound side as well as the
Outbound.
This section outlines the steps used to configure inbound load-balanced instances
containing Subscription services (Inbound IDocs) and/or Request-Response
services (Inbound RFC/BAPI.)
During the configuration of the adapter services, the Quality of Service must be
configured as type Distributed Queue.
Configuration of inbound load-balanced instances can be done either by:
1. Creating multiple inbound instances where the CMQ names are the same
across the instances.
Or
2. Creating one inbound instance that can be invoked multiple times.
It is recommended that you have a good grasp of the concepts listed below and
discussed in TIBCO Rendezvous Concepts manual before you finalize the
configuration of any inbound instance running in RVCMQ mode.
Before changing the Quality of Service, please make sure that no network sinks
have a Session Reference, referring to the Default Sessions (DefaultRVSession,
DefaultRVCMSession, DefaultRVCMQSession) created by the palette. To avoid
this, have a Custom Session associated with the Network Sink.
In the example shown, if the RVCMQ session of the master or root were
R3AdapterConfiguration2RVCMQSession, then the CMQ Name for the session
would be R3AdapterConfigurationRVCMQSession.
For each file sink available in the Log Sinks folder, make sure to include
%%LOG_FILENAME%% as the filename. It is assumed that a value is passed along
with the tra file.
When creating multiple instances, make sure that the TIDManager Client
references the same remote TIDManager instance.
Or
2. Creating one outbound instance that can be invoked multiple times.
The subsequent section focuses on the second option where one outbound
instance is created using client variable substitution as the means for providing
unique names for both the RVCM session name and File Sink filename during
each invocation of the adapter instance.
2. For each file sink available in the Log Sinks folder, include %%LOG_FILENAME%%
as the filename. It is assumed that a value would be passed along with the tra
file.
In the example screen, file sinks are located in the project in the following path:
Instance name>Advanced>Log Sinks
In this example, the filename for the sink fileSink has been updated to reflect
%%LOG_FILENAME%%.
BDC Implementation
SAP R/3 provides many interfaces for transferring external data to SAP R/3.
RFCs, BAPIs and IDocs are the most commonly used interfaces. BDC, which is
one of the data transfer mechanisms provided by SAP, can be used for data
integration in the absence of standard BAPIs, RFCs or IDOCs. One of the
advantages of BDC is when data is posted in SAP using BDC transaction all the
validations required for that transaction are performed on the data.
Sometimes, it is much easier, cleaner and faster to write a custom RFC for a
custom screen that fills a custom table in SAP.
Using BDCs you can create transactions in SAP by going through the SAP dialog
screens of a particular transaction. For instance, you can create a purchase order
through BDCs by going through the different screens of the Purchase Order
Creation transaction. (ME21).
The following methods can be used to implement BDCs:
• BDC implementation through standard RFC (ABAP4_CALL_TRANSACTION). See
BDC Implementation through Standard RFC
(ABAP4_CALL_TRANSACTION) on page 268 for details.
• BDC implementation through custom RFCs. In this case you will have a
custom RFC for every transaction in SAP. See BDC Implementation through
Custom RFCs on page 271 for details.
SKIP_SCREEN This field has to be always “X” because we are executing this transaction from outside
SAP. It can be left blank to see the screens when we are executing the BDC within the
SAP system.
MODE_VAL There are three modes. Always use “N” since we are executing the call from outside
SAP.
A Display all screens
E Display errors
N Background processing
The BDC data is the key structure through which the data is passed to complete
the SAP transaction. So if you to pass through SAP screens 100 and 200 and fill
fields’ f1 to f7. The USING_TAB would look like
SAPSCREEN 100
X F1 10000
F2 20000
F3 30000
F4 4000
F5 59
SAPSCREEN 200
X F6 6000000
F7 70000000
Output Parameters:
MESS_TAB gives the output of the BDC. Usually the last line of this sequence
would give the PO Number details.
Variable Specification
The adapter can specify variables:
• In the project during configuration using TIBCO Designer
• In a properties file
Properties file values overwrite values set in the project.
The project panel is updated to display all currently defined global variables.
You now have these choices:
— To assign or change a variable value, select that region and triple-click the
variable. The variable expands so you can change either the variable name
or the variable value. Press Enter when you’re done.
— To add a new global variable group, click the leftmost icon. Specify the
name of the group, then press Enter. With the group icon selected, you can
click the abc icon to add variables to the group.
— To add a global variable, click the abc icon. A new global variable item is
added to the bottom of the list. Supply the variable name and, optionally,
the value. Press Enter when you’re done.
Variable Description
Deployment Defaults to the TIBCO Designer project name. This value
can be any string value. This global variable is used by the
system to partially define the subject name defined for a
service.
Variable Description
DirTrace Specifies the path name for log file used by the adapter.
The default is the root installation directory.
Variable Description
RvaHost Computer on which the TIBCO Rendezvous agent runs.
This variable is only relevant if you are using the TIBCO
Rendezvous Agent (rva) instead of the TIBCO
Rendezvous daemon, and if you have configured a
non-default setup. See TIBCO Rendezvous Administration
for details about specifying the rva parameters.
RvaPort TCP port where the TIBCO Rendezvous agent (rva) listens
for client connection requests. See TIBCO Rendezvous
Administration for details about specifying the rva
parameters. Defaults to 7501.
AppServer The network name of the SAP R/3 application server host
machine.
CodePage SAP R/3 application server code page. Set this to view
IDoc/RFC /BAPI schema descriptions in non LATIN-1
character sets in TIBCO Designer.
Variable Description
ProgramID Valid existing program ID that identifies the RFC Server
program for the SAP R/3 system.
UserName Valid user name to log into the SAP R/3 client specified.
This chapter describes Unicode and how to apply it using TIBCO Adapter for
R/3.
Topics
The adapter provides multi-lingual support for simple single-byte and multi-byte
installations of SAP R/3.
Complete the following steps prior to running the adapter so that it can handle
messages in different encodings.
1. Configure inter-communication encoding
The wire format encoding used for communication between adapters and
TIBCO applications is determined by the encoding property set in the project.
The adapter configuration can be saved in a local or repository server-based
project.
— If the adapter configuration is saved in a TIBCO Administrator based
project, inter-communication encoding is determined by repo.encoding
property in the tibcoadmin.tra file. Every adapter configuration that uses
the repository server for storing and retrieving configuration data from a
project uses this encoding setting when communicating. This assures that
all TIBCO components that use the same repository also use the same
encoding value to communicate. The repo.encoding property value can
be ISO8859-1 (the default) or UTF-8. If English or other ISO8859-1 language
data is transmitted between adapters, ISO8859-1 should be used, otherwise
UTF-8 must be used.
— If an adapter configuration is saved in a local project, the
inter-communication encoding is determined by the encoding property of
the local project file. To communicate with other TIBCO components using
the same encoding, the local project file encoding property setting for all
TIBCO components must be identical. Use the Repository Finder in TIBCO
Designer to set the encoding property for a local project. The default
encoding is ISO8859-1.
When a local project is later promoted to a repository server-based project, the
encoding property set in the project file is superseded by the server's encoding
property.
The encoding property discussed above is the encoding used by the
communication between adapters and applications, not the encoding used for
the persistent storage of the project files. Project files are always saved using
UTF-8.
2. Ensure availability of required locales on the system.
The adapter uses the system conversion routines to handle
Multibyte-to-Unicode (Outbound) and Unicode-to-Multibyte (Inbound)
conversions. The necessary codepages for effecting these conversions have to
be installed on the system where the adapter runs.
Make sure that the appropriate locales exist and are valid on your operating
system. To verify, do the following.
Microsoft Windows (NT,2000 and XP): Verify registry entries under
\\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Nls\Codepage
All string values associated to this registry pertain to code pages valid on your
system.
3. Configure the adapter for the appropriate locale. To specify the locale for the
adapter configuration, navigate to the General tab, and enter the locale in the
textbox provided. For details, see General Tab on page 125.
In the figure below, the adapter is configured for processing Shift-JIS
character data.
The setting maybe overridden from the adapter properties file by setting the
adr3.locale parameter.
Example: adr3.locale=Polish_Poland.1250
The locale string is of the form "Language_Country.<NLS CodePage number>"
In order for the above to be set correctly, an Input Locale for Japanese must exist
on the operating system and the code page file c_932.nls must exist under the
\winnt\system32 directory.
To view the possible set of input locales, refer to the Regional Setting Properties
available from the Control Panel.
See Encoding/Locale Table on page 283 for a list of input locale values.
If you pass a code page value that is not supported by the operating system, an
error will be raised and the adapter immediately exits.
Complete the following steps prior to running the adapter so it can handle
messages in different encodings.
1. Configure inter-communication encoding
The wire format encoding used for communication between adapters and
TIBCO applications is determined by the encoding property set in the project.
The adapter configuration can be saved in a local or repository server-based
project.
— If the adapter configuration is saved in a TIBCO Administrator based
project, inter-communication encoding is determined by repo.encoding
property in the tibcoadmin.tra file. Every TIBCO Adapter for R/3
configuration that uses the repository server for storing and retrieving
configuration data from a project uses this encoding setting when
communicating. This assures that all TIBCO components that use the same
repository also use the same encoding value to communicate. The
repo.encoding property value can be ISO8859-1 (the default) or UTF-8. If
English or other ISO8859-1 language data is transmitted between adapters,
ISO8859-1 should be used. Otherwise use UTF-8.
— If an adapter configuration is saved in a local project, the
inter-communication encoding is determined by the encoding property of
the local project file. To communicate with other TIBCO components using
the same encoding, the local project file encoding property setting for all
TIBCO components must be identical. Use the Repository Finder in TIBCO
Designer to set the encoding property for a local project. The default
encoding is ISO8859-1.
When a local project is later promoted to a repository server-based project, the
encoding property set in the project file is superseded by the server's encoding
property. The encoding property discussed above is the encoding used by the
communication between adapters and applications, not the encoding used for
the persistent storage of the project files. Project files are always saved using
UTF-8.
2. Select the appropriate locale encoding
On Unix platforms, the adapter uses the underlying TIBCO Adapter SDK
conversion routines to handle Multibyte-to-Unicode (Outbound) and
Unicode-to-Multibyte (Inbound) conversions. The necessary code point
values are available in the tibicudata.dat file available in <TRA-install
dir.>/bin.
Refer to the TIBCO Adapter Concepts book for details of the encoding to be set
in the adapter.
3. Specify the encoding for the adapter configuration
Configure the adapter for the appropriate encoding. To specify the encoding
for the adapter configuration, navigate to the General tab, and choose an
encoding from the dropdown. See General Tab on page 125 for details.
In the figure below, the adapter is configured for processing Shift-JIS
character data, Shift-JIS(932).
The setting maybe overridden from the adapter properties file by setting the
adr3.encoding parameter. Example: adr3.locale=ibm-943. Refer to
Encoding/Locale Table on page 283 for possible values.
The adapter does not perform any validation for the encoding value upon
startup. Appropriate errors are thrown at run-time incase of conversion
errors.
In Unicode mode the adapter performs conversion for text data to and from SAP
MBCS strings and Unicode Wide character strings. The conversion is
straightforward when target or source SAP R/3 system code pages are single
byte; for example ISO-LATIN-1. Under this configuration, nothing more is
required at the SAP R/3 application server side.
Single Code Page SAP R/3 System SAP R/3 System Single Code Page
or Blended Code or Blended Code
Page Page
BAPI IDOC BAPI IDOC
TIBCO Environment
1. The SAP R/3 System makes an outbound RFC call on the outbound adapter.
The following SAP/ABAP types are sent as character data: TYPC, DATS, TIME,
NUMC.
2. After obtaining text data, the adapter converts the multi-byte string into a
wide character string (Unicode 2.0).
On Windows platforms, the adapter uses the standard C library function
mbstowcs() for conversion. This conversion is dependent on the operating
system and the locale passed to the adapter. If the SAP R/3 system code page
is one of the blended types, the mbstowcs() function uses the functions
defined in the conversion shared libraries for handling multi-byte characters.
The standard C library conversion functions are defined with entry points that
allow them to use custom defined functions in the conversion libraries.
On UNIX platforms, the TIBCO Adapter SDK routines perform the necessary
conversions based on the adapter encoding value configured for the adapter.
3. The TIBCO Adapter SDK libraries then serialize the message in UTF-8
encoding before passing it to the TIBCO environment.
This chapter explains deploying and starting the adapter using TIBCO
Administrator Enterprise Edition web interface. See the TIBCO Administrator
documentation set for details about using Enterprise Edition.
Topics
Overview
Enterprise Repository
Feature
Edition Edition
tomcat web server Yes Yes
The modules are optional. That is, Repository Edition can be installed with or
without the User Management module. The User Management module is
required to set security options for adapter projects.
Generate an Enterprise Archive file (EAR) that contains information about the
adapter services to deploy.
The EAR file contains information on what you wish to deploy. This could be one
or more adapters, one or more TIBCO BusinessWorks process engines, or both.
Building an archive creates the EAR file, which you can then deploy from TIBCO
Administrator. If you make changes to the business processes or adapter services
included in the archive, you need to rebuild the archive. Saving the project does
not affect the archive.
See Also
See the TIBCO Designer User’s Guide for more information about this procedure.
The guide is available from the Designer Help menu.
Before deploying a project, the machine on which the adapter is installed must be
part of a TIBCO administration domain. After you have installed the TIBCO
Administration Server, any machine on which you install TIBCO Runtime Agent
(required by an adapter) can be added to the administration domain. The TIBCO
software installed on the machine is then visible and accessible via the TIBCO
Administrator GUI.
When you deploy a project, startup scripts and other information about the
different components are sent to the machines to which the components were
assigned. The project data store and TIBCO Administration Server are updated
with the deployed components.
To deploy a project:
1. Import the EAR file into TIBCO Administrator Enterprise Edition.
2. Assign adapter archives in the EAR file to adapters installed in the
administration domain and likewise assign process archives to process
engines.
3. Specify startup options for each adapter service.
4. If desired, set up your deployment for fault tolerance by specifying more than
one adapter instance to run on different machines. The secondary instances
will run in standby mode until they are needed.
Password Handling
At design-time, the adapter uses a password to connect to the backend
application and fetch metadata. At run-time, the adapter uses a password to
connect to the back-end application and interoperate with it. If you create a 4.x
configuration using TIBCO Designer 5.1, and use the configuration against a 4.x
adapter version, some special considerations are required for security.
When deploying the adapter check the Service property of the global variable in
the global variables section, then go to the Advanced tab of the adapter archive
and set the password value under the Run-Time Variables section.
Do not set the password to type Password in the global variables section for
adapter configurations that are set to AE Version 4.0 or AE Version 5.0 (in the
Configuration tab Version field) or any intermediate version.
See Also
See the TIBCO Administrator User’s Guide for an introduction to the TIBCO
administration domain and detailed information about the above steps.
See the TIBCO Administrator Server Configuration Guide for fault tolerance
information.
2. Choose the TID Manager entry as the target application while deploying the
EAR file created with the 4.x TID Manager. For details on creating an EAR file,
see Create an EAR File in TIBCO Designer on page 289.
See Also
See the TIBCO Administrator User’s Guide for more information.
See Also
See the TIBCO Administrator User’s Guide for information about configuring the
above monitoring options.
This chapter explains how to deploy an adapter, then start and stop it on the
command line. Repository Edition is used to manage adapter projects.
Topics
Overview
If your adapter is not used in a TIBCO BusinessWorks process, you can use
TIBCO Administrator Repository Edition to manage adapter projects.
If your adapter is used in a TIBCO BusinessWorks project, you must use TIBCO
Administrator Enterprise Edition to deploy and manage your projects. See
Chapter 8, Deploying and Starting an Adapter Using TIBCO Administrator
Enterprise Edition, on page 287 for details.
See Overview on page 288 for a description of features available in both
Enterprise Edition and Repository Edition.
In TIBCO Designer, after configuring, verifying and testing your project, export
the project to a server repository.
1. Click Project>Export Full Project.
2. Click the Server Repository tab in Export Project.
See Also
See the TIBCO Designer User’s Guide for details about the required fields. The
guide is available from the Designer Help menu.
Before starting the adapter you must create a properties file or edit the default
properties file. Each run-time adapter instance must have a unique properties file.
The easiest way to deploy an adapter is to copy the default adr3.tra file to a
unique name and edit the properties defined in the file.
To create a properties file:
1. Navigate to the adapter installation area:
cd <install-path>\tibco\adapter\adr3\5.1\bin
2. Copy the default adr3.tra file to a unique name.
Edit the predefined properties in the copied file as explained in Set Properties in
Properties File on page 299.
tibco.repourl tibcr://<project-name>
tibco.configurl /tibco/private/adapter/<adapter-instance-name>
application.args adr3 -system:propFile C:/tibco/adapter/adr3/5.1/bin/<name>.tra
application.start.dir C:/tibco/adapter/adr3/5.1/<start_directory>
See Also
Adapter Properties File on page 306
You must have installed TIBCO Administrator Repository Edition with the User
Management module to assign security options. Setting security options is not
required, but recommended.
The User Management module allows authorized users to specify security
options for a TIBCO administration domain. Security has two components:
• Authentication. Specify users and passwords.
• Authorization. Give users access to individual components in the TIBCO
administration domain.
By default, the administrative user for the administration domain has privileges
to create users and assign privileges. That user can create additional users with
the same full access privileges if appropriate.
Roles
TIBCO Administrator allows you to create a roles tree and assign users to one or
more roles. You can then perform authorization on a per-role basis.
This capability is critical, for example, if a large number of users need read access
to information about running projects but only a few users should be authorized
to start and stop the project.
Authorization
TIBCO Administrator allows privileged users to authorize users for GUI Access
or Data Access (or both).
• GUI access is given on a per-tab basis. For each tab you can select in the
TIBCO Administrator GUI, you can specify which users are allowed read or
write privileges.
• Data access is given on a per-data store basis. A repository data store is
associated with each project. You can set various levels of access (read, write,
variables) for data stores of each deployed project and for the system data
store.
See Also
See the TIBCO Administrator User’s Guide for details about creating roles and
authorizations.
Note that the shell script updates the system settings for the current shell session
only. If you open a new shell session, run the script afresh to update system
settings.
The following example illustrates the procedure to start the adapter from the
command line:
1. Create an adapter configuration in TIBCO Designer and save it to a project
2. Copy the adr3.tra file to MyAdapter.tra
3. Update tibco.repourl and tibco.configurl parameters in
MyAdapter.tra
You can run the adapter as a console application using a custom properties file.
For example, the next command starts the adapter service that is identified in the
adr3pub.tra properties file, which is located in the same directory as the
executable. The absolute pathname to the properties file must be given if it is
located in a different directory than the executable.
adr3 --run --propFile adr3pub.tra
See Adapter Properties File on page 306 for information about modifying the
properties file.
Option Description
--run --propFile <fileName> Launches the adapter using the specified properties file.
This is the default option, if no options are specified on
the command line.
Option Description
--uninstall --propFile <fileName> Microsoft Windows Only. Uninstalls the Windows
Service associated with the adapter.
If propFile is not given, the property file prefix name
must have the same name as the adapter executable
prefix name.
--start --propFile <fileName> Microsoft Windows Only. Start the Windows Service
using the specified properties file.
If propFile is not given, the property file prefix name
must have the same name as the adapter executable
prefix name.
--stop --propFile <fileName> Microsoft Windows Only. Stops the Windows Service
using the specified properties file.
If propFile is not given, the property file prefix name
must have the same name as the adapter executable
prefix name.
The standard command line options used in the TIBCO ActiveEnterprise 3.x are
still valid.
The properties file name for all command line options defaults to the same name
as the executable with the .tra extension (for example, for adr3.exe, the
properties file is named adr3.tra). The default location of the properties file is
the same directory as the executable.
If the properties file is not in the default location with the default name, you must
explicitly specify the absolute pathname of the properties file on the command
line. If the properties file is in the default location with the default name, you can
omit the properties file from the command line.
Once the adapter receives the ’now’ message on the stop subject, it will
complete any pending transactions, cleanup resources, and then terminate.
• Start TIBCO Hawk. Invoke the stopApplicationInstance() method for the
adapter configuration. Check for the trace message in the adapter console.
If you have installed TIBCO Hawk, you can use the methods defined in the
adapter’s standard and custom microagents to monitor it.
See Also
For details about monitoring, see Chapter 11, Monitoring the Adapter Using
TIBCO Hawk, on page 359.
The run-time adapters parse a properties file at startup. The default run-time
adapter properties file is named adr3.tra.
The default properties file is located in bin subdirectory of the adapter
installation directory.
Each line in a properties file is a single property. Each property consists of a key
and a value. The key starts with the first non-whitespace character and ends at the
first "=" or ":" or whitespace character. The value starts at the first character after
the equal sign (=). For example:
tibco.configurl=/tibco/private/adapter/R3AdapterConfiguration
tibco.repourl=tibcr://TEST_PROJECT
adr3.maxconnections=admin
tibco.clientVar.service=7600
tibco.clientVar.daemon=tcp:7600
Properties defined in the properties file override the same properties defined in
the project.
Predefined Properties
The next table describes predefined properties. Properties that start with
ntservice are available only on Microsoft Windows platforms.
All paths inside a properties file, including Windows directory names, must use
forward slashes.
Property Description
tibco.repourl Identifies the absolute pathname to the Designer project where the
adapter configuration is defined. See Server Repository URL on
page 311 for information about the locator string.
tibco.configurl Specifies the location of the adapter configuration inside the project
file.
• If a relative path is specified, the adapter service is assumed to be
under the default area in the project: /tibco/private/adapter/
• If an absolute path is specified, the adapter configuration is looked
up in the project as defined by the argument.
tibco.username The user name and password used by the repository server to access
the project.
tibco.password
adr3.perfMon <on/off> Turns the performance statistics microagent on or off. The default is
off. If this property is set to on, the adapter does all the performance
related calculations. When you invoke the TIBCO Hawk methods, if
this property is set to off, default values are displayed and not the
valid values.
adr3.addCustomHawkMet If set to on, custom methods are added to the class microagent. If set to
hodstoClassMAgent
off, the invocation of these custom methods will return default values.
<on/off>
Default is on.
Property Description
ntservice.name Name for this Windows Service.
This property is useful if you wish to have multiple Windows Services
for the same executable. That is, you may wish to have two adapters
running on the same machine. By specifying different service names
and display names for the adapters, you can accomplish this.
ntservice.displayname Name to display in the Services control for this Windows Service.
This property is useful if you wish to have multiple Windows Services
for the same executable. That is, you may wish to have two adapters
running on the same machine. By specifying different service names
and display names for the adapters, you can accomplish this.
ntservice.starttype Start type for this Windows Service. Either manual or automatic. For
example:
ntservice.starttype automatic
You can use this property to initially set the start type for the service,
but once the service is installed, use the Windows Services control to
change the start type of services.
ntservice.binary.path Absolute path to the executable that is run when the service is started.
.absolute
For example:
ntservice.binary.path.absolute
C:/tibco/adapter/adr3/5.1/bin/adr3.exe
adr3.Hawk500 This parameter is for backward compatibility with 4.x for loading the
TIBCO Hawk Microagent methods. By default this parameter is set to
on. While running the 4.x configuration ensure that this is set to off.
Property Description
adr3.maxconnections Specifies the maximum number of server/client connections to be
established with R/3. It is recommended to set this only when
maxConnections is greater than one and when you have to override
the value of maxConnections specified in the project.
adr3.setlocale Specifies the locale encoding for the adapter instance, to be used with
UTF-8 encoded projects
Password Handling
At design-time, the adapter uses a password to connect to the backend
application and fetch metadata. At run-time, the adapter uses a password to
connect to the back-end application and interoperate with it. If you create a 4.x
configuration using TIBCO Designer 5.1, and use the configuration against a 4.x
adapter version, some special considerations are required for security.
If you plan to run the adapter locally, define the run-time password value to be a
global variable. Before starting the adapter, include the run-time password as
client variable in the adapter’s .tra file and obfuscate it using obfuscate tool. For
example, if the password value is defined as %%myPassword%%, create a global
variable named myPassword in the global variables section with no value and
include the following entry in the adapter’s .tra file:
tibco.clientVar.myPassword
Do not set the password to type Password in the global variables section for
adapter configurations that are set to AE Version 4.0 or AE Version 5.0 (in the
Configuration tab Version field) or any intermediate version.
Obfuscating a Password
If the run-time adapter uses a password to access the vendor application, the
password is stored in readable form as a value to the
tibco.clientVar.<variable>=# <password> property in the run-time adapter’s
properties file. You can use the obfuscate tool to hide the password in the
properties file so the password cannot be viewed by unauthorized users.
To obfuscate the password:
1. Using TIBCO Designer, open the adapter configuration and navigate to the
panel where the password used by the run-time adapter to connect to SAP
R/3 is defined. In the password field, provide a user defined global variable,
such as %%MyPassword%%. The global variable must also be added to the
global variable list. See Using Global Variables on page 272 for information
about creating global variables.
2. In the run-time adapter properties file, verify that the
tibco.clientVar.<variable>=# <password> property is defined in the file.
3. Run the obfuscation tool supplied with adapter software against the
properties file. This tool is named obfuscate.exe and resides in the
<install_dir>\tibco\tra\<n.n>\bin directory.
The command syntax on Windows for a default installation is:
C:\tibco\tra\5.1\bin\obfuscate <tra-file-path-name>
where <tra-file-path-name> is the absolute pathname of the adapter properties
file that contains the tibco.clientVar.<variable>=# <password> property.
For example, on Windows:
C:\tibco\tra\5.1\bin>obfuscate
C:\tibco\adapter\adr3\5.1\bin\
adr3.tra
The password is now obfuscated and you can start the adapter with the
changed properties file.
If you don’t want to obfuscate a password, remove the # at the beginning of the
obfuscated password and replace it with the password in plain text.
Encrypting a Password
Encryption is only supported for version 5 adapters and higher. If you have a
property in a properties file that needs to be encrypted, follow these steps:
1. In the property file, add the #! characters in front of the value you wish to
encrypt. For example:
Repo.serverPassword = #!mysecret
2. Invoke the obfuscate utility from the command line:
<install-path>/tibco/tra/5.1/bin/obfuscate.exe
--propertyfile=<property-file-name>
The next time you open the property file, mysecret will have been replaced
with a random sequence of characters.
The server repository URL identifies the project to load when the adapter starts.
The string is given as a value to the tibco.repourl property, which is specified
in the adapter’s properties file.
The property syntax differs depending on the protocol with which the adapter
and repository server communicate.
• TIBCO Rendezvous
• HTTP and HTTPS
TIBCO Rendezvous
In case of a TIBCO Rendezvous transport, the locator string begins with tibcr://
or tibcr@. Next comes the project name.
In addition, the following optional properties are supported. They are separated
by colons:
Property Description
daemon TIBCO Rendezvous rvd daemon value
userName Any identifier (null or empty implies read only with guest
privileges)
Property Description
regionalSubject TIBCO Rendezvous subject prefix used for regional
read-operation in the load balancing mode. For additional
information see the TIBCO Administrator Server
Configuration Guide.
Examples
tibcr://myInst:service=5456:userName=ann:timeout=4000
tibcr@myInst:service=5456:urlFile=/tibco/props/fredsProps.txt
tibcr://myInst:urlFile=/tibco/props/fredsProps.txt
The host name and port number are followed by the project name, which is
preceded by a question mark (?), for example, http://host:8080/?inst1
Optionally, administrator/repo may be included as part of the instance name,
for example, http://host:8080/administrator/repo/?inst1
HTTPS-specific properties should be placed in a property file and that file should
be specified using "urlFile=". urlFile is therefore a required property for HTTPS.
Property Description
timeout Timeout value in seconds for server requests.
userName Any identifier (null or empty implies read only with guest
privileges).
Property Description
urlFile Path to the adapter’s properties file.
The property file identifier can either be a fully qualified
path or a relative path. The legal properties in this file are
the same as optional properties specified above. The
properties in the file are appended to the repository locator
string. If the same property appears in both locator string
and property file, the properties in the locator string take
precedence. Property values starting with # are considered
obfuscated. See Defining a urlFile to be Accessed via HTTPS
on page 314.
Examples
http://host:8080?myInst&userName=ann&timeout=4000
http://host:8080/administrator/repo?myInst&userName=ann&timeout=4000
https://host:8443?myInst&urlFile=httpsProps.ini
https://host:8443/administrator/repo?myInst&urlFile=httpsProps.ini
https://host:8443/administrator/repo?urlFile=httpsProps.ini
Property Description
trustedCertFormat Format of the SSL certificate. Can be one of P12,
PEM, DER (or ANS1).
Property Description
identityFile Location of the identity file.
Examples
Following is an example for a url File containing HTTPS specific properties:
httpsVendor=j2se
trustedCerts=H:/downloads/certs/clientcerts/trustedcerts/RSA/PEM/R
SA1024ca1.cert.PEM
trustedCertFormat=PEM
trustedCertPassword=RSA1024ca1
identityFile=H:/downloads/certs/clientcerts/idcert/RSA/P12/RSA1024
ca2.cert.P12
identityType=P12
keyPassword=RSA1024ca2
egdSocket=/etc/egd-pool
Local repositories start with the instance name, which can optionally be preceded
by localrepo@. The project name can either be a fully qualified path or a relative
path. The .dat extension is optional.
In addition, adapters support the following optional properties separated by
colons:
Parameter Description
userName Any identifier (if not present or empty makes a read-only client)
Adapter reads until update, then switches to write. This is the default.
• CLIENT_USAGE_READ_ONLY
Adapter is allowed to overwrite this local repository even if a lock file exists,
as long as it’s the same user.
• CLIENT_USAGE_FORCE_INSTANCE_LOCK
• Adapter is allowed to overwrite this local repository even if a lock file exists.
WARNING: Using this option may result in other users overwriting your
project.
See the TIBCO Administrator Server Configuration Guide for additional information.
Examples
./instances/myInst.dat:userName=deborah
c:/tibco/administrator/myInst/myInst.dat:urlFile=c:/tibco/administrator/props/deb
myProj.dat
myProj
myProj/myrepo.dat
The following command lines show how to install the adapter as a service, start
the service, stop the service, then uninstall the service. Because no properties file
is specified, the default properties file, adr3.tra is used.
1. Install the adapter as a service:
adr3 --install
If the properties file is not in the default location with the default name, you must
explicitly specify the absolute pathname of the properties file on the command
line.
You can create multiple services for the same adapter configuration by specifying
a different Service Name and Display Name for each. This may be required for
load balancing, if the subscriber quality of service is set to Distributed Queue.
Each adapter configuration must have a unique properties file and it must be
specified on the command line. In addition, each property file should have a
unique value for the following Service Name and Display Name properties:
ntservice.name
ntservice.displayname
For example, the following command line lines show how to install the adapter as
a service, start the service, stop the service, then uninstall the service using the
adr3test.tra property file. The same commands can be used to install another
adapter on the same machine, providing a different properties file is given.
5. Install the adapter as a service:
adr3 --install --propFile adr3test.tra
All paths inside a properties file, including Windows directory names, must use
forward slashes.
For details on the properties file, refer to Predefined Properties on page 307.
Once the TIDmanager receives the ’now’ message on the stop subject, it will
complete any pending transactions, cleanup resources, and then terminate.
• Run the TIBCO Hawk method, stopApplicationInstance() associated with
the TIDManager TIBCO Hawk microagent.
This chapter covers advanced features offered by TIBCO Adapter for R/3.
Topics
When the project is saved and a revision control system has been specified, the
adapter displays a warning that additional files were created and should be
added to the revision control system. This warning appears only when the files
are created for the first time. The warning displays a Go To Resource button that
helps in navigating to the resource. You should use the Multi-User>Add
Resources to RCS menu command to add these files to the revision control
system.
For information about how to use the Multi-User feature in TIBCO Designer, refer
to the TIBCO Designer User’s Guide.
Enabling Data-Chunking
To enable data-chunking, you must set appropriate attributes in the closure
argument in the userClosure attribute of the request class. The userClosure
class is a packet that is associated with the actual application request from the
client and defines the nature of the actual request to the adapter.
The adapter provides a userClosure class, RFCCLOSURE. This class contains
attributes for defining data-chunking requests.
The RFCCLOSURE class is included by default in every Repository project
containing a TIBCO Adapter for R/3 configuration and is available under
/classes/ae/SAPAdapter40/classes in the Repository Project.
The following table lists the input and output parameters for the RFCCLOSURE
class. The input parameters should be set by the client and the output parameters
are returned to the client based on which the client takes necessary action.
Table 22 Input Parameters - To be set by the client for every data-chunking request
packetSize The number of records the adapter should send An integer number
back to the client in the reply. If multiple tables
are returned from the SAP R/3 system with
different number of records, then every table in
the reply will contain those many rows specified
by the packetSize. If the number of remaining
rows is less than the packetSize for a table, that
table returns all the remaining rows.
If there are multiple tables in the reply and if all
the records for a table have been sent, the next
invocation would not contain any records for
that table.
Table 23 Output Parameters returned by the adapter to the client for each chunking request
Name Description
bMore Indicates the status of the cache. If there are more chunks to be return to the
client from the adapter cache, this returns true else false. The client can take
necessary action based on this flag.
CurrentRowCount Maintains the current count of the rows returned to the client in a cache. For
example, if there are 1000 records totally and packetSize is 100, and the
adapter returns records 801-900 in the course of the chunking requests,
currentRowCount is set to 900. In case records from multiple tables are
returned, this attribute always indicates the row count of the table with the
maximum records.
maxRowCount Maintains the total size of the cache in terms of records. For example, if
there are 1000 records totally, maxRowCount is always set to 1000. In case
records from multiple tables are returned, this attribute always indicates the
size of the table with the maximum records.
Also, note the following while enabling the client to make use of the
data-chunking feature:
— Since browsing in the negative direction is possible at anytime during a
chunking call sequence, the adapter does not automatically clear the cache
after sending back all retrieved records. The cache is automatically cleared
only if the cacheDirection attribute is never set.
— The client has to explicitly clear the cache by setting the bClearCache
attribute to true. A separate cache-clearing request has to be made for the
same RFC/BAPI for which caching is enabled. The GUID associated with
the cache should also be set to identify the cache to be cleared.
If the cache is not cleared, the adapter memory usage will go up with each
caching call.
IDoc Filtering
section, the segment E1MARCM and its children segments are being filtered. The
second screen shows field-level filtering in the segment E1MAKTM.
— To filter an entire IDoc segment and its children segments, select the check
box against that segment. The children segments are automatically filtered
at run-time.
Segments that are defined as mandatory in the SAP R/3 system are not filtered
even if the check boxes against these segments are selected.
The steps for configuring a BAPI Request-Response service for explicit commit
are given below:
1. Go to the Advanced tab of the BAPI Request-Response service and select the
Commit Required check box, as shown in figure below.
2. Set the CommitExpiry value. This field defines the maximum time, in
milliseconds, for the adapter to hold the transaction context for each
invocation of the BAPI. It starts from the moment the BAPI invocation in SAP
R/3 is complete. Upon expiry of this time-interval, the transaction context for
an invocation is released. A Commit/rollback request for this invocation sent
to the adapter after commitExpiry will not be executed in the SAP R/3 system.
BAPI Task
BAPI_TRANSACTION_COMMIT • Ends current transaction
• Commits changes
• Initiates new transaction
If BAPI Commit is being used with multithreading feature of the adapter, then it
is recommended that you use a separate session for servicing the BAPI Commit
request.
Sample Scenario
Assume a scenario where a sales order is to be created. Depending on the result
the sales order will either be committed or rolled back using the appropriate
external BAPI. When the sales order creation BAPI is sent to the adapter with the
Commit Required flag enabled, the adapter instance generates a session ID,
which is passed in the user closure (RFCclosure) argument of the reply schema.
This session ID needs to be mapped to the request event of
BAPI_TRANSACTION_COMMIT or BAPI_TRANSACTION_ROLLBACK and sent to the
SAP R/3 system.
Procedure
1. Configure an inbound adapter instance.
2. Download the RFC, which requires commit or rollback. For example,
BAPI_SALESORDER_CREATE_FROM_DAT2. See Adding Adapter Services
Automatically on page 145 for details.
3. Check the Commit Required parameter and the Commit Expiry parameter
for the downloaded RFC as shown in the following example. See Advanced
Tab on page 188 for details.
BAPIs and RFCs can be invoked using transactional semantics in the SAP R/3
system.
The transactional semantics in SAP R/3 ensures data consistency and
exactly-once execution, in case of exception situations (network outages or system
failures) in SAP R/3 while the call is being executed.
Transactional RFCs (tRFCs) are always executed as one-way invocations and are
best suited for transferring transactional data into the SAP R/3 in real-time. To
execute a BAPI/RFC in a transactional mode, the BAPI/RFC has to be
downloaded and saved to the adapter configuration as a one-way operation.
Any one-way Request-Response service can be executed as a tRFC in R/3. To
execute a one-way BAPI/RFC as a tRFC, each invocation of the BAPI/RFC
should be accompanied by userClosure information, as defined in the class
RFCCLOSURE under /tibco/public/classes/ae/SAPAdapter40/RFCCLOSURE.
The parameters that need to be set in the RFCCLOSURE class and sent along with
each tRFC request are:
• bTransactional — This boolean variable determines whether the call must
be invoked transactionally or not in SAP R/3. Set this to true for a tRFC
invocation.
• TID — Each tRFC invocation has to be carried out with a globally unique
transaction identifier (TID) that uniquely identifies each tRFC invocation.
Based on this parameter SAP internally ensures exactly-once invocation for
the transaction associated with this TID. The sending system is responsible for
generating and setting this parameter for each tRFC call.
Ensure that the TID parameter is a non-null unique identifier for each tRFC
invocation.
Inbound qRFC
Any tRFC can be invoked as a qRFC in the inbound adapter. No design-time
configuration is required. All parameters necessary to invoke a tRFC as a qRFC
can be provided at run-time as part of the RFCCLOSURE class discussed in the
previous section.
The qRFC parameters that have to be set in the RFCCLOSURE for performing a
qRFC invocation in the SAP R/3 system are discussed below:
• bQueue
This boolean variable determines whether the call must be invoked as a qRFC or
not in SAP R/3. Set this to true for a qRFC invocation. This value is applicable
only if the bTransactional attribute is also set to true.
• qName
Every qRFC invocation is made in the SAP R/3 system for a specific queue
defined in the system. Set this field to indicate which queue the qRFC call is to be
inserted into.
• qCount
This is the counter for the receiving queue in the SAP R/3 system. Specify unique
integer values for each qRFC invocation inserting into a specific queue.
Outbound qRFC
Outbound qRFC calls can be invoked in the adapter from the SAP R/3 system.
The adapter extracts the queue parameters for each qRFC invocation from the
SAP R/3 system and appends them in the request’s RFCCLOSURE class that is
passed on to the TIBCO environment.
The queue-name and queue-count values are extracted from the SAP R/3 system
for each qRFC invocation. They are set to the qName and qCount attributes of the
RFCCLOSURE class respectively. The attribute bQueue is set to true.
Multithreading
tRFC invocations (including IDocs) from SAP R/3 are handled sequentially by the
underlying R/3 interface library. Hence all transactional RFCs are sequenced by
the adapter as well. Consequently, multiple threads will not contribute to
enhanced performance of tRFC Request-Response Invocation services and IDoc
Publication services in the adapter.
By default, every additional thread created is assigned a stacksize of 1.25MB. To
avoid stack overflows at runtime, ensure that this stack limit is sufficient for the
largest message that you would expect by sending out a single message of this
size to the adapter.
The stack size for an adapter configuration can be increased by specifying it as a
parameter from the command-line during startup or in the adapter TRA file.
For example, to set the stacksize to 2MB, specify the following parameter in the
TRA file, adr3.stacksize 2097152 or provide the following command line
argument while starting up
adr3 -system:repourl C:/Repositories/StackTest.dat
-system:configurl
/tibco/private/adapter/SAPAdapter40/R3AdapterConfiguration
-system:stacksize 2097152
Multiple Connections
The adapter can connect to multiple gateways/program IDs on the outbound side
and multiple application servers on the inbound side.
These parameters together define the behavior of the outbound adapter in the
event of connection loss to a gateway. Connection loss could be due to
network glitches or because of a planned shutdown. Because the adapter
cannot distinguish between the two causes, it will behave in exactly the same
way in both situations.
If an application server has been brought down because of a planned
shutdown, it will still continue to establish a valid connection till all attempts
are exhausted.
Example:
adr3.discovery.maxattempts=10
adr3.discovery.retryinterval=30000
Do not open this configuration in TIBCO Designer. All parameters that may need
to be customized are exposed in the launcher file, adr3Discoverer.tra.
Bring up the discovery-agent with the following command from command line
adr3 --propFile adr3Discoverer.tra
This feature allows users to dynamically establish connections to the SAP system
in an inbound adapter configuration. This feature provides flexibility to external
systems and the following advantages acrue:
• The inbound adapter need not be connected to the SAP R/3 system always, if
the RFC/BAPI Request-Response services or IDoc Subscription services
configured in the adapter are not invoked frequently.
• External systems can login with specific authorizations in SAP after
authentication and execute RFCs/BAPIs in SAP through the inbound adapter
with these authorizations.
Configuration
To enable this feature, instruct the adapter not to establish connections on startup
by browsing to R3Connections folder>ClientConnections folder for the
particular configuration and selecting the Startup Connectionless check box in
the Advanced tab for each of the configured Client connections.
When the explicit logon feature is in use, the adapter’s load balancing
functionalities, RVCMQ and multiple instances of the adapter cannot be used.
When configuring a Request-Response Service for an RFC, you can enable use of
event driven inbound connections by selecting the Logon Required check box in
the Advanced tab. See, Advanced Tab on page 188 for details. To obtain details of
the Logon class use the Schemas folder in the project panel. The path is as follows:
Schemas/Classes/ae/SAPAdapter40/classes
The following attributes are not supported for RFCs that require authentication:
• useSAPGUI
• abapDebug
• rfcTrace
To logon to the inbound adapter instance, appropriate attributes have to be set for
the Logon class in the Request, and the operation must be invoked with the
preconfigured subject.
If the logon operation is successful and a valid client connection to the SAP R/3
system is obtained through the inbound adapter instance, a Session ID is sent
back in the reply to the calling system. The reply contains the Session ID in its
RFCCLOSURE class. To obtain details of the RFCCLOSURE class use the Schemas
folder in the project panel. The path is as follows:
Schemas/Classes/ae/SAPAdapter40/classes
The external system invokes the RFC with this Session ID to be serviced by the
inbound adapter instance. By default, the external system can continue to use this
Session ID for all subsequent invocations of this RFC. When the session is no
longer required, the connection to the SAP R/3 system is closed by explicitly
logging off from the SAP R/3 system through the same inbound adapter instance.
To obtain details of the Logoff class use the Schemas folder in the project panel.
The path is as follows:
Schemas/Classes/ae/SAPAdapter40/classes
While the Logon-Required property for an RFC is at an RFC level and has to be
determined at design time, the termination of a session with bLogoutAfterCall
is at individual invocation level and can be determined at run-time by the
external system.
This section describes how to configure an adapter instance to run on two SAP
R/3 systems with a single connection.
Sample Scenario
Assume a sample scenario with two SAP systems, one named CER and the other,
LCM. Each has RFC destinations named RFCTEST with program id = RFCTEST
(sm59 transaction). Assume also that you have configured an adapter instance
(Outbound) to run on CER (for example). Refer to the following procedure to
configure the other system (LCM) so that it can use the same SAP R/3 adapter
instance.
Procedure
1. Log in to the second system, LCM, and invoke sm59 transaction.
2. Click on Find, and enter the name of your RFC Destination as shown in
Figure 15. (This example assumes the name RFCTEST.)
5. Enter the values for Gateway host and Gateway Service that corresponds to
the system against which the adapter is already running (recall in this
scenario, it is CER).
6. Fill the entries as shown in the next screen.
When assigning a specific gateway host to an RFC destination, you must ensure
that this gateway host is available at all times. Regardless of whether or not you
are able to make an RFC request from another host, if the specified gateway host
is unavailable, then the RFC request to the adapter will not be successful.
Now, you’re ready to run the adapter from the other system (LCM in our
scenario).
However, the disadvantage in this scenario is that if the SAP system’s CER is
down, the adapter instance cannot obtain messages from the other SAP system’s
LCM. In a scenario where one instance of the adapter can connect to multiple
program IDs of multiple SAP systems the problem does not arise.
This chapter explains how to use TIBCO Hawk microagents to monitor and
manage the adapter.
Topics
Overview
The TIBCO Hawk agent can be configured to start automatically during the
system boot cycle. See the TIBCO Hawk Installation and Configuration guide for
information about starting TIBCO Hawk.
The TIBCO Hawk Administrator’s Guide explains how to start the TIBCO Hawk
Display.
The guides are included in your TIBCO Hawk software installation area.
If the method accepts arguments, fields for each argument display in the
upper right panel. Detailed help text displays in the lower panel.
5. Specify any arguments for the method invocation.
6. Verify that the Invoke radio button is selected.
Click the Invoke button to invoke the selected method.
The Invocation Results dialog displays the results returned by the method.
7. Click Done to close the dialog.
These steps describe how to interactively invoke a microagent method and
receive a single set of results in TIBCO Hawk Display. You can also use a
microagent method as the data source of a TIBCO Hawk rule. Rules automatically
receive method results, apply tests to evaluate them, then take action if necessary.
For more information on building TIBCO Hawk rules and rule bases, see your
TIBCO Hawk Administrator’s Guide.
Available Microagents
Each adapter has three microagents, a standard TIBCO Hawk microagent named
COM.TIBCO.ADAPTER.xyz where xyz is the adapter configuration name, a custom
microagent and a class microagent. The microagents provide:
• Business level statistics—statistics that report the progress of the adapter as it
interacts with the vendor application. For example, in a database adapter such
statistics might indicate whether objects were successfully or unsuccessfully
inserted, updated, or deleted in the database.
• Queries that return information about the state of the adapter. This can be an
important tool for seeing the internals of an adapter and debugging it if
something appears wrong. For example, methods can return information
about threads, internal queues, or connections to the target system. Using
these methods, one might be able to identify certain bottlenecks or gauge how
successfully an adapter is scaling with respect to the current environment.
• Updates of the adapter runtime parameters. This includes retrieving the
current runtime parameters and setting new runtime parameters without
restarting the adapter. An example of this is getting and setting the polling
interval. Updating a runtime parameter through the Hawk microagent only
affects the setting of the instance that is running. It does not make a
permanent change of the setting in either the repository or the .tra file.
By default all microagents, custom, standard and class microagents are available
at runtime.
Custom microagents are deprecated in this release. All business statistics related
methods which were part of the custom microagent are now available in the class
microagent.
perfMon property value set in the adapter’s property file affects the business
statistics related methods. If this property is set to on, the adapter does all the
performance related calculations. When you invoke the methods, if the perfMon
property is set to off, default values are displayed and not the valid values.
You can disallow adding custom methods to the class microagent when
deploying the adapter by changing the addCustomHawkMethodstoClassMAgent
property value in the adapter’s property file. If this property is set to on, custom
methods are added to the class microagents. If set to off, these methods are not
visible. See Adapter Properties File on page 306 for more information.
The following table lists each method available for the adapter and page on which
the method is explained.
getConnectionStatistics() Returns the state and statistics for all the 379
current connections used by the adapter.
activateTraceRole()
Sink Name string Name of the sink for which to activate the role.
deactivateTraceRole()
Sink Name string Name of the sink for which to activate the role.
getActivityStatisticsByOperation(Operation)
Returns the total number of objects processed for all the schemas by each service
that is associated with a specified operation. Also, returns the number of success
and error objects.
Error string The number of objects that were identified for this
schema but were not published because the
header of the schema failed validation for the
publication service, or was written to a file
because the schema was not associated with the
subscriber for a subscription service.
getActivityStatisticsBySchema(SchemaName)
Returns the total number of objects processed for the given schema by each
service that uses the schema. Also, returns the number of success and error
objects.
Error string The number of objects that were identified for this
schema but were not published because the
header of the schema failed validation for the
publication service, or was written to a file
because the schema was not associated with the
subscriber for a subscription service.
getActivityStatisticsByService(ServiceName)
Returns the total number of objects processed for each of the schemas associated
with the specified service. Also, returns the number of success and error objects.
Schema Name string Name of the schema that is associated with the
service.
Error string The number of objects that were identified for this
schema but were not published because the
header of the schema failed validation for the
publication service, or was written to a file
because the schema was not associated with the
subscriber for a subscription service.
getAdapterServicesInformation()
Endpoint Name string Name of the endpoint used for this service.
getComponents()
Returns information about the currently active TIBCO Hawk components such as
publishers, subscribers, or timers.
Component Type string The name of the TIBCO Adapter SDK class for
this component, such as MPublisher,
MSubscriber, or MIODescriptorSource. For
more information about the class, see your
TIBCO Adapter SDK documentation.
getConfig()
getConfigProperties()
Returns all attributes and elements for the given repository object.
getConfiguredRFCs()
getConnectionStatistics()
Returns the state and statistics for all the current connections used by the adapter.
Connection Type string A type or key that will match this connection to
a thread or queue.
getHostInformation()
getPerfMonSetting()
Return the setting of the perfMon option. It returns the following information.
getQueueStatistics()
Return the current count of elements in any internal queue used by the adapter.
This includes the TIBCO Rendezvous event queues automatically spawned by
Rendezvous for each adapter.
getRvConfig()
Ledger File string Ledger file for this certified messaging session.
Returns the empty string for sessions that are
not certified messaging sessions.
getStatus()
New Errors integer Number of errors since the last call to this
method.
getThreadStatistics()
getTraceSinks()
Role Name string Name of the role for which you need information
for the specified sink or sinks. Default is all.
getVersion()
Retrieves version information for the current application. Two lines may be
returned, one for the TIBCO Adapter SDK, one for the adapter.
Returns Description
Instance ID The configuration ID as a string, for example SDK.
_onUnsolictedMsg()
Displays all alert messages sent from the adapter or an error if not successful.
preRegisterListener()
refreshABAPContext()
Parameters
None
Returns
None
resetActivityStatistics()
resetConnectionStatistics()
resetThreadStatistics()
reviewLedger()
Last Sent Message integer Sequence number of the most recently sent
message with this subject name.
setTraceSinks()
Role Name string Name of the role you want to add to this sink
(warning, error, debug, or user defined). Default
is all.
stopApplicationInstance()
Stops the specified adapter by calling the internal stop() method. This method
returns OK if successful or an error if not successful.
unRegisterListener()
Publisher Name string Name of the component for which the listener
should be preregistered.
This method returns true if the listener was unregistered successfully, false
otherwise.
This appendix explains the trace messages that are logged to a location specified
at configuration time.
Topics
Overview
Trace messages provide information about adapter activities. The messages are
logged to the console where the runtime adapter was started and to a log file.
Trace messages can also be redirected to the TIBCO Hawk Display application, or
sent to other applications using the TIBCO Rendezvous transport.
Each trace message can include the following fields:
The above fields are explained in Trace Message Fields on page 402. The
following diagram shows an example trace message and calls out the fields.
Timestamp
2003 Feb 22 20:15:12:937 GMT -8
Tracking Identifier
tracking=#MU3oTJ/WWCV1MU96J0zzwA9kzzw#
The next set of trace messages indicates the adapter received a message from the
SAP R/3 system. The #-0Y--C--DX1ALUbc--4zzzw-TEzzw# tracking identifier
included in the trace message uniquely identifies the message.
2003 Jan 24 10:47:18:644 GMT 5 SAPAdapter.SALESORDER-OUT Info
[Adapter] AER3-000114 Received invocation request for
BAPI_SALESORDER_CREATEFROMDAT1 from SAP R/3 System
tracking=#-0Y--C--DX1ALUbc--4zzzw-TEzzw#
Adapter Name of the adapter that wrote the trace message. This is a combination of the
Identifier adapter acronym and adapter configuration name. For example, the
application identifier, ADB.publisher1 identifies a TIBCO Adapter for
ActiveDatabase service named publisher1.
Status Code Unique code for the message and description. Status codes are identified by a
unique number and description. If a trace message includes an error or warn
role, the status code documentation includes a resolution. See Status Messages
on page 405 for details.
Status Messages
The following table lists all the new error messages introduced in this release.
They are sorted in alphabetical order.
AER3-910005 Startup Error. SDK Error %1 received during initialization. The Repository
URL is %2 and the Configuration URL is %3
AER3-910007 Startup Error. Unable to create a connection with the target application %1
using connection parameters %2 and the target application error is %3
AER3-9100012 Startup Error. Unable to create a Custom Hawk Micro Agent Named %1 used
for %2
AEADR3-600001 JMS Service Configured. This adapter version does not support JMS
services, but one was found. Use the goto button to select it.
AEADR3-600003 Subscriber in exploded batch mode found. This adapter version does not
support Subscriber in Explode Batch Mode.
AEADR3-600004 Connection Retry Mechanism Warning. This adapter version does not
suspend services on connection failure. The configured value ’Adapter
Termination Criteria’ will be ignored.
AEADR3-600006 Empty Service Found. The Service is not Configured Or Class Reference or
Endpoint Reference is Empty.
AEADR3-600007 Absolute Path not Found. Field %1, Palette error. Unable to find specified
absolute path. Make sure that you have specified the absolute path correctly.
AEADR3-600010 Connection Success. Hostname - %1, System Name - %2, R-3 Release - %3
AEADR3-600012 Illegal Adapter Instance Name. Adapter Configuration names must have
only alphanumeric characters with no embedded spaces and can be up to 80
characters long. \n Please type in a valid name.
AEADR3-600013 Subject Names. Do you wish to regenerate subjects set to previous defaults?
AEADR3-600015 Replace Resource. The resource %1 is already defined as a type. Do you want
to replace it?
AEADR3-600016 Illegal Operation. The new nested name is in conflict with the name of the
AEADR3-600021 Reuse Schema Type. Schema for %1 already exists. Do you want to reuse
existing schema?
AEADR3-600023 Invalid Value. Field %1, Palette error. This is not a valid value.
AEADR3-600024 Invalid Value. Palette error. Endpoint Reference cannot have null value.
AEADR3-600026 Filter Length Exceeded. Palette error. The RFC Filter cannot be more than 30
characters in Length. Please enter a filter value less than 30 characters in
length.
AEADR3-600029 Filter Applied to mandatory segments. You have applied the filter on the
following mandatory segment(s) -
AEADR3-600046 Inbound TID Management Warning. This adapter version does not support
Inbound TID Management.
AEADR3-600047 Advanced Logging Warning. This adapter version does not support
advanced logging to a file.
AEADR3-600049 Valid destination Warning. This adapter version does not support Validating
destination on the inbound side
AEADR3-600050 Not Checked out. Failed to update Schema. The associated Schema files are
not checked out from source control.
AEADR3-600055 Error Renaming Service. Service name must only have alphanumeric
characters and must be at most 80 characters long.
AEADR3-600057 Error During Rename : Read-Only File. The resource %1 could not be
renamed. Rename requires the %2 should be checked out. Please checkout
the resource and try renaming again. You can select the resource to be
checked out by clicking on the Go To Resource button.
AEADR3-600058 Error During Delete : Read-Only File. The resource %1 could not be deleted.
Delete requires the %2 should be checked out. Please checkout the resource
and try renaming again. You can select the resource to be checked out by
clicking on the Go To Resource button.
AEADR3-600059 Error During Creation of Service : Read-Only File. The service can not be
created. Creation requires the %1 should be checked out. Please checkout the
resource and try creating the service again. You can select the resource to be
checked out by clicking on the Go To Resource button.
The following table lists error messages for which codes have been changed.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000000 R3-CORE- INFO AD The request does Indicates normal
APP-8000 not contain adapter operation. No
closure data for action necessary.
operation %1
AER3-000002 R3-CORE- Error AP Invalid value for Verify if you are using
APP-8002 attribute %1 for the correct class
operation %2 descriptions and value
specified is valid and
no mandatory values
are omitted.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000003 R3-CORE- Error AD Function call is When you set
APP-8003 transactional but bTransactional in
no TID provided closure, you must also
supply a value for
TID.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000007 R3-CORE- INFO C TID management is It is advisable to use a
CFG-1003 local remote TIDManager if
more than multiple
adapters are running
in a load balanced
manner. This is to
ensure that the failed
transactions are not
executed twice among
the load balanced
group. This means that
it is possible to get
duplicate messages if
more than one
adapters are being run
in a load balanced
configuration and are
setup to do local TID
management.
AER3-000008 R3-CORE- Error C TID file is not Specify the TID file
CFG-1004 specified name, attribute
"tidFileName" in the
adapter instance level
Adapter Services
tab.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000011 R3-CORE- Error C Invalid producer Provide a correct
CFG-1007 %1 reference to an TIBCO
Adapter SDK
producer (publisher).
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000015 R3-CORE- INFO C Invalid producer Indicates normal
CFG-1011 %1; using default adapter operation. No
producer %2 action necessary.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000021 R3-CORE- Error C Consumer %1 for ConsumerRef must
CFG-1017 deployment point to a valid
description %2 subscriber.
does not exist
AER3-000026 R3-CORE- Error S Could not open %1 The specific file could
FIL-3002 for reading not be opened. Check
permissions.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000030 R3-CORE- INFO AD IDoc from file %1 Indicates normal
FIL-3006 sent in %2 mode adapter operation. No
action necessary.
AER3-000032 R3-CORE- WARN AD Cannot get control The IDoc does not
IDC-7001 record for IDoc have a control record.
If it’s not intentional,
add a control record.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000036 R3-CORE- Error AD No connection for The named
LIB-6002 %1 component does not
have a valid
connection Manager.
Refer also to the
description for
’R3-CORE-CFG-1014’.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000041 R3-CORE- Error AD Unable to create Look at earlier error
LIB-6007 RFC server messages in the log
function %1 file(s) for possible
causes.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000047 R3-CORE- Error AP %1 is not a valid If the name represents
LIB-6014 structure or table a valid SAP structure
(or table), ensure that
the repository contains
the class definition for
this structure (or
table). If you are
sending data from
your custom
program(s) to the SAP
Adapter, make sure
that you’re
constructing the data
correctly and that
you’re using valid
classes.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000052 R3-CORE- Error AD Invalid or no data Check the program
LIB-6019 received from that implements the
user-defined user-defined operation
operation and make sure that it
returns data.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000058 R3-CORE- Error AD Invalid operation The Adapter found
LIB-6025 name for IDoc %1 that the IDoc data is
arriving from a
function other than
’IDOC_INBOUND_AS
YNCHRONOUS’ or
’INBOUND_IDOC_PR
OCESS’.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000064 R3-CORE- Error AD RFC invocation bad The named RFC
LIB-6031 reply for function function returned a
%1; description : bad reply. See error
%2 description for more
details.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000068 R3-CORE- Error AD Cannot create IDoc The adapter subscriber
LIB-6035 data instance from received MTree data
received IDoc tree but the received data
could not be converted
to an MInstance.
Because an MInstance
is an MTree bounded
by a class, the error
implies that the
received MTree is
incorrect. If it is your
application that is
sending the offending
data to the adapter
subscriber, please
make sure that your
data is valid.
AER3-000070 R3-CORE- Error AD Cannot get RFC Make sure that SAP
LIB-6037 client function %1 login parameters are
correct and that the
subscriber adapter can
reach the SAP system.
Also check earlier
error messages in the
log file(s) for possible
causes.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000071 R3-CORE- Error AD Cannot get The subscriber adapter
LIB-6038 marshaller for RFC could not get
client function %1 marshaller to convert
between adapter data
and SAP data, perhaps
because of a
low-memory problem
or because of an error
encountered earlier
during initialization.
Please check earlier
error messages in the
log file(s) for possible
causes.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000076 R3-CORE- Error AD Initialization The named operation
LIB-6043 exception type : returned the named
%1, operation : exception. Please look
%2, description : at the error message
%3
description for more
details.
AER3-000080 R3-CORE- WARN AD Could not create The Adapter could not
LIB-6047 TIBCO RV advisory create the license
handlers; expiry advisories.
exception type : Look at the error
%1, description :
description for more
%2
details.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000081 R3-CORE- WARN AD Could not create The adapter could not
LIB-6048 TIBCO Hawk create TIBCO Hawk
implants; implants. Look at the
exception type : error description for
%1, description :
more details.
%2
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000090 R3-CORE- INFO C The Destination %1 Indicates normal
LIB-6057 in not defined, adapter operation. No
IDoc is logged to action necessary.
file %2
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000098 R3-CORE- INFO AP IDoc RFC Function Indicates normal
LIB-6066 invoked: %1 adapter operation. No
action necessary.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000106 R3-CORE- INFO AD %1 = { %2 } Indicates normal
LIB-6074 adapter operation. No
action necessary.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000116 R3-CORE- INFO AD Function call is Indicates normal
LIB-6084 transactional, adapter operation. No
TID: %1 action necessary.
AER3-000122 R3-CORE- Error AP The IDoc %1 does Make sure that the
LIB-6090 not contain a IDoc contains a control
control record record.
AER3-000124 R3-CORE- Error AD The received IDoc Make sure that the
LIB-6092 tree in exploded Tree (MTree in SDK) is
form is null created correctly and
corresponds to an
IDoc.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000125 R3-CORE- Error C Class descriptions During configuration
LIB-6093 cannot be obtained ensure that you’re
for received IDoc downloading the class
tree descriptions.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000131 R3-CORE- Error AD Cannot get EDIDD Check the data. It must
LIB-6099 header attribute include the EDIDD
from the fields header.
for segment %1
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000139 R3-CORE- INFO AD trying to recover Indicates normal
LIB-6107 the received adapter operation. No
message ... action necessary.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000147 R3-CORE- Error S Could not open File could not be
LIB-6115 file %1 for opened. Check
writing permissions and
whether you’ve
adequate space on
your disk.
AER3-000148 R3-CORE- Error AD CIDocIterator: The Check the log file for
LIB-6116 IDoc container any previous errors
does not contain that may have led to
any IDocs this situation.
AER3-000149 R3-CORE- Error AD The IDoc %1 does The IDoc does not
LIB-6117 not contain %2 contain a data record
section. Check the
IDoc data.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000154 R3-CORE- Error S The IDoc instance The Instance could not
LIB-6122 could not be be written because it
written to file, was empty. Check the
the instance is IDoc data.
invalid
AER3-000155 R3-CORE- Error AD The IDoc does not The IDoc does not
LIB-6123 contain a data contain a data record
record section. Check the
IDoc data.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000163 R3-CORE- INFO AD Checking for Indicates normal
LIB-6131 connections adapter operation. No
action necessary.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000172 R3-CORE- INFO AD Adapter stop Indicates normal
LIB-6139 method called adapter operation. No
action necessary.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000181 R3-CORE- Error AD ADV_CLASS/ADV_SOUR The adapter responds
RVD-9001 CE/ADV_NAME: %1, ’license expiry’
ADV_DESC : %2 %3 warning from the
daemon with this
message.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000187 R3-CORE- WARN AP Invalid The Adapter received
SAP-4004 transaction state an invalid stated from
received from TIDManager. Check
TIDManager for the tidmanager
transaction %1
display for possible
causes.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000193 R3-CORE- Error AD Connection not See the error
SAP-4011 available for description for details.
client %1,
retrying ...
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000201 R3-CORE- INFO AD Starting Inbound Indicates normal
SAP-4019 transaction %1 adapter operation. No
action necessary.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000207 R3-CORE- Error C The class %1 does The attribute is invalid
SCH-5004 not specify for the named class.
attribute %2 Check the repository.
Re-create the class
definition (if you
suspect it has been
incorrectly created) or
modify the class
definition to include
the named attribute.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000212 R3-CORE- Error AD Unexpected %1 : Unexpected error. You
SCH-5010 %2; inform cannot determine the
technical support cause from the
description. Contact
technical support:
support@tibco.com.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000263 --NEW-- INFO AD Using Logon Groups Indicates normal
adapter operation. No
action necessary.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000273 --NEW-- Error AD Invalid Connection Check the pool
for pool %1 definitions to ensure
that they are valid.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000281 --NEW-- Error AD Error while Refer to the
invoking accompanying error
User-defined messages for
operation: %1 additional details.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000289 --NEW-- INFO AD Performing Indicates normal
asynchronous adapter operation. No
invocation for action necessary.
User-defined
function: %1
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000295 --NEW-- Error AD No session id The sessionID
exists in the
obtained on
logoff request
logging-on to SAP R/3
system through
design-time-adapter
should be passed in
the RFCCLOSURE
along with the logoff
request to successfully
logoff from SAP-R/3
system
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000303 --NEW-- INFO M Retrieving list of Indicates normal
function modules adapter operation. No
from SAP R/3 action necessary.
system
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000310 -NEW-- ERROR AD Received Error This is an error
Advisory Message: advisory thrown by a
%1, Subject: %2 TIBCO Infrastructure
component. The
message %1 is
context-sensitive.
Report the error to
TIBCO Support.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000406 --NEW-- Error AD Invalid session id If the sessionID was
passed for
obtained after
operation %1
logging-on to the SAP
R/3 system, ensure
that the sessionID
passed in the
RFCCLOSURE while
invoking a request on
the InboundRFC
instance is the same as
the one obtained.
Instead, if the
sessionID was
obtained for a
subsequent
BAPI_TRANSACTIO
N_COMMIT call,
ensure that the same
sessionID was passed
with
BAPI_TRANSACTIO
N_COMMIT
invocation. Also check
if the session created
for commit/rollback
has already timed-out
as specified by the
’commitExpiry’
parameter.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000408 --NEW-- Error AD Server thread The adapter entered
unable to dispatch
an invalid state
call, call
skipped. message : because of an invalid
%1 call from the SAP R/3
system. See message
description for more
details. Ensure that the
adapter connections to
SAP R/3 system are
alive.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000412 --NEW-- INFO AD Obtaining Indicates normal
connection for R/3
adapter operation. No
client %1 for %2
action necessary.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000418 --NEW-- Error AD Invalid client Ensure that a valid
specified : %1
client is specified for
the RFC/IDoc in their
respective deployment
descriptions, if any.
Else ensure that the
’defaultClient’
attribute specified in
client connectionpool
is a valid client
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000424 --NEW-- Error C No default client Ensure that a
specified for defaultClient is
operation %1 specified for the
operation
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000429 --NEW-- WARN C No deployment The adapter could not
description find deployment
available for idoc descriptions for the
%1...using specified IDoc. If it is
default…
not intentional, ensure
that the IDoc
configuration is
correct.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000436 --NEW-- Error AD Unable to create Look at earlier error
reply listener for messages in the
operation %1 log-file(s) for possible
causes.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000444 --NEW-- Error AD Error writing to Ensure that the TID
TID file for
file has write
transaction %1
permissions.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000451 --NEW-- WARN AD Adapter The adapter is
application will
recovering missed
restart now
messages by
performing an
internal-restart.
Ensure that the
adapter has performed
a restarted
successfully by
checking the adapter
log files.
New Old
Message Message Severity Cat. Description Resolution
Code Code
AER3-000456 --NEW-- Error C No attribute check the repository
description for
for attribute
explode sequence
%1 description for
explode sequence %1.
This appendix gives an overview of the SAP R/3 system and descriptions of the
interfaces exposed by system.
Topics
server, handles the user dialog, and communicates user entries to the Application
Server. Categories of business information include office administration, logistics,
accounting, and others, as shown in one of the top-level SAP R/3 GUI screens, in
the next figure:
The SAP R/3 GUI program accesses the business database server by means of the
Application Server layer. Information on many business transactions can be
displayed in a report such as the following:
Application Server
The Application Server layer processes the business logic (ABAP/4 programs)
relying on data stored in the database and on user input. The programs
themselves are also stored in the database. The processes that make up an
Application Server run on dedicated, powerful, servers.
The Application Server provides many services to support the user interface
layer. In this layer, programs are available to create, capture, configure, and
process business data and to present it in a logical and easily assimilated display.
Custom business applications written for the specific business entity augment
standard SAP R/3 programs.
Database Server
The Database Server holds the relational database and maintains:
• application data, for example SAP records
• customization data, for example ALE customizing
• ABAP/4 business program logic
Each SAP R/3 system has one database and one Database Server. Any of the most
widely-used SQL database management applications can be used, including
Oracle and Informix.
SAP R/3 provides many interfaces to extract and import data to facilitate
enterprise-wide integration. The following interfaces are the standard means for
exchanging business information between SAP R/3 and other business
application systems.
bridge over multiple EDI standards. SAP IDoc data was then mapped to
specific EDI standards later in the process. Communication IDocs are created
from master IDocs for point-to-point distribution to individual recipients as
per an ALE partner profile within ALE customization. There are several
hundred IDoc types for application data. Both ALE and EDI have one
common feature, once the specific processing is done, the data is
automatically sent out of the corresponding operational or administrative
transactions (exceptions exist for master data).
The adapter discussed in this document uses ALE/IDoc, RFC, and BAPI
interfacing technology to achieve data interchange. Figure 1 shows how ALE
serves as the IDoc interface between SAP R/3 systems and non-SAP systems.
TIBCO Environment
Non-SAP Systems
_______ _________
SAP R/3 _______ ALE _________ TIBCO
_______ Inbound _________ Adapter for
Database Comm.
Master Process R/3
IDoc IDoc
Subscriber
IDoc Structure
The IDoc internal structure serves as a general-purpose communication vehicle to
move different kinds of business data. The figure below shows the general
structure of an IDoc consisting of a control record, one or more data records, and a
status record.
RFC/BAPI Structure
Remote Function Calls (RFCs) are implemented in request/reply communication
Business Application Programming Interfaces (BAPIs) are standard SAP R/3
business interfaces to BOR, and functionally are similar to RFCs. Schema files are
extracted from the SAP system instance using the TIBCO Designer palette and
saved to the project.
Topics
What are the requirements to bring up TIBCO Designer from a UNIX command-line?
TIBCO Designer is a GUI based tool and a UNIX GUI environment is mandatory
to run it. You can start TIBCO Designer from the command line.
Why does the adapter startup fail, even after specifying the appropriate dat file?
You must start the repository server before you start the adapter. If it is a remote
repository ensure that the RepoUrl syntax has been specified accurately in the
adapter’s .tra file. Ensure that the path specified for the .tra file is correct.
When saving an adapter configuration to the project, if an error occurs where is it logged?
TIBCO Designer error messages are logged to the files stderr.log and
designer.log under the TIBCO_HOME\Designer\<ver>\logs directory.
Why does the adapter fail to respond to a request after successfully receiving it?
The adapter may fail to respond due to various reasons like errors resulting from
class mismatch, records not being available in the target application or,
connectivity problems with the target application.
I am subscribing to an IDoc using an inbound instance to post into the R/3 system. What
happens to the IDoc if the connection to the R/3 system goes down just before the adapter
receives the IDoc or while processing the IDoc ?
On receipt of an IDoc, the subscriber instance checks for validity of the connection
to R/3 before posting. If the connection is found to be invalid, the adapter
immediately starts a timer to check for connections to R/3 periodically and
suspends the IDoc subscriber so that no further messages are received. The IDoc
message is not confirmed to the sending system.
When the R/3 system comes up again, the adapter re-establishes connectivity,
and restarts itself automatically to receive the unconfirmed IDoc message.
The connection timer’s polling interval is configurable. This recovery mechanism
is also available for Inbound oneway RVCM messages.
I have to send sales order information as IDocs to my partner system. The partner is interested
in the information coming in just one segment of the IDoc. Do I still have to publish the entire
IDoc to the partner?
The publication service of the adapter provides a way to filter irrelevant
information from IDocs coming out of the R/3 system at both segment and field
levels. This feature allows selective publication of only those segments or fields
that the partner is interested in.
A partner profile in our R/3 system is configured to ’collect IDocs’ to push the IDocs out in a
batch. Can the adapter also be configured to publish IDocs in batches?
The explode batch format of IDoc publication allows you to bunch and publish
IDocs in completely self-describing format in one batch, the size of the batch
being equal to the packet size configured in R/3 for the partner profile.
Why does the adapter startup fail, and give the following error, ’Failed to enable CM transport’?
The possibilities of this error are:
• There might be another instance running under the same CM session.
• Permission to create ledger file under the specified directory might be denied.
• The ledger file to be created for the CM session might be corrupted.
Check all these before starting the adapter. If you find a corrupted ledger file, then
delete the file. But you might miss some messages.
How can I update my repository, when there is a change in the schema for IDoc in the SAP
system, without losing my mappings?
Whenever there is a change in IDoc, the IDoc has to be downloaded again. The
configured service for the IDoc should be deleted and recreated with the new
IDoc.
If the change in IDoc does not disturb the mapped parameters then the mappings
will not be affected. For example, if you add new export parameter to the schema.
In your mappings you will be able to find the new export parameter along with
the other mappings.
If you delete the parameter being mapped from the schema, then the mapping for
the parameter will be lost.
How can I debug my ABAP code when executing the program using the adapter?
The adapter provides an option called ABAP Debug. This flag has to be set to 1
during adapter configuration. See Setting up Client Configuration Options on
page 218 for details. Thus once that ABAP program is called, the adapter opens
up the SAP GUI, and then you can debug your ABAP code.
To use ABAP debug, you should have SAP GUI installed on the machine on
which the adapter is being executed.
What should I do if I do not want to have a permanent connection to SAP, but would like to have
a connection established by the adapter when required?
You can dynamically set up connection to SAP when the adapter receives the
message. In case of RFC, you can select the checkbox Logon Required in the
adapter services. Hence when that adapter service receives the request, it first
establishes connection with SAP before servicing it. You can additionally
configure event based connection for RFC/IDOC service of an Inbound adapter.
For information regarding its configuration, see Event Driven Inbound
Connections on page 348
When sending IDocs from SAP, the adapter does not receive the IDocs but the SAP system
shows that the IDocs were sent without any errors. Why isn’t the adapter receiving the IDocs?
This may be because you have more than one adapter listening to the same
Program ID. Ensure that each adapter is configured for a separate program ID. To
check if your program ID is not used by any other adapter at any given time, in
SAP go to transaction sm59. Go to your program ID under TCP/IP, and then click
on test connection. As your adapter instance is not up, the test connection should
fail, or else there is someone else using the same program ID.
How do I know what version and patch level of the adapter, TRA, and Designer I am using?
For exact TRA build, you can look up the file, version.txt under
/tibco/tra/5.1. When you start the adapter, you will see a banner which will
give you the adapter version and patch level. When you open the TIBCO
Designer, click the Help menu select About. A popup displays the TIBCO
Designer version and the build.
How can the Load Balancing feature of the adapter be used on the Outbound side?
For outbound load balancing, TID Manager can be used. To set up TID Manager,
during the adapter instance configuration, in the Adapter Services tab of the
adapter instance, select TID Management as Remote. For more information on its
configuration refer to the TIDManager on page 250. Make sure that you bring up
the TID Manager first before your bring up the adapter instances.
How can the Load Balancing feature of the adapter be used on the Inbound side?
For Inbound load balancing, the Distributed Queue feature of the adapter can be
used. For more information on configuration and its usage refer to Load
Balancing Using Distributed Queue on page 260.
Adapter when processing Latin-2 data, throws up error "Unicode conversion failure: Failed to
convert type "ibm-943 " to Unicode - have you defined the env var TIB_ICU_DATA to point to
the directory that contains tibicudata.dat?" Why is the adapter displaying this error?
Please check whether the environment variable TIB_ICU_DATA is set to
/tibco/tra/5.1/bin and this directory contains the file, tibciudata.dat. Also
check whether the characters being sent to the adapter belongs to the locale set.
For UNIX machines appropriate locales should be set as given in the Getting Ready
to Run Unicode on UNIX section in Chapter 7 of the TIBCO Adapter for R/3 User’s
Guide.
At times the adapter throws ’CPIC Error’ but after some time it continues processing the
message. Is this something to worry?
CPIC error usually occurs when the adapter is unable to obtain connection to SAP.
This may be due to network overload or glitches. It may be also due to some
transient network problems. To verify the same, you can try connecting to SAP
from the SAP GUI installed on the same machine on which the adapter is
throwing the error.
Adapter gives core dump on HP-UX and AIX machines. Why does this happen?
The adapter requires you to increase the stacksize by setting the same in the
adapter properties file. For more information on stack size and its settings, see
Multithreading on page 339.
I want to open a Support Call. What information should I include in my request so as to avoid
unnecessary delays?
If you are planning to open an SR just for information purpose, then please
include the TIBCO Adapter for R/3 version and patch level, the platform on
which the adapter is running and the version of SAP system.
If you are opening an SR because you are facing some problems and getting
errors, then please do not forget to include the following:
• TIBCO Adapter for R/3 Version and patch level
• The TRA version and patch level
• TIBCO Designer version and patch level
• Platform on which the adapter is being run
• Fresh adapter log files (if error occurs during adapter execution) or Designer
Log files and Designer Console Output (if error is occurring during
configuration)
• The repository in which you are getting the error and also the adapter
properties file (adr3.tra)
You must enable a SAP R/3 ALE system to publish and subscribe to messages in
the TIBCO environment by carrying out appropriate customization. No
modifications or additional code is required in the SAP R/3 system itself. This
chapter gives an overview of the steps for customizing a SAP R/3 ALE system. It
shows the two example configuration processes performed using the SAP R/3
system version 3.1H. (For other SAP versions refer to SAP documentation.)
Topics
The following section provides the steps required to customize the SAP R/3 ALE
system, using the SAP GUI version 3.1H to operate with the adapter.
• Creating a Logical System for an Adapter Instance
• Creating a Logical System for the Adapter
• Establishing the Distribution Model
• Defining RFC Destinations
• Maintaining Partner Profile
• Defining an Extended IDoc Type
:
The first requirement is to create an ALE Logical System to represent the SAP
application. The logical system set up here will be used by the ALE customer
distribution model and the outbound partner agreements.
To create a logical system for the adapter, perform the following steps:
1. Log onto the SAP Server.
2. Run the sale transaction.
3. Navigate to
Basic Configuration > Set up logical system > Maintain logical systems
When you double-click the check mark in front of the phrase Maintain logical
system the following warning screen appears.
5. Click New Entries to request the interface used to create a new logical system.
An empty New Entries List screen appears.
6. Enter the name of the new application logical system — PUBLISHER is shown
below for example — under the column Log.System. You should enter a
suitable description under column Short Text.
7. To save the new logical system, click . Then click to return to the
Change View screen. Verify the creation of the new logical system by scrolling
down the alphabetical list to the new entry.
After completion of this step, you have two logical systems: the one that
represents the adapter and the one that is assigned to the client (sending and
receiving SAP R/3 system).
You have to define which logical message types are to be exchanged between the
SAP R/3 ALE system and the adapter. Perform the following steps:
1. Run the sale transaction and navigate to
Distribution Customer Model>Maintain customer distribution model
directly
The following screen appears:
2. Click the Maintain customer... line and then click Choose. The following
screen appears:
Using the down arrow feature, choose the logical system that is assigned to
the client out of which messages are to be sent. Logical system
CERMAND850 is shown in the example. You can use the customer model
SUBSYSTEMS, create one of your own, or use one that has previously been
created.
Click to change (add to) the list of IDoc Message Types. The Model
SUBSYSTEMS screen appears.
6. In this screen you need to define the new message type. You can either enter
the message type or select it with the down arrow as shown in the figure.
7. Click the Transfer button. This adds the new message type and returns you to
the Model SUBSYSTEMS screen. In this screen, you can check that the new
message type has been added.
8. To add other message types to the logical system, repeat step 5 through step 7.
When all the message types have been added, the list of message types
associated with the logical system will appear as follows:
An RFC destination allows the SAP R/3 system to call service functions in the
R/3 Outbound Adapter configured as an IDoc Publisher. RFC uses TCP/IP to
interface with the IDoc Publisher. One or more RFC destinations for IDoc
publisher processes have to be defined. Usually, only one RFC destination is used.
Multiple IDoc publisher processes can be load balanced by an R/3 gateway via a
single RFC destination. Multiple destinations can be useful when different
destinations are to be used for different ports. The ports are in turn used for
different message types.
1. Run the sale transaction and navigate to,
Communication>Define RFC Destination>TCP/IP connections
The following screen appears:
2. Now create a new TCP/IP RFC destination by clicking on the Create button.
The following RFC Destination window appears:
3. In the RFC Destination window, specify the adapter logical system you
created as the RFC destination (PUBLISHER, for example), choose T (TCP/IP
connection) as the connection type, enter any suitable description, Language E
for English. The following window is an example of a new RFC destination
entry:
4. Save when all entries are complete. On the next window, click Registration
and specify the Program ID.
When using the RFC destination you must ensure that the Program ID
defined here matches the Program ID specified in the adapter instance. See
Configuring Default Server Connection on page 222.
5. When the entries are complete, as shown in the following example window,
save them.
3. Click New entries on the next screen. Enter some description for the new port,
and under Logical Destination enter the name of the previously defined
RFC destination.
7. Enter the appropriate port that you have defined previously. For near
real-time communication between SAP R/3 and the R/3 Adapter Publisher,
set the Output mode to Transfer IDoc immed. With this option, the package
size (Pack. size) does not matter, but a value must be specified, nevertheless.
8. In some scenarios it might be desired to use batch mode to use
communication resources more sparingly. For Batch Mode, set Output mode
to Collect IDocs and set the package size (Pack. size) to the number of IDocs
to send in a batch.
9. Under IDoc type, enter one of the IDoc types that are suitable for the logical
message type (SISCSO in the above example). This completes the partner
profile.
SAP R/3 makes basic IDoc types available for use with SAP processes. You can
create extensions to a basic IDoc type using the procedure described in this
section.
1. To create an IDoc extension, initiate transaction WE30. The Develop IDoc
Types screen is displayed. An example of this screen is shown below:
2. Set the Extension radio button as shown below to indicate that you are going
to create an extension to an existing IDoc type.
3. Enter the name of your IDoc extension in the ObjectName text box. Note that
names used by SAP are case insensitive. See the following example.
4. Click the Create icon (folded paper) or enter the function F5 key to proceed
with extension creation. The Create extension screen is displayed, as shown
below.
5. Set the Create new radio button. This step associates the new extension with a
basic IDoc type. This is done by entering the name of a basic IDoc type, such
as DEBMAS03, in the text entry box labeled Linked basic type, as shown in
the following example.
If you do not remember the exact name of the basic type, you can select it from
a list displayed when you click on the down arrow to the right of the text
entry box. When you have entered the basic IDoc type, enter a description in
the Description box. When your entries are complete, click the check mark to
proceed with the extension creation.
6. The following Create extension screen is displayed. This screen shows the
initial default segments contained in the new IDoc extension, as defined by
the basic IDoc type (DEBMAS03 in the example). Add segments using this
screen.
7. For example, you can add a second child segment to segment E1KNA1L by
highlighting the current child segment and clicking .
10. The Create Extension screen is displayed again with the new child segment as
shown in the example below. Save the new IDoc extension.
11. The Create Object Directory Entry screen is displayed as shown in the
following example. Enter the Development class that you wish to associate
with the new IDoc extension.
13. Once you save, the Change Request screen is displayed, as shown in the
following example.
14. Click to execute the change request. This completes the creation of the
IDoc extension.
Topics
The R/3 Publisher Adapter receives IDocs from an SAP R/3 system and converts
them into TIBCO Rendezvous messages, which are then published on TIBCO
Rendezvous. The R/3 Subscriber Adapter listens for (subscribes to) these
messages, receives the data, converts it to IDocs, which are then posted to the
receiving SAP R/3 system.
This R/3 Adapter supports two different types of message formats for backward
compatibility. They are briefly described below. The section that follows
elaborates on the formats.
• SAPCIF: The IDoc is first converted into SAP Certified Intermediate Format
and then packed into an RV message. This RV message contains the IDoc
header data followed by IDoc data in SAPCIF format. All the fields present in
SAPIDOCOPAQUE message type are present in SAPCIF, except that the
message values are presented in the form of name-value pairs. Each IDoc is
packed into a separate RV message.
• BATCHED: This format is provided to support more efficient handling of
IDocs in groups or “batches.” In batch mode one or more IDocs can be sent in
a packet by the SAP R/3 system to the R/3 Adapter Publisher. All the IDocs
received in the packet are added to a single RV message. The RV message is
appended with IDoc header information followed by the packet of IDoc data.
In batch mode, even if only one IDoc is sent, the R/3 Adapter still handles the
RV message creation as if the IDoc were in a packet. Note that if the
“PutEndOfLineInIDOC” is set to 1 in the adapter Publisher configuration file,
the Publisher will put a line-feed character at the end of each row of IDoc
control and data records before publishing them to TIBCO Rendezvous.
Message Fields
In all three message types the IDoc data is packed in the RV message as ASCII text
that is further divided into fields. Some of the fields must be present in all IDocs
and others are present for particular IDoc types.
The following table summarizes the message field format requirements for
version 1.0.x.
SAPIDocRel RVMSG_STRING X
SAPIDocEnc RVMSG_UINT X X
SAPIDocMsga RVMSG_STRING X X
SAPIDocTableName RVMSG_STRING X X
EOLPresent RVMSG_BOOLEAN X
NUMBEROFIDOCS RVMSG_UINT X
Type: RVMSG_STRING
Length: Variable
Required?: Yes.
Type: RVMSG_STRING
Length: 3 bytes
Valid values: Three-byte SAP release indicator; e.g. “31H” or “40B” or “31G” etc.
Description: The SAP R/3 system release from where the IDoc originated.
Required?: Yes.
Type: RVMSG_STRING
Length: 16 bytes
Valid values: Positive number represented as string and appropriately padded with
zeros, e.g. “0000000000152674”
Description: The unique IDoc number assigned by SAP R/3 to IDoc in ALE
(Application Link Enabling) communication layer, when it is being sent
to the server program (Publisher Adapter).
Required?: Yes.
Type: RVMSG_UINT
Required?: Yes.
Type: RVMSG_UINT
Required?: Yes.
Type: RVMSG_STRING
Length: Variable
Description: Control field table name. The string in this field is either “EDI_DC” to
indicate the data is from SAP version 3.x or “EDI_DC40” to indicate the
data is from SAP version 4.x.
Required?: Yes.
Type: RVMSG_BOOLEAN
Length: 1 byte
Type: RVMSG_UINT
Type: RVMSG_STRING
Length: Variable
Description: The ASCII IDoc data that is sent in the RV message. The IDoc data
begins with the IDoc type indicator followed in sequence by IDoc
release indicator, the control record, and a number of data records. Each
of the indicator or record types is terminated by end of line symbol. The
valid lengths for control record and data record for IDoc versions 3.1H
and lower are 464 (+1 for end of line) and 1055 (+1 for end of line)
respectively. The valid lengths for IDoc versions 4.0B and later are 524
(+1 for end of line) and 1063 (+1 for end of line) respectively for control
and data records.
The Apache Software License, Version 1.1 1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
Copyright (c) 1999 The Apache Software Foundation. All rights
reserved. 2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
Redistribution and use in source and binary forms, with or without documentation and/or other materials provided with the distribution.
modification, are permitted provided that the following conditions are
met: 3. The end-user documentation included with the redistribution, if any,
must include the following acknowledgment:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer. "This product includes software developed by the Apache Software
Foundation (http://www.apache.org/)." Alternately, this
2. Redistributions in binary form must reproduce the above copyright acknowledgment may appear in the software itself, if and wherever
notice, this list of conditions and the following disclaimer in the such third-party acknowledgments normally appear.
documentation and/or other materials provided with the distribution.
4. The names "Xalan" and "Apache Software Foundation" must not be
3. The end-user documentation included with the redistribution, if any, used to endorse or promote products derived from this software
must include the following acknowledgment: "This product includes without prior written permission. For written permission, please
software developed by the Apache Software Foundation contact apache@apache.org.
(http://www.apache.org/)." Alternately, this acknowledgment may
appear in the software itself, if and wherever such third-party 5. Products derived from this software may not be called "Apache",
acknowledgments normally appear. nor may "Apache" appear in their name, without prior written
permission of the Apache Software Foundation.
4. The names "Xerces", "Xalan" and "Apache Software Foundation"
must not be used to endorse or promote products derived from this THIS SOFTWARE IS PROVIDED ‘ ‘ AS IS’’ AND ANY EXPRESSED
software without prior written permission. For written permission, OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
please contact apache@apache.org.5. Products derived from this THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
software may not be called "Apache", nor may "Apache" appear in FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
their name, without prior written permission of the Apache Software NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
Foundation. ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* THIS SOFTWARE IS PROVIDED ‘ ‘ AS IS’’ AND ANY EXPRESSED DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT POSSIBILITY OF SUCH DAMAGE.
OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER This software consists of voluntary contributions made by many
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN individuals on behalf of the Apache Software Foundation and was
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING originally based on software copyright (c) 1999, Lotus Development
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF Corporation., http://www.lotus.com. For more information on the
THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE Apache Software Foundation, please see <http://www.apache.org/>.
POSSIBILITY OF SUCH DAMAGE.
* This software consists of voluntary contributions made by many W3C IPR SOFTWARE NOTICE
individuals on behalf of the Apache Software Foundation and was
originally based on software copyright (c) 1999, Lotus Development Copyright 2000 World Wide Web Consortium, (Massachusetts
Corporation., http://www.lotus.com. For more information on the Institute of Technology, Institut National de Recherche en Informatique
Apache Software Foundation, please see <http://www.apache.org/>./ et en Automatique, Keio University). All Rights Reserved.
The DOM bindings are published under the W3C Software Copyright
The Apache Software License, Version 1.1 Noticeand License. The software license requires "Notice of any
changes ormodifications to the W3C files, including the date changes
Copyright (c) 1999 The Apache Software Foundation. All rights were made."
reserved.
Consequently, modified versions of the DOM bindings must document
Redistribution and use in source and binary forms, with or without that they do not conform to the W3C standard; in the case of the IDL
modification, are permitted provided that the following conditions are binding, the pragma prefix can no longer be ’w3c.org’; in the case of
met: the Java binding, the package names can no longer be in the ’org.w3c’
package.
Permission to use, copy, and modify this software and its "Contribution" means: a) in the case of International Business
documentation, with or without modification, for any purpose and Machines Corporation ("IBM"), the Original Program, and b) in the
without fee or royalty is hereby granted, provided that you include the case of each Contributor, i) changes to the Program, and ii) additions
following on ALL copies of the software and documentation or portions to the Program; where such changes and/or additions to the Program
thereof, including modifications, that you make: originate from and are distributed by that particular Contributor. A
Contribution ’originates’ from a Contributor if it was added to the
1.The full text of this NOTICE in a location viewable to users of the Program by such Contributor itself or anyone acting on such
redistributed or derivative work. Contributor’s behalf. Contributions do not include additions to the
Program which: (i) are separate modules of software distributed in
2.Any pre-existing intellectual property disclaimers, notices, or terms conjunction with the Program under their own license agreement, and
and conditions. If none exist, a short notice of the following form (ii) are not derivative works of the Program. "Contributor" means IBM
(hypertext is preferred, text is permitted) should be used within the and any other entity that distributes the Program.
body of any redistributed or derivative code: "Copyright
[$date-of-software] World Wide Web Consortium, (Massachusetts "Licensed Patents " mean patent claims licensable by a Contributor
Institute of Technology, Institut National de Recherche en Informatique which are necessarily infringed by the use or sale of its Contribution
et en Automatique, Keio University). All Rights Reserved. alone or when combined with the Program.
http://www.w3.org/Consortium/Legal/"
"Original Program" means the original version of the software
3.Notice of any changes or modifications to the W3C files, including accompanying this Agreement as released by IBM, including source
the date changes were made. (We recommend you provide URIs to code, object code and documentation, if any.
the location from which the code is derived.)
"Program" means the Original Program and Contributions. "Recipient"
THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," means anyone who receives the Program under this Agreement,
AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR including all Contributors.
WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS 2. GRANT OF RIGHTS
FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE
SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY a) Subject to the terms of this Agreement, each Contributor hereby
THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR grants Recipient a non-exclusive, worldwide, royalty-free copyright
OTHER RIGHTS. license to reproduce, prepare derivative works of, publicly display,
publicly perform, distribute and sublicense the Contribution of such
COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, Contributor, if any, and such derivative works, in source code and
INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING object code form.
OUT OF ANY USE OF THE SOFTWARE OR DOCUMENTATION.
b) Subject to the terms of this Agreement, each Contributor hereby
The name and trademarks of copyright holders may NOT be used in grants Recipient a non-exclusive, worldwide, royalty-free patent
advertising or publicity pertaining to the software without specific, license under Licensed Patents to make, use, sell, offer to sell, import
written prior permission. Title to copyright in this software and any and otherwise transfer the Contribution of such Contributor, if any, in
source code and object code form. This patent license shall apply to
associated documentation will at all times remain with copyright the combination of the Contribution and the Program if, at the time the
holders. Contribution is added by the Contributor, such addition of the
Contribution causes such combination to be covered by the Licensed
Patents. The patent license shall not apply to any other combinations
International Business Machines Corporation which include the Contribution. No hardware per se is licensed
hereunder.
This product includes software developed by International Business
Machines Corporation. Copyright (c) International Business Machines. c) Recipient understands that although each Contributor grants the
All rights reserved. licenses to its Contributions set forth herein, no assurances are
provided by any Contributor that the Program does not infringe the
The terms of IBM Public License Version 1.0 apply to the TIBCO End patent or other intellectual property rights of any other entity. Each
User License Agreement. Any provisions in this License Agreement Contributor disclaims any liability to Recipient for claims brought by
which differ from the terms of the IBM Public License Version 1.0 are any other entity based on infringement of intellectual property rights or
3. Java Technology Restrictions. You may not modify the Java Platform
Interface ("JPI", identified as classes contained within the "java"
package or any subpackages of the "java" package), by creating
additional classes within the JPI or otherwise causing the addition to
or modification of the classes in the JPI. In the event that you create
an additional class and associated API(s) which (i) extends the
functionality of the Java platform, and (ii) is exposed to third party
software developers for the purpose of developing additional software
which invokes such additional API, you must promptly publish broadly
an accurate specification for such API for free use by all developers.
You may not create, or authorize your licensees to create additional
classes, interfaces, or subpackages that are in any way identified as
"java", "javax", "sun" or similar convention as specified by Sun in any
naming convention designation.
For inquiries please contact: Sun Microsystems, Inc. 901 San Antonio
Road, Palo Alto, California 94303
Index
H L
Handling Large Internal Tables from SAP R/3 325 ledger file
Hawk methods retrieving information through TIBCO Hawk 394
getComponents 375 listeners
getConfig() 377 unregistering through TIBCO Hawk 398
reviewLedger 394 Load Balancing 260
stopApplicationInstance 320, 397 load balancing 291
unRegisterListener 398 local repository locator string 316
HTTP 312 locator string 316
HTTPS 312 Log File field, adapter 131
URLfile 314 Log Info field, adapter 132
log on
to SAP server 491
Log to Standard field, adapter 131
I Logical Process Architecture 6
T
W
TCP connections 76
Terminating the Test 107 wcstombs() 286
Test Connection Button 357 What are the requirements to bring up TIBCO
The Auto-Discovery Process 362 Designer from a UNIX command-line? 482
The SAP R/3 Business Application System 474 What is TRA? 482
TIBCO Adapter for R/3 When an error occurs in a Subscription Service
ALE IDoc interface 478 adapter service, where is it displayed? 482
components 6 When saving an adapter configuration to the project, if
TIBCO Hawk an error occurs where is it logged? 482
enterprise monitor components 360 When starting the adapter, what if the repository is not
interrogating microagents 363 found? 482
microagents available 365 Why does the adapter fail to respond to a request after
TIBCO Rendezvous 311 succesfully receiving it? 483
TIBCO Run-time Agent 3 Why does the adapter fail to respond to a request? 482
TIDManager 250 Why does the adapter startup fail, even after specify-
TIDManager Service 5 ing the appropriate DAT file? 482
TIME 286 Why does the adapter startup fail? 482
tracing 220 Why does the connection to the Design-Time Adapter
TYPC 286 fail? 482
Typical Publication Service Flow 9 Why is the adapter unable to discover any domains on
Typical Request-Response Invocation Service Flow 13 the network even though the TIBCO Business-
Typical Request-Response Service Flow 11 Works administration server is up and
Typical Subscription Service Flow 10 running? 482
Windows NT
installation 25