Understanding inquiry levels

TAIL inquiry levels determine the type and extent of information that is returned.

There are two different levels of inquiry that may be specified when executing a getTransactionLog transaction:

  • Level 0 retrieves only transaction log objects and external log transaction key objects from TAIL database tables.
  • Level 1 Level 0 details plus the internal log and internal log transaction key objects from the TAIL database tables.

Most InfoSphere® MDM inquiry transactions may be executed against the audit database tables to retrieve historical data for a particular point in time in the past. TAIL reuses this history inquiry logic when retrieving additional information with its transaction log, for example, in a Level 1 getTransactionLog request. In order to bring back this information, a special additional details indicator must set. The additional details indicator can be set to "Y" or "N" to include the point in time history when retrieving the log. Retrieving additional details in getTransactionLog is implemented in the external rule class com.dwl.tcrm.externalrule.TAILAdditionalDetail. AdditionalDetailIndicator is not applicable to DWLAdminService by default.

The point in time history retrieved for the transaction logs include either the results of a InfoSphere MDM getFSParty or a getContract transaction (level 3). These transactions are executed by using either the PartyId, PersonPartyId, OrganizationPartyId, ContractIdPK, or ContractId taken from the element values of the external log transaction key object for external transactions and internal log transaction key object. In addition, the history inquiry is executed for the point in time at which the original transaction was logged-the transaction log created date. To clarify, the date used as the inquireAsOfDate (see Retrieving audit history for a full explanation) is the created date_created_dt of the transaction log object. One minute is added to this time, because the history inquiry functionality ignores seconds values. In addition, the time at which for the history inquiry transaction gets taken from the date at which the transaction log was created. See the IBM® InfoSphere Master Data Management Transaction Reference Guide for more information on the getFSParty and getContract transactions.

The transaction runs to retrieve these additional details depends on the transaction keys indicated for that transaction in the pre-populated EXTERNALTXNKEY and INTERNALTXNKEY database table for external and internal transactions, respectively. Keys include PartyId, ContractId, PersonPartyId, OrganizationPartyId, ContractIdPK for the business objects of a transaction. If the key is a ContractId or ContractIdPK, a getContract transaction is executed, otherwise, a getFSParty is executed if one of the party keys exists.