Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Published by Scroll Versions from space WBRIDGE and version 21.1

...

The difference to RFC, tRFC implements an additional transaction handling. This transaction handling must guarantee that a transaction is executed exactly once. The following simple example shows how to use the transaction mechanism offered by SAP. The proper transaction control is implemented elsewhere (cf. in the E2E SAP module).

Figure: tRFC Service Use Case Diagram

...

The operation IDOC_INBOUND_ASYNCHRONOUS gets called when SAP is transmitting an IDoc to the E2E Bridge. The implementation of this operation can be found in the next section.

...

Info
iconfalse

Only inbound data flow is allowed for SAP tRFC functions. That is tables and importing parameters. Additionally, when implementing a tRFC function, the modeler can access the current transaction ID via the transactionID input parameter.

tRFC Service Components

Builder 6 Each <<E2ESAPRFCService>> that uses tRFC contains at least two residents:

...

Info
iconfalse

The Model Compiler throws an error, if a composite service contains more than one <<E2ESAPRFCService>> component. This constraint is given by the very nature of a SAP gateway. Each operating system process must register exactly one program ID at the gateway, otherwise the dispatching of SAP requests to the RFC service is not unique. Now, each xUML service runs in its own Bridge process, thus unique dispatching can only be achieved by allowing only one RFC service - i.e. one program ID - per xUML service.

 tRFC Service Components of Builder Version 5.1

Deprecated since Builder 6.0

Basically, tRFC server components must be registered at the so-called SAP gateway. For example, the artifact tRFCServiceDeployment is registered at the gateway-artifact sapgw00 via the program ID E2E_RFC_ZERTIFI_SERVER_ID.

The program ID must be defined on the SAP system in transaction SM59. This transaction enables the user to define TCP/IP connections (connection type T). Each such connection has an associated program ID that must be exactly the same string as used for the tagged value programID on the <<Register>> dependency. Note, that this string is case sensitive. The <<Register>> dependency points to a component artifact having the name of the SAP gateway the server registers on. This name is given by: sapgw + system number of the SAP system.

The Model Compiler throws an error if a configuration contains more than one SAP RFC service. This constraint is given by the very nature of the SAP gateway. Each operating system process must register exactly one program ID at the gateway if the dispatching of SAP requests to the RFC

service

shall be unique. Now, each configuration runs in its own Bridge process. Thus, we achieve unique dispatching by allowing only one RFC service - i.e. one program ID - per configuration

.

Expand
titleClick here to read the documentation of the component diagram used in E2E Builder releases before 6.0 ...

Each <<E2ESAPRFCService>> that utilizes tRFC contains at least two residents: One and only one <<E2ESAPTRFCCallbacks>> class holding operations to control transactional behavior (for instance the TRXLogging class beneath) and one or more <<E2ESAPRFCModule>> classes containing operations called by the SAP system to exchange data. For instance, see the IDocInterface class depicted in the deployment diagram beneath. The implementation of these operations is similar to the implementation of standard RFC operations. The only difference results from the asynchronous nature of tRFC operations - they handle input only.

Figure: tRFC Service Component Diagram

Image Removed

The components are manifested by their artifacts, which instantiating the components and annotating all configuration information to run these components on their target systems. The tRFCServiceDeployment has the following tagged values:

Tagged ValueDescriptionMandatory/Optional
protocolmust be trfc when using the tRFC protocolmandatory
tracePortThe same operations that are called by the SAP system can also be called by SOAP test tool if the configuration has been compiled in trace mode. However, the SOAP test tool requires an HTTP TCP/IP port. This port can be defined in the tracePort tagged value. If this value is not set, the trace port is given by controlPort + 50000.optional
sapTraceThe effect of this flag being true is two fold: First, the SAP RFC libraries will write trace file information (.trc) into the directory the configuration 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.optiona
Note
iconfalse