7Outbound Transmission Processing

General Overview

All outbound transmission processing requires the configuration of an External System to which the messages will be sent. At a minimum, the External System must define the protocol to be used for the transport and any required external credentials.

The character encoding for all outbound transmissions is UTF-8.

There are various ways to trigger the sending of Transmissions to the external system from Transportation and Global Trade Management Cloud:

  • Some messages are sent automatically as the result of workflow notification.
  • Send and schedule integration transmissions in the Process Manager.
  • Re-send and schedule integration transmissions in the Process Manager.
  • Send transportation records to external systems from various managers using the Finder or Manager UI actions. The content of the information that is transmitted is determined by the context of the UI in Transportation and Global Trade Management Cloud from which you are sending it.

Processing Overview

Once an event triggers the requirement to send a Transmission for one or more objects, the following processing takes place. The exact steps differ depending on the media type of the target message i.e. whether the External System is expecting "application/xml" or "application/json".

  1. Construct internal objects based on SQL Queries. Out XML Profiles are applied during the generation of the objects for XML messages.
  2. Convert the objects into a string representation.
  3. If anything other than the Current Target Namespace is selected then this conversion takes place now.
  4. Apply XSL Transformations if needed (for XML).
  5. Save the resulting output to the I_TRANSMISSION table. If the outbound integration is designated as a Mobile Device message (e.g. generated via the Compose and Send UI action or dispatch actions), then an entry is also stored in the I_MESSAGE table.
  6. Send the resulting output via the indicated notify type (e.g. HTTP POST). The External System record in Transportation and Global Trade Management Cloud indicates whether or not an acknowledgment is required from the external system.
  7. Updates the status of the Transmission.

External User Credentials

When sending messages outbound from Transportation and Global Trade Management Cloud it may be required to specify the username and password required by the receiving external server. This can be achieved by using the username related fields on the external system.

Outbound XML Profiles

Out XML Profiles are used to exclude portions of outbound XML with a high degree of control. They reduce the size of the XML and minimize the number of queries that are used to generate the xml, thereby reducing the memory and time used and improving overall performance. There are several options for specify the elements to exclude. Please refer to the online help for additional details.

Note: There is currently no corresponding control for JSON messages.

Transform Outbound XML with XSL

Do the following to have Transportation and Global Trade Management Cloud transform your outgoing transmission from the Transmission schema to some other XML schema.

  1. Define an XSL file that transforms between the schemas.
  2. Upload the XSL file to create a Stylesheet Content record.
  3. Create Stylesheet Profile to reference Stylesheet Content record created above.
  4. Modify external system to reference Stylesheet Profile created above.
Note: Referencing Stylesheet files in the External System is deprecated and will be removed in a future version. Please convert to using Stylesheet Profile/Stylesheet Content as soon as possible.
Note: There is currently no capability to produce custom JSON messages.

Support for Responses to Outbound Messages

The outbound integration processing supports receiving and processing of synchronous responses to outbound messages as a functional acknowledgement of receiving the Transmission and/or Transaction. Agent objects have been added for types "TRANSMISSION OUT" and "TRANSACTION OUT" to provide custom workflow handling of the response message.

For outbound XML messages these are the TransmissionAck, TransactionAck, and TransmissionReport.

For outbound JSON messages this is the "transmissionStatus" resource. (See the REST API online documentation.)

Integration Unit of Measure Preferences

You can specify the Unit of Measure (UOM) preference and precision to be displayed in outbound XML by defining preference for each UOM. These preferences can be defined with the Integration Preference UI that can be accessed via the following menu: Business Process Automation > Power Data > Integration > Integration Preferences. Integration preferences can be associated to an external system or an out XML profile. Refer to the online help for additional details.

Integration preferences can also be associated with the Rate Inquiry and Generic Query interfaces. To use the integration preference in those synchronous interfaces, you would specify the IntPreferenceGid in the RIQQuery, or the GenericQuery XML. When specified in the RIQQuery, the RIQQueryResponse would apply the preferences before responding with the result XML. When specified in the GenericQuery XML, the preference would be applied to the resulting generated interface XML.

Controlling Target Namespace

A field on the External System Manager UI will specifies the target namespace URL to be used for outbound messages. There are the following possible values:

  • Current: causes the latest version to be output
  • Versions prior to 6.4.2: performs backward compatibility conversion from new to old namespace URL.
  • None: causes the latest version to be output but with the namespace declarations removed.
  • None (Compatibility Mode): performs backward compatibility conversion from new to old namespace URL format and then also removes the namespace declarations.

All new External Systems will default to the Current target namespace.