SAP Adapter Reference
Stereotype Attributes
SAP Alias
Attribute | Description | Mandatory / Optional | Allowed Values | |
---|---|---|---|---|
Name | Specify a name for the alias. | mandatory | any string | |
Standard | ||||
user | Supply user and password. | mandatory | pattern "<user>/<password>" | |
options | A 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 | ||
host | Supply the gateway host name (optional). | mandatory | a valid SAP host | |
localhost (default) | ||||
language | Supply the SAP logon language. | optional | 1-byte SAP language like E for English, D for German | |
2-byte ISO language like EN for English, DE for German | ||||
client | Supply the SAP logon client. | mandatory | a valid SAP client | |
routerString | The router string is an additional routing information used by SAP RFC backend clients. | optional | ||
systemNumber | Supply the system number of the SAP system. | optional | default = "00" | |
sapTrace | The effect of this flag being true is two fold:
The SAP trace level has to be defined in attribute connectionString. See Client Connection Options for a list of the allowed trace level values. | optional | true | Switch SAP trace on. |
false | Switch SAP trace off. | |||
protocol | Supply the connection protocol | mandatory | rfc | to use the RFC protocol |
trfc | to use the tRFC protocol | |||
poolSize | 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.
In this case, increase the pool size to solve the problem. | optional | default = 10 |
SAP Adapters
Applicable for the following SAP adapters: SAP RFC, SAP TRFC, SAP TRFC Confirm Transaction, SAP TRFC Create Transaction.
Attribute | Description | Allowed Values / Examples |
---|---|---|
alias | Specify the SAP alias the adapter should use to establish the connection. | any valid SAP alias |
SAP Module Interface
This stereotype has no attributes.
SAP RPC Operation
Attribute | Description | Mandatory / Optional | Allowed Values / Example | |
---|---|---|---|---|
rpcResponseName | Use to overwrite the RPC response message name in the WSDL. | optional | any valid string
CODE
| |
soapInputNamespace | Use to overwrite the SOAP input namespace in the WSDL. | optional | any valid namespace string
CODE
| |
soapOutputNamespace | Use to overwrite the SOAP output namespace in the WSDL. | optional | any valid namespace string
CODE
|
SAP IDoc (Class)
The stereotype SAP IDoc is used on a class to mark it as SAP IDoc class. This stereotype has no attributes.
SAP IDoc Attribute (Class & Property)
Attribute | Description | Mandatory / Optional | Allowed Values | |
---|---|---|---|---|
decimals | Specify the number of decimals for native type | mandatory for native type | an integer value | |
offset | Specify the offset of the attribute data within the serialized IDoc segment. | mandatory | any integer value | |
externalLength | Specify the parameter length as given in the ABAP dictionary (except for FLT, INT, DATS, TIMS). | mandatory | an integer value | |
nativeType | Specify the native ABAP type. For allowed types and valid internal/native type combinations see Native SAP - ABAP - xUML Base Type Mappings. | mandatory | a valid ABAP native type as listed on Native SAP - ABAP - xUML Base Type Mappings |
SAP Parameters (Class)
The stereotype SAP Parameters is used on a class to mark it as SAP parameter class. This stereotype has no attributes.
SAP Structure (Class)
The stereotype SAP Structure is used on a class to mark it as SAP structure class. This stereotype has no attributes.
SAP Tables (Class)
The stereotype SAP Tables is used on a class to mark it as SAP tables class. This stereotype has no attributes.
SAP Adapter Operations
SAPTRFCCreateTransaction Operation
SAPTRFCCreateTransaction ( connectionString : String, transactionID : String )
Name | Type | Direction | Description |
---|---|---|---|
connectionString | String | in | Supplies the connection string (optional). |
transactionID | String | out | Returns the transaction ID of the newly created transaction. |
SAPTRFCConfirmTransaction Operation
SAPTRFCConfirmTransaction ( connectionString : String, transactionID : String )
Name | Type | Direction | Description |
---|---|---|---|
connectionString | String | in | Supplies the connection string (optional). |
transactionID | String | in | Supplies the transaction ID of the transaction to be confirmed. The transaction ID is logged as correlation ID to the transaction log (see Administration Guide > Contents of the xUML Service Transaction Log). |
SAPIDocComposer Operation
SAPIDocComposer ( anyObjectFlow : Any, idocString : String )
Name | Type | Direction | Description |
---|---|---|---|
anyObjectFlow | Any | in | Parsed IDoc object(s) 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. |
idocString | String | out | String containing IDoc data (e.g. the content of an IDoc file). |
SAPIDocRecordComposer Operation
SAPIDocRecordComposer ( anyObjectFlow : Any, EDI_DC40 : EDI_DC40[], EDI_DD40 : EDI_DD40[] )
Name | Type | Direction | Description |
---|---|---|---|
anyObjectFlow | Any | in | Parsed IDoc object(s) 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. |
EDI_DC40 | Array of EDI_DC40 | out | Array of IDoc structured control records. |
EDI_DD40 | Array of EDI_DD40 | out | Array of IDoc structured data records. |
SAPXMLIDocComposer Operation
SAPXMLIDocComposer ( anyObjectFlow : Any, idocBlob : Blob )
Name | Type | Direction | Description |
---|---|---|---|
anyObjectFlow | Any | in | Parsed IDoc object(s) 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. |
idocBlob | Blob | out | Blob containing IDoc data (e.g. the content of an IDoc file). |
SAPIDocParser Operation
SAPIDocParser ( anyObjectFlow : Any, idocBlob : Blob )
Name | Type | Direction | Description |
---|---|---|---|
idocString | String | in | String containing IDoc data (e.g. the content of an IDoc file). |
anyObjectFlow | Any | out | Parsed IDoc object(s) 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. |
SAPIDocRecordParser Operation
SAPIDocRecordParser ( EDI_DC40 : EDI_DC40[], EDI_DD40 : EDI_DD40[], anyObjectFlow : Any )
Name | Type | Direction | Description |
---|---|---|---|
EDI_DC40 | Array of EDI_DC40 | in | Array of IDoc control record strings |
EDI_DD40 | Array of EDI_DD40 | in | Array of IDoc data records strings |
anyObjectFlow | Any | out | Parsed IDoc object(s) 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. |
SAPXMLIDocParser Operation
SAPXMLIDocParser ( idocBlob : Blob, anyObjectFlow : Any )
Name | Type | Direction | Description |
---|---|---|---|
idocBlob | Blob | in | Blob containing IDoc data (e.g. the content of an IDoc file). |
anyObjectFlow | Any | out | Parsed IDoc object(s) 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. |
SAP Adapter Parameter Types
EDI_DC40
For a detailed description on the structure of ECI_DC40 and EDI_DD40 refer to the SAP documentation.
EDI_DD40
For a detailed description on the structure of ECI_DC40 and EDI_DD40 refer to the SAP documentation.
Parameters
SAP RFC Adapter
Name | Type | Direction | Description |
---|---|---|---|
connectionString | String | in | Supplies the connection string (optional). |
import | Any | in | The class specifying the type of this parameter must have stereotype SAP Parameters. |
export | Any | out | The class specifying the type of this parameter must have stereotype SAP Parameters. |
changing | Any | in/out | The class specifying the type of this parameter must have stereotype SAP Parameters. |
tables | Any | in/out | The class specifying the type of this parameter must have stereotype SAP Tables. |
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>"...
If you do not conform with this pattern, this can lead to options not being recognized. 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
Name | Description | Values | |
---|---|---|---|
Load Balancing | |||
group | Name of the group of application servers (if using load balancing). | ||
mshost | Host name of the Message Server (if using Load Balancing). | ||
msserv | Service of the Message Server (if using Load Balancing). | ||
r3name | Name 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_id | String 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. | 0 | Do not use SAPGUI (default). |
1 | Use SAPGUI. | ||
2 | Use invisible SAPGUI. | ||
grt_data | SAProuter connect data for SAPGUI when using RFC with SAPGUI. | /H/...... | Provides the whole router string for SAPGUI. |
/P/password | Use, if the password for the SAPGUI connection is not the same as the one for the RFC connection. | ||
SNC Mode | |||
snc_mode | Enable SNC. | 0 | SNC diabled (default). |
1 | SNC enabled. | ||
or defined by environment variable RFC_SNC_MODE | |||
snc_lib | Path and name of the SNC-library. | ||
snc_mode | Enable SNC. | 1 | SNC enabled. |
or defined by environment variable RFC_SNC_MODE | |||
snc_myname | Own SNC name if you don't want to use the default SNC name. | ||
snc_partnername | SNC name of the SNC partner (RFC server) or SNC name of the message server (load balancing). | ||
scn_qop | SNC Quality of service. | 8 | Default. |
RFC_SNC_QOP_DEFAULT, see RFC_SNC_QOP | |||
Miscellaneous | |||
abap_debug | Enable debugger on RFC with ABAP. | 0 | Debugger disabled (default). |
1 | Debugger enabled. | ||
ashost | Host 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. | 0x23 | non Unicode systems |
0xfffd | Unicode systems | ||
defined by environment variable RFC_REPL_CHAR | |||
client | Number of the SAP client. | ||
codepage | The 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_cp | When 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. | ||
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. | ||
gwhost | Host name of the SAP gateway (if server is R/2 or External). | ||
gwserv | Service 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. | 0 | Don not ignore character conversion errors (default). |
1 | Ignore character conversion errors. | ||
or defined by environment variable RFC_IGNORE_CONV_ERROR | |||
idle_timeout | Inform the Web Application Server to close the connection after idle time in seconds. | ||
lcheck | Logon check at OPEN time. | 0 | Perform a logon check at OPEN time. |
1 | Do 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).
| 1 | Use non-Unicode character size (default). |
2 | Use Unicode character size. | ||
sysnr | SAP system number (R/3, no load balancing). | ||
toupper | conversion of user and password to upper case for sending to Web Application Server. | 0 | Do not convert password to upper. |
1 | Convert password to upper (default). | ||
tphost | Host 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. | ||
trace | RFC trace level. | 0 | Trace errors only. |
1 | Trace error messages and warnings (default). | ||
2 | Trace error messages and a short trace. | ||
3 | Trace error messages and a complete trace. | ||
type | RFC server type, 2/3/E: R/2 or R/3 or External System. | 3 | Default. |
wan_conn | RFC via Wide Area Network.
| 0 | Use LAN (default). |
1 | Use WLAN. |
Alternative Login Possibilities
Name | Description |
---|---|
ALIAS_USER | An 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. |
EXTIDDATA | Contains 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). |
EXTIDTYPE | Defines 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. |
GETSSO2 | Request 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. |
MYSAPSSO | SAP Cookie Version 1. Will be used instead of user and password for logon to backend |
MYSAPSSO2 | SAP Cookie Version 2. Will be used instead of password for logon to backend. In this case, user name is optional. |
X509CERT | An X.509 certificate will be used instead of password to logon to SAP System. In this case, user name is optional. |
SAPAdapter_RFC_Example
Click here to download a simple example model that shows the usage of the SAP adapter for RFCs in Scheer PAS Designer.