Enterprise Administration > Implementing Windchill ESI > Implementing Windchill ESI in an ORACLE Applications Environment > Understanding Windchill ESI Architecture > Transaction Management > Transaction Tracking
  
Transaction Tracking
When an object is released from Windchill PDMLink, Windchill ESI services create one or more transaction objects, each of which represents the release of the object to a given ERP instance. Initially, each transaction object in the release has a status of pending, indicating that the object data is being published to the Windchill ESI business logic.
Windchill ESI services then query Windchill PDMLink for the object data and generate a formatted output that constitutes the Windchill ESI response for the given ERP instance. The output is then sent to the Windchill ESI business logic. Windchill ESI services then query Windchill PDMLink for the object data and generate a formatted output that constitutes the Windchill ESI response for the given ERP instance. The output is then sent to the Windchill ESI business logic, and is formatted according to the Windchill ESI response schema. For more information, see Windchill Enterprise Systems Integration Open Application Programming Interface Guide.
Just before sending the formatted output to the Windchill ESI business logic, the Windchill ESI services create a ReleaseActivity status object for eachWindchill PDMLink object and distribution target combination. The initial status of the ReleaseActivity object is pending, indicating that the object/target has been published to Windchill ESI business logic, but its outcome on the EAI-side is not known. The existence of the pending ReleaseActivity object prevents theWindchill ESI services from publishing the object to the same distribution target again.
After the Windchill ESI business logic processes each subtransaction (object/target), it generates a completion notification. This notification includes the status (success or failure) and an optional textual message describing the status. When Windchill ESI services receive this notification, the services update the ReleaseActivity object for that specific object/target.
Once Windchill ESI services receive the first completion notification for a subtransaction, they update the status of the relevant transaction to processing. At the end of processing the transaction, the Windchill ESI business logic generates a completion notification for the transaction. When Windchill ESI services receive this notification, they update the transaction's status as succeeded or failed depending on the status in the notification. At this time, the pending ReleaseActivity objects are deleted.
* 
The activities described in the above paragraph are carried out for every transaction in the release.