Understanding Sun Master Index Processing

Outbound Message Processing

An outbound message refers to the transmission of data from the master index database to any external system. Messages can be transmitted from the master index application in two ways. The first way is by transmitting the output of executeMatch (an EUID). This is described in Inbound Message Processing and is only used for messages received from external systems.

The second way is by publishing updates from the master index application to a JMS Topic, which allows you to publish complete, updated single best records (SBRs) to any system subscribing to that topic. When updates are made to the database from either external systems or the Master Index Data Manager (MIDM), the master index application generates outbound messages in the format of the outbound XSD.


Note –

A Sun master index application only publishes the outbound message to JMS Topics and not to JMS Queues.


This section describes how the second type of outbound message is processed. A JMS Topic must be defined in the application server for this type of processing to occur.

  1. When a message is received from an external system or data is entered through the MIDM, the master index application processes the information and generates an XML message, which is sent to the JMS Topic that is configured to publish messages from the master index application.

  2. Messages published by the JMS Topic are processed through a business process (or other client application), which uses the master index outbound XSD. The business process transforms the message into the appropriate format.

  3. The message is routed using the appropriate binding component and sent to the appropriate external systems.

Figure 3 below illustrates the flow of data for a message outbound from a master index application.

Figure 3 Outbound Message Processing Data Flow

Diagram shows the flow of information for message
sent out from the master index application.

About Outbound Messages

When you customize the master index object structure and generate the master index application, an outbound schema file named outbound.xsd is created based on the object structure. This XSD is used to publish changes in the master index database to external systems via a JMS Topic. The output of the executeMatch process described earlier is an EUID of the new or updated record. You can use this EUID to obtain additional information and configure a business process to output the data, or you can process all updates in the master index application through a JMS Topic using the outbound XSD.

Outbound XSD Structure

The outbound XSD is located in the file structure for the master index application under the files-generated folder. The XSD includes transaction information along with the updated record from the master index database, and includes the following primary elements: OutMsg, SBR, SystemObject, the parent object, and any child objects. The OutMsg element defines the Event and ID. The Event field is populated with the type of transaction that created the outbound message, and the ID field is populated with the unique identification code of that transaction. The SBR element is created from object.xml. Table 1 describes the components of the SBR portion of the outbound OTD.

Table 1 Outbound XSD SBR Attributes

Node 

Description 

EUID 

The EUID of the record that was inserted or modified. 

Status 

The status of the record. 

CreateFunction 

The date the record was first created. 

CreateUser 

The logon ID of the user who created the record. 

UpdateSystem 

The processing code of the external system from which the updates to an existing record originated. 

ChildType 

The name of the parent object. 

CreateSystem 

The processing code of the external system from which the record originated. 

UpdateDateTime 

The date and time the record was last updated. 

CreateDateTime 

The date and time the record was created. 

UpdateFunction 

The type of function that caused the record to be modified. 

RevisionNumber 

The revision number of the record. 

UpdateUser 

The logon ID of the user who last updated the record. 

SystemObject 

The object’s local identifier in a specified system. This field has three sub-fields: 

LID: The local ID assigned to the person in the system of origin.

System: The processing code of the system of origin.

Status: The status of the local ID in the enterprise record.

Object_Name

The fields in this node are defined by the object structure (as defined in object.xml). It is named by the parent object and contains all fields and child objects defined in the structure. This section varies depending on the customizations made to the object structure.

Outbound Message Trigger Events

When outbound messaging is enabled, the following transactions automatically generate an outbound message that is sent to the JMS Topic (if a JMS Topic has been incorporated into the master index Project).

Sample Outbound Message

The following text is a sample outbound message for a master index application based on a master person index. Your outbound messages will appear differently depending on how you configure the client Project connectivity components.


<?xml version="1.0" encoding="UTF-8"?>
<OutMsg Event="UPD" ID="00000000000000004010">
  <SBR EUID="0000006501"  Status="active" CreateFunction="Add" ChildType="Customer" 
   CreateSystem="System" UpdateFunction="Update" RevisionNumber="3" CreateUser="mdm" 
   UpdateSystem="System" UpdateDate="" CreateDate="" UpdateUser="mdm">
    <SystemObject SystemCode="ORACLE" LID="2372385720" Status="active"></SystemObject>
    <SystemObject SystemCode="ORACLE" LID="2837482562" Status="active"></SystemObject>
    <SystemObject SystemCode="SAP" LID="8327423434" Status="active"></SystemObject>
    <Customer PersonCatCode="MEMBER" FirstName="ELIZABETH" FirstName_Std="ELIZABETH" 
     FirstName_Phon="E421" MiddleName="ANN" LastName="WARNER" LastName_Std="WARNER" 
     LastName_Phon="WARNAR" Suffix="" Title="DR" SSN="555999222" 
     DOB="04/14/1964 00:00:00"Death="" Gender="F" MStatus="M" Race="C" Ethnic="31" 
     Religion="AG" Language="EN" SpouseName="CRAIG" MotherName="JEN" MotherMN="SMITH" 
     FatherName="MARK" Maiden="MILLER" PobCity="MILFORD" PobState="ONTARIO" 
     PobCountry="CAN" VIPFlag="NONE" VetStatus="NONE" Status="" 
     DriverLicense="CT12941284" DriverLicenseSt="CT" Dod="" DeathCertificate="" 
     Nationality="CAN" Citizenship="CAN">
      <Alias FirstName="LIZ" MiddleName="" LastName="MILLER"></Alias>
      <Address AddressType="H" AddressLine1="1330 BLOSSOM ST." 
       AddressLine1_HouseNo="1330"AddressLine1_StDir="" AddressLine1_StName="BLOSSOM" 
       AddressLine1_StPhon="BLASAN" AddressLine1_StType="St" AddressLine2="" 
       City="SHEFFIELD" StateCode="CT" PostalCode="09876" PostalCodeExt="" 
       County="CAPE BURR" CountryCode="USA"></Address>
      <Phone PhoneType="CC" Phone="9894774477" PhoneExt=""></Phone>
    </Customer>
  </SBR>
</OutMsg>