IBM BPM, V8.0.1, All platforms > Authoring services in Integration Designer > Services and service-related functions > Access external services with adapters > Configure and using adapters > IBM WebSphere Adapters > Oracle E-Business Suite > Reference > Business object information

Attribute application-specific information

Application-specific information (ASI) for business object attributes differs depending on whether the attribute is a simple attribute, or is an attribute that represents a child or an array of child business objects. The application-specific information for an attribute that represents a child differs depending on whether the parent-child relationship is stored in the child or in the parent.


Application-specific information for simple attributes

For simple attributes, the format for application-specific information consists of a number of parameters and their values. The only parameter that is required for a simple attribute is the column name. The application-specific information for simple attributes is described in Table 1.

Application-specific information for simple attributes
Parameter Type Description Default value
BLOB Boolean Indicates whether the database column that corresponds to this attribute has the BLOB data type. While displaying BLOB data, the adapter displays the number of bytes as a hexadecimal value. The attribute type is hexBinary.

If True, the column data type is BLOB.

None
ByteArray Boolean Specifies whether the column is a binary data type. If True, the adapter reads and writes binary data to the database and sends that data as a string to the application server. The adapter sets binary data on the business object. The attribute type is hexBinary. False
ChildBOType String If the attribute is a complex data type, use this application-specific information to specify the actual type:

  • Struct

  • Array
  • ResultSet

None
ChildBOTypeName String When the value of the ChildBOType application-specific information is either Struct or Array, this parameter value represents the name of the user-defined type. This value is case-sensitive.  
CLOB Boolean Indicates whether the database column that corresponds to this attribute has the CLOB data type. This value applies only to attributes of type String.

If True, the column data type is CLOB.

The CLOB attribute has a String Type whose length is used to define the length of the CLOB.

None
ColumnName String The name of the database column corresponding to this attribute.

This is the only required parameter.

None
CopyAttribute String A user-specified value that refers to another attribute name from within the same business object or parent business object.

If the value set in the application-specific information refers to the name of another attribute within the same business object, then the adapter uses the value of the other attribute to set the value of this attribute (on which application-specific information is defined) before it adds the business object to the database during a Create operation.

For example, if you want the contact column of a new row in the table to contain the same value as the email column, set the CopyAttribute parameter of the contact attribute to email.

The value cannot reference an attribute in a child business object, but it can reference an attribute in the parent business object by preceding the name with two periods.

For example, you can reference the ccode attribute in a parent business object as ..ccode.

If you do not include this parameter in the application-specific information, the adapter uses the value of the current attribute without copying the value from another attribute.

None
DateType String Specifies that the corresponding element is a date or time stamp type. Specify one of the following values:

  • Date
  • Timestamp

When setting the value of an attribute of the DateType type, use the following formats:

  • For Date, use yyyy-MM-dd

  • For Timestamp, use yyyy-MM-dd hh:mm:ss.fffffffff

The adapter uses the Timestamp value present in the database. To learn more about the Timestamp method, go to the Sun website at http://java.sun.com/j2se/1.5.0/docs/api/ and search for Timestamp.

None
FixedChar Boolean Specifies whether the attribute is of fixed length when the columns in the table are of type CHAR, not VARCHAR.

For example, when set to true, if a particular attribute is linked to a column that is of type CHAR, the adapter pads the attribute value with blanks to the maximum length of the attribute when querying the database.

This parameter must be updated manually in the XSD file for the business object. Open the business object by using an XML or text editor to edit the XSD file. Two changes must be made, as follows:

  1. Remove the type="string" added by default to the <element> tag for the object attribute.

  2. Add a new <simpletype> section before the </element> tag, as in this example:
    <xsd:simpleType>
    <xsd:restriction base="xsd:string">
    <xsd:maxLength value="10"/>
    </xsd:restriction>
    </xsd:simpleType>

Save the object definition, and ensure that no validation errors occur in the XSD file after it has been updated.

Following this table, see the Example of FixedChar parameter in the business object XSD file.

false
ForeignKey String The value of this property depends on whether the parent-child relationship is stored in the parent business object or in the child.

If the relationship is stored in the parent, the value includes both the type of the child business object and the name of the attribute in the child to be used as the foreign key (Child_BO_name/Child_Property_Name).

If the relationship is stored in the child, set the value to include only the name of the attribute in the parent to be used as the foreign key.

If an attribute is not a foreign key, do not include this parameter in the application-specific information.

None
OrderBy String If a value is specified and the attribute is in a child business object, the adapter uses the value of the attribute in the ORDER BY clause of retrieval queries.

The adapter can retrieve child business objects in either ascending order (ASC) or descending order (DESC). If you do not include this parameter in the application-specific information, the adapter does not specify the retrieval order.

None
PrimaryKey Boolean If the column associated with this attribute is a primary key in the corresponding table in the database, PrimaryKey is to True, None
SPParameterType String Specifies the type of stored procedure

Possible values are:

  • IP (input only)
  • OP (output only)
  • IO (input and output)
  • RS (result set)

None
UniqueIdentifier (UID) String The adapter uses this parameter to generate the unique ID for the business object. It supports the generation of sequences and identity columns.

The format of this parameter is as follows:

UID=AUTO| Sequence_Name

For a sequence, set the UID attribute to the name of the sequence.

For an identity column, set the UID attribute to AUTO.

If the attribute does not require a unique ID, do not include this parameter in the application-specific information.

None
DateFormat String Allows you to customize the format of the Date and Timestamp data types in the Application Info section of the Properties view in IBM Integration Designer. None

The format of attribute application-specific information is shown in the following example section of an XSD file:


Example section of an XSD file

<element name="pkey" nillable="true"
                        minOccurs="0" maxOccurs="1">
                        <annotation xml:space="preserve">
                  <appinfo

       source="http://www.ibm.com/xmlns/prod/websphere/j2ca/oracle/
metadata">

                        <oracleasi:OracleAttributeTypeMetadata
       xmlns:oracleasi="http://www.ibm.com/xmlns/prod/websphere/j2ca/
oracle/metadata">

       <oracleasi:ColumnName>PKEY</oracleasi:ColumnName>

       <oracleasi:PrimaryKey>true</oracleasi:PrimaryKey>

       <oracleasi:FixedChar>true</oracleasi:FixedChar>
                         </oracleasi:OracleAttributeTypeMetadata>
                   </appinfo>
            </annotation>
            <simpleType>
            <restriction base="string">
            <maxLength value="10"/>
            </restriction>
         </simpleType>         
                  </element>
                  <element name="ccode" type="string" nillable="true"
                        minOccurs="0" maxOccurs="1">
                        <annotation xml:space="preserve">
<appinfo 
source="http://www.ibm.com/xmlns/prod/websphere/j2ca/oracle/metadata">
<oracleasi:OracleAttributeTypeMetadata 
xmlns:oracleasi="http://www.ibm.com/xmlns/prod/websphere/j2ca/oracle/
metadata">
<oracleasi:ColumnName>CCODE</oracleasi:ColumnName>
<oracleasi:PrimaryKey>false</oracleasi:PrimaryKey>
<oracleasi:ForeignKey>custinfoobj/ccode</oracleasi:ForeignKey>
</oracleasi:OracleAttributeTypeMetadata>
</appinfo>
</annotation>
                  </element>
                  <element name="fname" type="string" nillable="true"
                        minOccurs="0" maxOccurs="1">
                        <annotation xml:space="preserve">
<appinfo 
source="http://www.ibm.com/xmlns/prod/websphere/j2ca/oracle/metadata">
<oracleasi:OracleAttributeTypeMetadata 
xmlns:oracleasi="http://www.ibm.com/xmlns/prod/websphere/j2ca/oracle/
metadata">
<oracleasi:ColumnName>FNAME</oracleasi:ColumnName>
<oracleasi:PrimaryKey>false</oracleasi:PrimaryKey>
</oracleasi:OracleAttributeTypeMetadata>
</appinfo>
</annotation>
                  </element>
                  <element name="lname" type="string" nillable="true"
                        minOccurs="0" maxOccurs="1">
                        <annotation xml:space="preserve">
<appinfo 
source="http://www.ibm.com/xmlns/prod/websphere/j2ca/oracle/metadata">
<oracleasi:OracleAttributeTypeMetadata 
xmlns:oracleasi="http://www.ibm.com/xmlns/prod/websphere/j2ca/oracle/
metadata">
<oracleasi:ColumnName>LNAME</oracleasi:ColumnName>
<oracleasi:PrimaryKey>false</oracleasi:PrimaryKey>
</oracleasi:OracleAttributeTypeMetadata>
</appinfo>
</annotation>
                  </element>
                  <element name="custinfoobj"
                        type="rtassercustinfo:RtasserCustinfo" 
nillable="true" minOccurs="0"
                        maxOccurs="1">
                        <annotation xml:space="preserve">
<appinfo 
source="http://www.ibm.com/xmlns/prod/websphere/j2ca/oracle/metadata">
<oracleasi:OracleAttributeTypeMetadata 
xmlns:oracleasi="http://www.ibm.com/xmlns/prod/websphere/j2ca/oracle/
metadata">
<oracleasi:Ownership>true</oracleasi:Ownership>
<oracleasi:KeepRelationship>false</oracleasi:KeepRelationship>
</oracleasi:OracleAttributeTypeMetadata>
</appinfo>
</annotation>
                  </element>


Example of FixedChar parameter in the business object XSD file

<element name="pkey" nillable="true"
                        minOccurs="0" maxOccurs="1">
                        <annotation xml:space="preserve">
                  <appinfo

       source="http://www.ibm.com/xmlns/prod/websphere/j2ca/oracle/
metadata">
                         <oracleasi:OracleAttributeTypeMetadata

       xmlns:oracleasi="http://www.ibm.com/xmlns/prod/websphere/j2ca/
oracle/metadata">

       <oracleasi:ColumnName>PKEY</oracleasi:ColumnName>

       <oracleasi:PrimaryKey>true</oracleasi:PrimaryKey>

       <oracleasi:FixedChar>true</oracleasi:FixedChar>
                         </oracleasi:OracleAttributeTypeMetadata>
                   </appinfo>
             </annotation>
             <simpleType>
             <restriction base="string">
             <maxLength value="10"/>
             </restriction>
          </simpleType>         
</element>


Application-specific information for attributes of type child business object

Two application-specific information parameters are used for attributes that refer to child business objects (complex, as opposed to simple, attributes). When you set this application-specific information, specify the parameters listed in Table 2.

Application-specific information for attributes of type child business object
Parameter Type Description Default value
KeepRelationship Boolean If True, this parameter prevents the deletion of a child business object during an Update operation. None
Ownership Boolean This parameter specifies that a child business object is owned by the parent. If True, then Create, Update, and Delete operations on the child business object are allowed.

If False, then no updates can be applied to the child business object. When its parent is created, the existence of the child is validated to ensure that relationship integrity is maintained in the database.

None


Example of ownership in the business object XSD file

<element name="addressobj"
                        type="rtasseraddress:RtasserAddress" 
nillable="true" 
                        minOccurs="0"
                        maxOccurs="unbounded">
                        <annotation xml:space="preserve">
<appinfo 
source="http://www.ibm.com/xmlns/prod/websphere/j2ca/oracle/metadata">
<oracleasi:OracleAttributeTypeMetadata 
xmlns:oracleasi="http://www.ibm.com/xmlns/prod/websphere/j2ca/oracle/
metadata">
<oracleasi:Ownership>true</oracleasi:Ownership>
</oracleasi:OracleAttributeTypeMetadata>
</appinfo>
</annotation>
</element>

<element name="custinfoobj"
                         type="rtassercustinfo:RtasserCustinfo" 
nillable="true"                                  minOccurs="0"
                         maxOccurs="1">
                         <annotation xml:space="preserve">
<appinfo 
source="http://www.ibm.com/xmlns/prod/websphere/j2ca/oracle/metadata">
<oracleasi:OracleAttributeTypeMetadata 
xmlns:oracleasi="http://www.ibm.com/xmlns/prod/websphere/j2ca/oracle/
metadata">
<oracleasi:Ownership>false</oracleasi:Ownership>
</oracleasi:OracleAttributeTypeMetadata>
</appinfo>
</annotation>
</element>

An example of the XSD definition file for single- and multiple-cardinality child business objects is provided here. The element custInfoObj is a single-cardinality child business object, and addressObj is a multiple-cardinality child business object.


Another example XSD file for single- and multiple-cardinality child business objects

<element name="addressobj"
                        type="rtasseraddress:RtasserAddress"  
nillable="true" 
                        minOccurs="0"
                        maxOccurs="unbounded">
                       <annotation xml:space="preserve">
<appinfo 
source="http://www.ibm.com/xmlns/prod/websphere/j2ca/oracle/metadata">
<oracleasi:OracleAttributeTypeMetadata 
xmlns:oracleasi="http://www.ibm.com/xmlns/prod/websphere/j2ca/oracle/
metadata">
<oracleasi:Ownership>true</oracleasi:Ownership>
</oracleasi:OracleAttributeTypeMetadata>
</appinfo>
</annotation>
</element>

<element name="custinfoobj"
                         type="rtassercustinfo:RtasserCustinfo" 
nillable="true"                                  minOccurs="0"
                         maxOccurs="1">
                         <annotation xml:space="preserve">
<appinfo  
source="http://www.ibm.com/xmlns/prod/websphere/j2ca/oracle/metadata">
<oracleasi:OracleAttributeTypeMetadata 
xmlns:oracleasi="http://www.ibm.com/xmlns/prod/websphere/j2ca/oracle/
metadata">
<oracleasi:Ownership>false</oracleasi:Ownership>
</oracleasi:OracleAttributeTypeMetadata>
</appinfo>
</annotation>
</element>


Application-specific information for operations

The adapter uses application-specific information at the operation level to perform operations, such as to retrieve and update information in the database. The adapter retrieves and updates database tables using SQL queries, stored procedures, or stored functions, as specified in the business objects.

If you choose to add stored procedures or stored functions to the business objects, set the operation application-specific information (ASI) as specified in Table 3.

Operation application-specific information
Operation ASI for StoredProcedure parameters element Set by wizard Description
Parameters Yes Lists the stored procedure parameters.
PropertyName Yes Set to the name of the business object attribute that you select.
ResultSet No If the stored procedure returns a result set, set this parameter to True in the business object definition.
ReturnValue Yes If the stored procedure has a return value, this parameter contains one of these values:

  • The string RS. This value indicates that the procedure returns a result set, which is used to create the multiple-cardinality container corresponding to this business object.

  • The name of the business object attribute. This value indicates that procedure returns the value that is to be assigned to that particular attribute in the business object at run time.

    If the attribute is another child business object, the adapter returns an error.

StoredProcedure Yes Set to the stored procedure name.
StoredProcedureType Yes You choose from a list of types. For information about valid stored procedure types, see . Stored procedure type
Type Yes Set to the type of the stored procedure parameter. Possible values are:

  • IP (input only)
  • OP (output only)
  • IO (input and output)
  • RS (result set)

Business object information