The structure of application-specific business objects in the WebSphere Business Integration system is set by Ariba Buyer and mirrors the structure of the Ariba Buyer message object. Ariba Buyer currently supports two types of message object:
These message types are converted to business objects of one type or the other. Most Ariba Buyer events are of the request-response type.
Business objects inherit their names from the matching Ariba Buyer message objects. The names combine structural divisions, using the Ariba variant and partition names, and topic name. For example, SAP_NA_PurchaseOrderPush.
Business object names may not exceed 80 characters in length. If the business object name is longer than 80 characters, the ODA will display an error message and exit during business object generation. To avoid this, keep variant and partition names short.
If you do encounter this error, shorten the length of the TopicName in the MessageConfiguration.table and MessageDefinition.table files and regenerate your business object definitions. For details, see Generating business object definitions.
Business objects contain two sets of fields:
The common fields are described in Table 9, and the additional fields in Table 10 and Table 11.
Table 9. Required fields for all business objects
Required field | Type | Description |
---|---|---|
Variant | String | Name of the variant that sent or will receive this message. |
Partition | String | Name of the partition that sent or will receive this message. |
TopicName | String | Uniquely
identifies an event. Default key value when creating business object definitions. |
ReplyKey | String | Uniquely
identifies the message. Generated by the integration channel
for asynchronous events only. |
Table 10 lists the additional fields required for all business objects of Request-Response type only.
Table 10. Required fields for Request-Response business objects
Required field | Cardinality | Type | Description |
---|---|---|---|
RequestSchema | 1 | Specified by
MergedSchemaName (if present) or SchemaName in MessageConfiguration.table. |
Specifies request data types. |
PullSchema_<n> | N | One
PullSchema exists for each Signature.Pull.Schema type defined in MessageDefinition.table. |
Specifies response data types. |
Table 11 lists the additional fields required for all business objects of Subscribe type only.
Table 11. Required fields for Subscribe business objects
Required field | Cardinality | Description |
---|---|---|
SubscribeSchema | N | An attribute
specifies the inbound object type for each schema defined in the MessageDefinition.table. |
Every business object contains a verb, which describes how the data in the application-specific business object should be handled by the receiving application. Ariba Buyer defines a set of operations that are similar to verbs, but that describe only how incoming data should be loaded into the Ariba Buyer database.
Verbs and operations are handled as follows:
Table 12 shows the correlation between incoming application-specific business object verbs and Ariba Buyer operations.
Table 12. Correlation between ASBO verbs and Ariba Buyer operations
Verb (WBI) | Operation (Ariba Buyer) | Action |
---|---|---|
Create | Create | Creates any new objects in Ariba Buyer. |
Delete | Delete | Removes from
Ariba Buyer any objects that are in the message. |
Retrieve | N/A | Ariba Buyer cannot perform retrieves. |
Update | "Load And Delete" | Updates new
data values for existing objects, creates new objects, and deletes objects in Ariba Buyer that do not exist in the incoming message. |
ABUpdate | Update | Updates new
data values for existing objects. Does not create new objects or delete objects in Ariba Buyer that do not exist in the incoming message. |
Load | Load | Updates new
data values for existing objects and creates new objects. |
Update_And_Delete | "Update And Delete" | Updates new
data values for existing objects. If the object does not exist in the incoming message, it is deleted from Ariba Buyer. |
Update_Elements_Only | "Update Elements Only" | Updates vector objects. |
The connector has various properties that you can set on its business object attributes. The tables below list the attributes and their values.
Table 13 lists simple attributes.
Attribute | Property |
---|---|
Name | Specifies the business object field name. |
Type | Specifies the business object field type. |
MaxLength | 255 by default. |
IsKey | Each business
object must have at least one key attribute, which you
specify by setting the key property to true for an attribute. |
IsForeighKey | Not used. |
Is Required | Not used. |
AppSpecInfo | Holds the original Java type. |
DefaultValue | Specifies a
default value that the connector uses for a simple attribute
in the inbound business object if the attribute is not set and is a required attribute. |
Table 14 shows the properties for child object attributes.
Table 14. Child object attributes
Attribute | Description |
---|---|
Name | Specifies the business object field name. |
Type | Specifies the business object field type. |
Contained ObjectVersion |
For all
attributes that represent child business objects, this property
specifies the child's business object version number. |
Relationship | If the child is a container attribute, this is set to Containment. |
IsKey | Set to true if the attribute name equals UniqueName, otherwise it is set to false. |
IsForeighKey | Not used. |
Is Required | Not used. |
AppSpecInfo | Holds the original Ariba Buyer field name. |
Cardinality | Set to N if the type represents an array or vector, otherwise set to 1. |
Application-specific information provides the connector with application-dependent instructions on how to process business objects. If you extend or modify a business object definition, you must make sure that the application-specific information in the definition matches the syntax that the connector expects.
Application-specific information can be specified on the business object and also on each business object attribute.
The application-specific information for the business object handles two key properties for the adapter for Ariba Buyer. They are:
The application-specific information for the business object attributes holds the original Ariba Buyer-specific java type.