You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

The Designer offers to communicate with an SAP server via the SAP RFC (Remote Function Call) protocol. You can invoke RFC functions using the SAP adapter, e.g. RFC enabled ABAP programs can be called as RFC functions. When calling RFC functions, the xUML service acts as an RFC client.

This requires the following steps:

  1. Define the SAP interface, resp. the RFC arguments.
  2. Use the SAP adapter to perform an RFC.


Defining the SAP Interface

The adapter interface follows the SAP ABAP conventions. Each SAP ABAP function has four parameter sections:

  • import (input)
  • export (output)
  • changing (input/output)
  • tables (IDoc handling)

These parameters are mapped to the input and output parameters of the SAP 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
The attributes and associations of this class correspond to the parameters given by the import section of the ABAP function declaration.
export Any out The class specifying the type of this parameter must have stereotype SAP Parameters
The attributes and associations of this class correspond to the parameters given by the export section of the ABAP function declaration (see the export parameters in SAP).
changing Any in/out The class specifying the type of this parameter must have stereotype SAP Parameters.
The attributes and associations of this class correspond to the parameters given by the changing section of the ABAP function declaration
tables Any in/out The class specifying the type of this parameter must have stereotype SAP Tables.
The attributes and associations of this class correspond to the parameters given the tables section of the ABAP function declaration.

SAP Parameters

You need dedicated classes describing the interface of the RFC and the parameters. When calling for example the RFC_SYSTEM_INFO function, we need a set of export (output) parameters defined as properties on a dedicated class Export.

To specify the type mapping (see also SAP - ABAP Types Mappings), each property needs to have the stereotypes SAPIDocAttribute and XMLElement, that can have the following stereotype attributes:

AttributeDescriptionMandatory
nativeType

Specify the native ABAP type. For allowed types and valid internal/native type combinations see appendix beneath.

mandatory
internalLengthSpecify the parameter length as given in the ABAP dictionary (except for FLT, INT, DATS, TIMS).mandatory
decimalsSpecify the number of decimals if there are any.mandatory for native type DEC

In any case, the upper multiplicity of the properties or associations must NOT be greater than one. Otherwise, the classes cannot be mapped to SAP parameters and SAP tables should be used instead.

So, for the RFC_SYSTEM_INFO example, the structure would look like the following:

RFC_SYSTEM_INFO ExampleStereotypeStereotype Attributes


SAP


Interfaces



RFCPort_RFC_SYSTEM_INFOSAPRFCModuleInterface


RFC_SYSTEM_INFO

SOAPRPCOperation


out export : Export



Types

Export

 SAPParameters


CURRENT_RESOURCES : Integer

MAXIMAL_RESOURCES : Integer

RECOMMENDED_DELAY : Integer

RFCSI_EXPORT : RFCSI

RFCSI

SAPStructure



RFCCHARTYPE : String

SAPIDocAttribute

  • nativeType = CHAR
  • internalLenght = 4

XMLElement

  • order = 2


RFCDATABS : String

SAPIDocAttribute

  • nativeType = CHAR
  • internalLenght = 8

XMLElement

  • order = 8

...

......

The listed order attribute of the property derives from the order in the SAP data structure RFCSI.

The SAP types yet supported are listed on Native SAP - ABAP - xUML Base Type Mappings. Each SAP native type is mapped to an xUML base type. Because SAP types are sometimes restricted in their length and number of decimals, use stereotype attributes to transport this meta information as shown ion the table above.
For details on the native type definitions, refer to the SAP documentation.

Calling ABAP Functions via RFC

Call the ABAP function via RFC by dragging it onto a diagram. 

You can drag out operations from the data model to any diagram:

The example below shows how to add a SAP adapter operation to an BPMN execution diagram.

It needs to get stereotype SAPRFCAdapter applied. The stereotype attribute alias points to the alias that defines the route to the SAP system that should be accessed.

Configuring the SAP Adapter Operation

Once a SAP operation has been added to a diagram, it needs to be configured as a SAP adapter.

Select the newly added SAP adapter operation and switch to the Attributes panel. Depending on the diagram type you can see the following information (example BPMN execution diagram):

AttributeDescriptionAllowed Values / Examples
NameThe name of the SAP adapter operation. RFC_SYSTEM_INFO
TypeThe path to the operation within the data model. SAP.Interfaces.RFCPort_RFC_SYSTEM_INFO
Symbol Type
Operations added to an execution diagram are execution steps.Execution Step

All of this is predefined and cannot be changed.

Click Add Stereotype to define the selected operation as to be a SAP adapter.

Select SAPRFCAdapter from the list of available adapter stereotypes.
Click Save.

The Attributes panel now shows the added adapter stereotype. Now you still need to configure the adapter.

Expand the stereotype by clicking the arrow on the right.

A SAP adapter is configured via its alias.

Click the    icon to add an alias to the SAP adapter.


You can select an existing alias from a drop-down list by clicking the text Select alias.

If you want to remove an added alias, click the    icon on the right or select None from the drop-down list:

You can also create and add a new alias by clicking the corresponding    icon.

Refer to Aliases for more information on how to create a new alias.

A new dialog opens where you can name and configure the new alias.

Refer to SAP Adapter Reference for more information on the configuration options of this adapter.

On this Page:

SAPAdapter_RFC_Example

Click the icon to download a simple example model that shows the usage of the SAP adapter for RFCs in Scheer PAS Designer.

  • No labels