Use the SAPInput node to accept input from an SAP application.
This topic contains the following sections:
Use the SAPInput node to accept input from SAP applications. For example, the SAPInput node might monitor an SAP system for new purchase orders. When a new purchase order is raised, the SAPInput node generates a message tree that represents the business object with the new purchase order details. The message tree is propagated to the Out terminal so that the rest of the message flow can use the data to update other systems, or to audit the changes.
The SAPInput node is contained in the WebSphere Adapters drawer of the message flow node palette, and is represented in the IBM® Integration Toolkit by the following icon:
The SAPInput node needs an adapter component to function correctly. You set the component by using the Adapter component node property and business object definitions, which are stored in the message set that you reference from the node. For this reason, you must provide a message set. By default, the message that is propagated from the SAPInput node is in the DataObject domain, so the Message domain property is set to DataObject. You cannot specify a different domain. The message type is detected automatically by the node.
The SAPInput node populates the route-to-label destination list with the name of the method binding. If you add a RouteToLabel node to the message flow after the SAPInput node, the RouteToLabel node can use the name of the method binding to route the message to the correct part of the message flow for processing.
You can deploy only one input node that uses a particular adapter component to an integration server, but you can deploy many input nodes that use different adapter components to an integration server.
mqsisetdbparms broker name -n adapter name -u user name -p password
For
example:mqsisetdbparms BRK1 -n eis::SAPCustomerInbound.inadapter -u sapuid -p ********
Using configurable services for SAP nodes
SAP nodes can get SAP connection details from either the adapter component or a configurable service. By using a configurable service, you can change the connection details for an adapter without the need to redeploy the adapter. For more details about creating, changing, reporting, and deleting the configurable services for SAP, see Changing connection details for SAP adapters.
Generic IDoc routing
By using the SAPInput node in passthrough mode, IBM Integration Bus can receive any IDoc and route it according to IDoc type. For more information, see Generic IDoc routing. You can use a pattern to process IDocs of various kinds with a single RFC program ID without having to redeploy or rediscover existing message sets and adapters, even when adding new types of IDoc. For more information, look at the pattern: Data distribution SAP to WebSphere® MQ: one-way (for IDoc). You can view patterns in the product documentation by using the links only when you use the product documentation that is integrated with the IBM Integration Toolkit, or when you use the online product documentation.
You can view information about samples only when you use the product documentation that is integrated with the IBM Integration Toolkit or the online product documentation. You can run samples only when you use the product documentation that is integrated with the IBM Integration Toolkit.
When you have put an instance of the SAPInput node into a message flow, you can configure it; see Configuring a message flow node. The properties of the node are displayed in the Properties view. If you double-click an SAPInput node, you open the Adapter Connection wizard. All mandatory properties for which you must enter a value (those properties that do not have a default value defined) are marked with an asterisk.
The SAPInput node terminals are described in the following table.
Terminal | Description |
---|---|
Out | Business object events from the adapter are sent to the Out terminal. |
Failure | If an error occurs in the SAPInput node, the message is propagated to the Failure terminal. Information about the error, and business object events can also be propagated to the Failure terminal. |
Catch | Business object events are sent to the Catch terminal if they cause an uncaught exception in the message flow. If the Catch terminal is not connected, the retry process is activated to handle the business object. |
The following tables describe the node properties. The columns headed M indicate whether the property is mandatory (marked with an asterisk if you must enter a value when no default is defined); the columns headed C indicate whether the property is configurable (you can change the value when you add the message flow to the BAR file to deploy it).
Property | M | C | Default | Description |
---|---|---|---|---|
Node name | No | No | The node type, SAPInput | The name of the node. |
Short Description | No | No | A brief description of the node. | |
Long Description | No | No | Text that describes the purpose of the node in the message flow. |
Property | M | C | Default | Description | mqsiapplybaroverride command property |
---|---|---|---|---|---|
Primary adapter component | Yes | Yes | The name of the adapter component that contains
configuration properties for the adapter. Either enter a name of an
adapter file, or click Browse to select an
adapter file from the list of files that are available in referenced
message set projects. When the SAPInput node receives data from the SAP system, it associates that data with a method name, depending on the service operation name that is assigned to that type of data when you run the Adapter Connection wizard. The SAPInput node attempts to handle methods that are defined in the primary adapter. If the type of data that is received does not correspond to any of the methods that are defined in the primary adapter, the node can handle methods that are defined in matching secondary adapters that are deployed to the same integration server. |
adapterComponent | |
Secondary adapter mode | No | Yes | None | Specifies whether the node can handle methods
that are defined in secondary adapters. If you set the Secondary adapter mode property to None, the node handles only methods that are defined in the primary adapter. If the type of data that is received does not correspond to any of the methods that are defined in the primary adapter, a failure occurs. If you set this property to All adapters in application, the node can handle methods that are defined in matching SAP inbound adapters that are deployed to the same application. If the node is deployed as an independent resource (that is, it is not contained within an application), the node can call methods that are defined in any SAP inbound adapter that is also deployed as an independent resource. |
secondaryAdapterMode |
Property | M | C | Default | Description |
---|---|---|---|---|
Maximum client wait time (secs) | No | Yes | 60 | The time (in seconds) for the SAP system to
wait for a reply to be returned by an SAPReply node. The default
value is 60 seconds. If a reply is sent to an SAPReply node after the timeout,
the SAPReply node issues
an exception. If the broker is stopped while the adapter is waiting
for an SAPReply node to
provide a reply, a system failure is sent back to the SAP system. If you set this property to zero (0), the SAP system waits indefinitely for a reply to be returned by an SAPReply node. This property is applicable to synchronous callback mode only; it does not apply to asynchronous BAPIs or IDOCs. If you set this property for an SAPInput node that is configured with an adapter that is not for synchronous callback, a warning is issued. |
Property | M | C | Default | Description |
---|---|---|---|---|
Set destination list | No | No | Selected | Specifies whether to add the method binding name to the route-to-label destination list. If you select this check box, the method binding name is added so that you can use a RouteToLabel node in the message flow after the SAPInput node. |
Label prefix | No | No | The prefix to add to the method name when routing to a label. Add a label prefix to avoid a clash of corresponding label nodes when you include multiple WebSphere Adapters input nodes in the same message flow. By default, there is no label prefix, so the method name and label name are identical. |
Property | M | C | Default | Description |
---|---|---|---|---|
Message domain | No | No | DataObject | The domain that is used to parse the incoming message. By default, the message that is propagated from the SAPInput node is in the DataObject domain. You cannot specify a different domain. |
Message set | Yes | No | Set automatically | The name of the message set in which the incoming
message is defined. This field is set automatically from the Adapter component property. If you set this property, then later update the project dependencies to remove this message set reference, a warning is issued. Either update the Message set property, or restore the reference to this message set project. |
Message type | No | No | The name of the incoming message. The node detects the message type automatically. You cannot set this property. | |
Message format | No | No | The name of the physical format of the incoming message. You cannot set this property. |
Property | M | C | Default | Description |
---|---|---|---|---|
Transaction mode | No | No | Yes | The transaction mode on this input node determines whether the rest of the nodes in the message flow are executed under sync point. |
Property | M | C | Default | Description | mqsiapplybaroverride command property |
---|---|---|---|---|---|
Additional instances pool | No | Yes | Use Pool Associated with Message Flow | The pool from which additional instances are
obtained.
|
componentLevel |
Additional instances | No | Yes | 0 | The number of additional instances that the node can start if the Additional instances pool property is set to Use Pool Associated with Node. By default, no additional instances are given to the node. | additionalInstances |
Property | M | C | Default | Description | mqsiapplybaroverride command property |
---|---|---|---|---|---|
Retry mechanism | No | No | Failure | Specifies how retry processing is handled when
a failure is rolled back to the SAPInput node.
|
|
Retry threshold | No | Yes | 0 | The maximum number of times that retry processing is performed for short retry. | retryThreshold |
Short retry interval | No | Yes | 0 | The interval between short retry attempts. | shortRetryInterval |
Long retry interval | No | Yes | 0 | The interval between long retry attempts. | longRetryInterval |
Property | M | C | Default | Description |
---|---|---|---|---|
Events | No | No | None | Events that you have defined for the node are
displayed on this tab. By default, no monitoring events are defined
on any node in a message flow. Use Add, Edit,
and Delete to create, change or delete monitoring
events for the node; see Configuring monitoring event sources using monitoring properties for details. You can enable and disable events that are shown here by selecting or clearing the Enabled check box. |