Skip to main content
Skip table of contents

SAP Adapter Reference

This page explains the SAP Adapter in Bridge context. If you were looking for the same information regarding the PAS Designer, refer to SAP Adapter in the Designer guide.

Tagged Values (<<SAPAlias>>)

Tagged ValueDescriptionMandatory / OptionalAllowed Values
protocolSupply the connection protocolmandatoryrfcto use the RFC protocol
trfcto use the tRFC protocol
hostSupply the gateway host name (optional).mandatoryany string, must be a valid SAP host
localhost (default)
clientSupply the SAP logon client.mandatoryany string, must be a valid SAP client
userSupply user and password.mandatoryany string matching the pattern "<user>/<password>"
systemNumberSupply the system number of the SAP system.optionalany string, default = "00"
routerStringThe router string is an additional routing information used by SAP RFC backend clients.
SAP RFC clients prepend the DNS hostname with this string to get an application server name that is resolvable by the RFC library.
optionalany string
poolSize

Runtime 2015.10 Supply the maximum number of parallel connections to the SAP system.

  • The pool size can be defined per connection string. If you have multiple aliases with the same connection string, the highest value will be used.
    The same applies, if you set the values in the SAP adapter settings on the Bridge.

  • If this tag is not set, the connection pool size specified on the <<E2EComposite>> will be applied.
  • Compatibility note: This tag will not be created for existing aliases in older models. You have to add the tag manually if you want to set it.
    Older xUML Runtimes (before version 2015.10) will not start with the setting being present. As a workaround, you can delete the tag value.

If all connections from the SAP connection pool are in use, warnings will be logged to the transaction log each second a service is waiting for connection.

2015-12-08 16:47:24 +0100 0000000182469dcd0001612899fea700e3d869aa 3 SAPConnectionPool 0    OK SAPRFC IO_ENTER PoolExhausted
2015-12-08 16:47:25 +0100 0000000182469dcd0001612899fea700e3d869aa 3 SAPConnectionPool 1000 OK SAPRFC IO_EXIT  PoolExhausted

In this case, increase the pool size to solve the problem.

optionaldefault = 10
languageSupply the SAP logon language.optional1-byte SAP language like E for English, D for German
2-byte ISO language like EN for English, DE for German
sapTrace

The effect of this flag being true is two fold:

  • First, the SAP RFC libraries will write trace file information (.trc) into the directory the service has been deployed to.

  • Second, by using the SAP transaction *SMGW (SAP gateway monitor) we can monitor the dataflow from and to the gateway the server is registered on.

The SAP trace level has to be defined in tagged value connectionString. See Client Connection Options for a list of the allowed trace level values.

optional

optionsA blank separated list of name value pairs: name1="value1" name2="value2", and so forth. The possible name value pairs can be found further below.optional

Parameters

Parameters of <<SAPRFCAdapter>>

NameTypeDirectionDescription
connectionStringStringinSupplies the connection string (optional).
import

Any

inThe class specifying the type of this parameter must have stereotype <<SAPParameters>>.
The attributes and associations of this class correspond to the parameters given by the import section of the ABAP function declaration – see figure Export parameters in SAP.
exportAnyoutThe class specifying the type of this parameter must have stereotype <<SAPParameters>>.
The attributes and associations of this class correspond to the parameters given by the export section of the ABAP function declaration
changingAnyin/outThe class specifying the type of this parameter must have stereotype <<SAPParameters>>.
The attributes and associations of this class correspond to the parameters given by the changing section of the ABAP function declaration
tablesAnyin/outThe class specifying the type of this parameter must have the <<SAPTables>>.
The attributes and associations of this class correspond to the parameters given the tables section of the ABAP function declaration.

Parameters of <<SAPTRFCAdapter>>

NameTypeDirectionDescription
connectionStringStringinSupplies the connection string (optional).
transactionIDStringin

Supplies the transaction ID.

The transaction ID is logged as correlation ID to the transaction log (see Contents of the Transaction Log).

import

Any

inThe class specifying the type of this parameter must have stereotype <<SAPParameters>>.
The attributes and associations of this class correspond to the parameters given by the import section of the ABAP function declaration – see figure Export parameters in SAP.
exportAnyoutThe class specifying the type of this parameter must have stereotype <<SAPParameters>>.
The attributes and associations of this class correspond to the parameters given by the export section of the ABAP function declaration
changingAnyin/outThe class specifying the type of this parameter must have stereotype <<SAPParameters>>.
The attributes and associations of this class correspond to the parameters given by the changing section of the ABAP function declaration
tablesAnyin/outThe class specifying the type of this parameter must have the <<SAPTables>>.
The attributes and associations of this class correspond to the parameters given the tables section of the ABAP function declaration.

Parameters of <<SAPTRFCCreateTransaction>>

NameTypeDirectionDescription
connectionStringStringinSupplies the connection string (optional).
transactionIDStringout

Returns the transaction ID of the newly created transaction.
The transaction ID is logged as correlation ID to the transaction log (see Contents of the Transaction Log).

Parameters of <<SAPTRFCConfirmTransaction>>

NameTypeDirectionDescription
connectionStringStringinSupplies the connection string (optional).
transactionIDStringin

Supplies the transaction ID of the transaction to be confirmed.
The transaction ID is logged as correlation ID to the transaction log (see Contents of the Transaction Log).

Parameters of <<SAPIDocComposer>>

NameTypeDirectionDescription
anyObjectFlowAnyinParsed IDoc object(s)
The class specifying the type of this parameter must have stereotype <<SAPIDoc>>.
idocStringStringoutString containing IDoc data (e.g. the content of an IDoc file)

Parameters of <<SAPIDocRecordComposer>>

NameTypeDirectionDescription
anyObjectFlowAnyinParsed IDoc object(s)
The class specifying the type of this parameter must have stereotype <<SAPIDoc>>.
EDI_DC40ArrayoutArray of IDoc structured control records
EDI_DD40ArrayoutArray of IDoc structured data records

Parameters of <<SAPXMLIDocComposer>>

NameTypeDirectionDescription
anyObjectFlowAnyin

Parsed IDoc object(s)
The class specifying the type of this parameter must have stereotype <<SAPIDoc>> and <<XML>>.

The input object must be named exactly after the root element of the IDoc, e.g. TXTRAW01. If not, the model will throw an exception at runtime.

idocBlobBloboutBlob containing IDoc data (e.g. the content of an IDoc file)

Parameters of <<SAPIDocParser>>

NameTypeDirectionDescription
idocStringStringinString containing IDoc data (e.g. the content of an IDoc file)
anyObjectFlowAnyoutParsed IDoc object(s)
The class specifying the type of this parameter must have stereotype <<SAPIDoc>>.

Parameters of <<SAPIDocRecordParser>>

NameTypeDirectionDescription
EDI_DC40ArrayinArray of IDoc control record strings
EDI_DD40ArrayinArray of IDoc data records strings
anyObjectFlowAnyoutParsed IDoc object(s)
The class specifying the type of this parameter must have stereotype <<SAPIDoc>>.

Parameters of <<SAPXMLIDocParser>>

NameTypeDirectionDescription
idocBlobinBlob containing IDoc data (e.g. the content of an IDoc file)
anyObjectFlowAnyout

Parsed IDoc object(s)
The class specifying the type of this parameter must have stereotype <<SAPIDoc>> and <<XML>>.

The receiving object must be named exactly after the root element of the IDoc, e.g. TXTRAW01. If not, the model will throw an exception.

Client Connection Options

Via the SAP alias and the configuration descriptor you can get the protocol and the connection string. This string looks like:

name1="value1" name2="value2" ...;

Example: client="100" lang="D" ashost="10.160.99.122" sysnr="00" trace="1"

The connection string must be provided in the following format:

<optionName>="<optionValue>"<space><optionName>="<optionValue>"...

Failure to conform with the pattern will lead to unrecognized options. Those errors won't be reported, but affect SAP behavior (e.g. you'll get a SAP connection error with CALL_FUNCTION_SIGNON_INCOMPL).
Pay attention that the names are not case-sensitive but the values are. Depending on the RFC server, some of these names are fix and some of them are optional.

List of Available Options

NameDescriptionValues
Load Balancing
groupName of the group of application servers (if using load balancing).
mshostHost name of the Message Server (if using Load Balancing).
msservService of the Message Server (if using Load Balancing).
r3nameName of the SAP system (if using load balancing).
Login
user
User for the SAP connection.
passwd

Password for the SAP connection.


newpass

Changes the password during logon.

On SAP system kernels older than 46C, the password is sent in clear text through the network.


saplogon_idString defined for SAPLOGON on 32-bit Windows.
SAPGUI
use_sapgui

RFC with SAPGUI.

If the sapgui is to be started with codepage differs from 1100, please use option CODEPAGE to define the codepage you need.

0Do not use SAPGUI (default).
1Use SAPGUI.
2Use invisible SAPGUI.
grt_data

SAProuter connect data for SAPGUI when using RFC with SAPGUI.


/H/......Provides the whole router string for SAPGUI.
/P/passwordUse, if the password for the SAPGUI connection is not the same as the one for the RFC connection.
SNC Mode
snc_mode

Enable SNC.0SNC diabled (default).
1SNC enabled.
or defined by environment variable RFC_SNC_MODE
snc_libPath and name of the SNC-library.
snc_mode

Enable SNC.1SNC enabled.
or defined by environment variable RFC_SNC_MODE
snc_mynameOwn SNC name if you don't want to use the default SNC name.
snc_partnernameSNC name of the SNC partner (RFC server) or SNC name of the message server (load balancing).
scn_qop

SNC Quality of service.8Default.
RFC_SNC_QOP_DEFAULT, see RFC_SNC_QOP
Miscellaneous
abap_debugEnable debugger on RFC with ABAP.0Debugger disabled (default).
1Debugger enabled.
ashostHost name of a specific application server (R/3, no load balancing).
cfit

Conversion Fault Indicator Token.

This flag determines substitute symbol for received Unicode characters, which could not be converted by the RFC library.

0x23non Unicode systems
0xfffdUnicode systems
defined by environment variable RFC_REPL_CHAR
client
Number of the SAP client.
codepageThe given codepage is to be used for this connection (Default is either 1100 or set by RfcSetSystemCodepage or is set by SAP_CODEPAGE environment variable). Could be rather useful if the sapgui should be started with codepage differs from 1100.
comm_cpWhen communication has to be established between an Unicode library and a non-Unicode system, all char like data will be converted into codepage which matched to logon language before send them.
This codepage is called communication codepage. The effect of this method is that the non-Unicode System is sure to talk an system with communication codepage and not with an Unicode system. Usually the RFC Library determines automatically the communication codepage. Using this option it is possible for the programmer to set the communication codepage directly. This option is only active in the Unicode version of the RFC library.

dest

Destination in saprfc.ini if working with saprfc.ini.

If the RFC server is an R/2 system this destination must also be defined in the sideinfo for the SAP gateway.


gwhostHost name of the SAP gateway (if server is R/2 or External).
gwservService of the SAP gateway (if server is R/2 or External).
icce

Ignore Character Conversion Errors.

This flag determines the runtime behavior of the RFC library concerning character conversion. If this flag is 1, the concerned API will not exit with error, but replace the character which could not be converted with CFIT defined token.

0Don not ignore character conversion errors (default).
1Ignore character conversion errors.
or defined by environment variable RFC_IGNORE_CONV_ERROR
idle_timeoutInform the Web Application Server to close the connection after idle time in seconds.
lcheckLogon check at OPEN time.0Perform a logon check at OPEN time.
1Do not perform a logon check at OPEN time (default).
pcs

Partner's Char Size. The RFC-library determines automatically the partner's char size at OPEN time (using logon check) or at first call time (without logon check).
This flag tells directly the Unicode RFC library to open a connection to a system with size of char given by this value.

  • If the partner is not a Unicode system but the value of the PCS flag is 2, an error will occur (runtime exception in the remote system).
  • If the partner is a Unicode system but the value of the PCS flag is 1, the connection kind will be switched automatically. This field only works with Unicode libraries.
1Use non-Unicode character size (default).
2Use Unicode character size.
sysnrSAP system number (R/3, no load balancing).
toupperconversion of user and password to upper case for sending to Web Application Server.0Do not convert password to upper.
1Convert password to upper (default).
tphostHost name of the external RFC server program.
tpname
Path and name of the external RFC server program or Program ID of an registered RFC server program.

traceRFC trace level.0Trace errors only.
1Trace error messages and warnings (default).
2Trace error messages and a short trace.
3Trace error messages and a complete trace.
typeRFC server type, 2/3/E: R/2 or R/3 or External System.3Default.
wan_conn

RFC via Wide Area Network.

  • If LAN is used, all tables bigger than 8000 Bytes will be compressed before sent.
  • If WAN is used, all tables bigger than 250 Bytes (or value defined by environment variable RFC_WAN_THRESHOLD) will be compressed before sent. The table size will be calculated as follows: <table length> * <number of rows>.
0Use LAN (default).
1Use WLAN.

Alternative Login Possibilities

NameDescription
ALIAS_USERAn alias user name, could used instead of user or even together with USER. If both USER and ALIAS_USER are used, than they have to be match.
EXTIDDATAContains valid external user's ID of an external authentification system. User name is optional. External ID is to be defined in the backend (SAP-System).
EXTIDTYPEDefines the kind of external identity. Valid only with EXTIDDATA. Follow values are not allowed: ID, NT; DN, CA, X, HX. Additionally, RFC Library provides the feature to retrieve MYSAPSSO2 certificate from the backend after successful logon.
GETSSO2Request to create a cookie version 2 using given password and user name. If the value is 1, the cookie will be generated from user and password values given by USER=user and PASSWORD=password in the same connect_param string. Instead, user and password X.509 certificate could be used. If the RfcOpenEx call ended successfully, the generated SAP cookie version 2 can be retrieved via RfcGetTicket API.
MYSAPSSOSAP Cookie Version 1. Will be used instead of user and password for logon to backend
MYSAPSSO2SAP Cookie Version 2. Will be used instead of password for logon to backend. In this case, user name is optional.
X509CERTAn X.509 certificate will be used instead of password to logon to SAP System. In this case, user name is optional.
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.