Transaction Code

Transaction Codes and Reference Object Transaction Codes indicate how transactions should be processed. While the transaction code itself indicates how the main transaction should be processed, the Reference Object Transaction Code explains how objects related to the main transaction should be handled.

For example, you are sending a shipment update. The transaction code for the shipment update might be "U", indicating that the existing data for the shipment should be updated with the new information. However, sent along with that shipment update is location information. If the location information did not change with the shipment update, the Reference Object Transaction Code would be set to "NP" which tells the system not to update the location information.

Note: Not all of the transaction codes listed below are available for both XML and CSV uploads.

Note: For an explanation of how the transaction codes are used for rate maintenance, see Transaction Codes in rate maintenance.

Valid transaction codes are:

  • I: Stands for Insert. Use this transaction code to send new information to Oracle Transportation Management. Oracle Transportation Management creates a new record. If the record already exists, then the transaction will generate a "record already exists" error.
  • II: Stands for Insert and Ignore. When used, if the record already exists, then it is not updated and the "record already exists" error message is not logged. If it does not exist, then it is inserted. This transaction is only supported in the Location and ItemMaster interfaces.
  • IN: Used only for Rate Maintenance. Similar to I except that the ID of the rate offering or rate records is generated using business number generation or BNG.
  • U: Stands for Update. Updates an existing record.
  • UU: Update data while suppressing "no data found" constraint violations.
  • IU: Stands for Insert and Update. Create a new record unless it already exists, in which case update the existing record with the new information.
  • UI: Stands for Update and Insert. This works the same way as IU.
  • D: Stands for Delete. Delete an existing record.

Note: Do not use the D or DD transaction codes when uploading CSV targets. A transaction code of D or DD will only remove the target records in the OTM database. It is not possible to remove the target records from the Transportation Intelligence (TI) database via either the Launch Integration page or by running the Run Targets process.

  • DD: Delete data while suppressing "no data found" constraint violations.
  • NP: Stands for No Persist. Data is not persisted (saved) to the database. For example, enter NP if you do not want to persist public locations. This is the default TransactionCode when the data is sent outbound from Oracle Transportation Management.
  • RC: Stands for Replace Children. RC deletes all the child data corresponding to the top level parent, updates the top level parent data, and inserts the new incoming child data. The child elements to be replaced can be specified by the ReplaceChildren element. If the ReplaceChildren element is not specified in the object, then all of the child elements are replaced. This is somewhat similar to performing a Delete transaction followed by an Insert/Update of the object. The processing of new elements are handled using the IU transaction code, such that if the object does not exist within Oracle Transportation Management will be added.
  • RP: Stands for Replace Primary/Parent. Specify RP to replace the primary object. RP will null out all values on the parent object for fields that are not passed in the XML, and will perform Insert/Update on all child data.
  • R: Stands for Replace. Replace the object. This is a combination of the RC and RP transaction codes which results in nulling out data in the primary object when fields are not passed in, and also deleting child data when not in the XML.

Related Topics