BOD message structure

Infor ION messages are called Business Object Documents (BODs). These messages are based on standards that are developed by the Open Applications Group, Inc. (OAGi). BODs are XML documents that consist of a verb component and a noun component. The BOD name consists of a verb and a noun, for example, SyncPayableTransaction, ProcessLocation, and ProcessSupplierPartyMaster. A BOD XML includes these areas:

  • Verbs specify the action performed on the noun. For example, Process or Sync.
  • Nouns specify the business-specific data. For example, Payable Transaction or Location.
  • Elements are the XML tags within the BOD that describe the data. They can be hierarchical, as shown in this example:
    PaymentTerm>
    <Description languageID="EN">2% in 10, Net Due in 30</Description>
    <Term>
    <ID>2/10N30</ID>
    </Term>
    </PaymentTerm>
  • Attributes describe the elements. For example, UnitCode is the attribute in this element:
    <Quantity UnitCode="EA">
  • When a value in a BOD is constructed by concatenation of multiple values, an underscore (_) character is used to separate the values.
  • Data that is not defined for a noun can be passed in the UserArea of a BOD. With Infor applications, the only element that can be placed in the UserArea is Property. Multiple instances of Property within the UserArea can exist. Only the UserArea fields in the header, detail, and root of a noun are supported by Infor. If you require additional fields, you must define them in the UserArea.

    Each Property element contains a NameValue element that holds the value being passed. The NameValue element also contains these attributes:

    • @name holds the custom field name.
    • @type specifies the data type of the value. For example, StringType and DateType.

      This example shows a UserArea:

      <UserArea>
         <Property>
            <NameValue name=”MyField” type=”StringType”>Sample Data</NameValue>
         </Property>
      </UserArea>
  • The Document ID element is a unique identification of the represented business object. The ID is used in a BOD to reference other BODs. For the nouns SalesOrder, PurchaseOrder, and CustomerReturn, the ID is the order number. For other nouns, a naming convention is defined that makes the ID unique.
  • Party ID elements identify an external entity such as a Customer, Supplier, and ShipTo. Location ID elements identify sites within the enterprise. Within a transactional BOD such as a Shipment, if the ShipToParty/PartyIDs/ID is populated, the ID points to a ShipToPartyMaster record. If the ShipToParty/Location/ID is populated, the ID points to a warehouse or other site within the enterprise.
  • All date and time elements within a BOD are presented in Coordinated Universal Time (UTC). The dates are formatted as shown in this example: yyyy-08-13T15:30Z. Dates that are received without a time value have the default time of 00:00, which is midnight.