About Task Status Response (TSR) Messages

As a part of running. any sub process, EJM always creates a Task Status Response (TSR) message file. TSR message files are stored in EAGLE_INSTALL/ estar/tpe/data/msgcenter/cmw/reply folder by default.

The TSR can be consumed by any program and the program can also delete or move TSR file to whatever location is preferred.

Note

If you do not delete the TSR files as part of your process, Eagle strongly recommends purging the historic TSR files on a regular basis.
The BPM must listen for task status reply (TSR) messages from the EJM facility.

There are several considerations for understanding a good reply message:

  • All the elements of the group statusItem are required and must be contained in TSR message.
  • Add the group taskUnit when the current TASK performs processing of the incoming file (transformation, loading).
  • The tag taskUnit\loadDetails\details\URI must contain the remote file name.
  • When processing of the file contains several steps, then each step must form a separate group taskUnit\loadDetails\details\file.

A common TSR Message has the following structure:

Elements of XML

Description

<EagleML
  eaglemlVersion="2-0"
  eaglemlType="TaskStatusResponse"
  xsi:schemaLocation="http://www.eagleinvsys.com/2011/EagleML-2-0 eagleml-main-2-0.xsd"
  xsi:type="TaskStatusResponse"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns="http://www.eagleinvsys.com/2011/EagleML-2-0">

Root Node. Its content is fixed

<header>
    <messageId>B41D0H24AT8JUFRW</messageId>
    <sentBy>http://www.eagleinvsys.com/</sentBy>
    <sendTo>eagle_ml-2-0_default_cm_task_reporter</sendTo>
    <creationTimestamp>2014-11-30T06:02:41-05:00</creationTimestamp>
</header>

Message Header section.

messageId node must be unique

sentBy is a constant

sentTo is a constant

creationTimestamp – message generation time

statusItem element

<taskIdentifier>
    <correlationId correlationIdScheme="correlationIdScheme">SMFEXTR_B41D0H22</correlationId>
    <businessTaskId correlationIdScheme="businessTaskIdScheme">SMFEXTR_B41D0H22</businessTaskId>
</taskIdentifier>

Task Identifier section.

correlationId is a required node and must be unique

businessTaskId is a required node and should describe the task. It can be a constant

<status>FAILED</status>

EJM task final status.

<severityCode>1</severityCode>

Severity code

<reason>
    <reasonTypeEnum>ERROR</reasonTypeEnum>
    <reasonCode>1</reasonCode>
    <description>Unknown FeedType</description>
</reason>

Reason Section.

reasonTypeEnum is a constant

reasonCode is a number, representing error code

description contains error details

Tags

The following table shows the tag information.

Tag

Required/ Optional

Comments

fileName

Required

File name  that is processed in the stream

Type

Required

Type of file Load. Detailed description in a table below.

summary

eagleStatId

Required

Msg Stat Id in Message Center Console.

failedRecords

Required

Number of failed records.

totalRecords

Required

Total number of  records.

record

eagleDetailId

Required

Msg  Detail Id in Message Center Console.

Identifier

Optional

Detailed description in a table below.

Reason

Required

Used when any errors during processing.

Detailed description in a table below.

Substrings

The following shows the allowed substring and type combinations.

Substring

Type

_ISSUER_ORGANIZATION

ISSUER_ORGANIZATION

_ISSUER_ISSUER_ID

ISSUER_ID

_ISSUER_RELATION

ISSUER_RELATION

_ISSUER_XREF

ISSUER_XREF

_SECM_SMF_UNDERLYINGSMF

SECM_SMF_UNDERLYINGSMF

_SECM_SMF_ISSUER_ROLE

SECM_SMF_ISSUER_ROLE

_SECM_SMF_NOTES

SECM_SMF_NOTES

_SECM_SMF_SCHEDULE_DEL

SECM_SMF_SCHEDULE_DEL

_SECM_SMF_VARRATES

SECM_SMF_VARRATES

_SECM_SMF_EARNINGS

SECM_SMF_EARNINGS

_SECM_SMF_UNDERLYING

SECM_SMF_UNDERLYING

_SECM_SMF_SCHEDULE

SECM_SMF_SCHEDULE

_SECM_SMF

SECM_SMF

_TRADE_TRADEQUOTES

TRADE_TRADEQUOTES

_TRADE_TRADES

TRADE_TRADES

_TRADE_TRADECHARGES

TRADE_TRADECHARGES

_TRADEREL

TRADEREL

_COUPON

COUPON

_FACTOR

FACTOR

_RATING

RATING

_REFERENCE

REFERENCE

_PRICE

PRICE

_STARTRADES

STARTRADES

_GISTAR

GISTAR

_GICSV

GICSV

_WAREHOUSE

WAREHOUSE

DEFAULT VALUE (when no match is found)

CUSTOM

Identifiers

The following example shows that Identifiers have the same value as the Message Status tab in the Message Center Console.

<identifier>
       <identifierName>fromId</identifierName>
       <identifierValue>ADDSECMASTER</identifierValue>
</identifier>
<identifier>
       <identifierName>toId</identifierName>
       <identifierValue>GCZ323</identifierValue>
</identifier>
<identifier>
       <identifierName>referenceNumber</identifierName>
       <identifierValue>1FHFH8VS6V7JOHTL<identifierValue>
</identifier>

The following table lists the Identifier names and values.

IdentifierName

IdentifierValue

fromId

Sender Information

toId

Receiver Information

Account

Account

Amount

Value Amount

Currency

Value Currency

referenceNumber

Reference No

valueDate

Value date

identifier1

Identifier 1

identifier2

Identifier 2

identifier3

Identifier 3

Files Types and Identifiers

Some types of files use their own identifierName with the same identifierValue.

The following table displays the sender information, receiver information, account, value currency, and reference number for each file type.

File type

Identifier Value

Sender Information

Receiver Information

Account

Value Currency

Reference Number

ISSUER_ ORGANIZATION

Sender Information

issuerId

issuerId

 

 

 

ISSUER_ID

Receiver Information

issuerId

 

 

 

 

ISSUER_ RELATION

Account

fromIssuerId

toIssuerId

 

RelationshipType

 

ISSUER_XREF

Value Amount

xId

xIdType

 

 

issuerId

TRADE_TRADES

Value Currency

masterTicket

Number

 

 

 

 

TRADEREL

Reference No

closeOpenEventId

 

 

 

 

COUPON

Value date

 

 

 

 

 

FACTOR

Identifier 1

primaryAssetId

 

 

 

 

RATING

Identifier 2

primaryAssetId

 

 

 

 

PRICE

Identifier 3

 

 

PrimaryAssetId

PrimaryAssetType

 

 

Groups

Group reason added only if there were errors during processing.

Tag

Required/ Optional

Comments

reason

reasonTypeEnum

Required

 Always ERROR

reasonCode

Required

 The value is taken from the column Code in Message Center Console

description

Required

 The value is taken from the column Message  in Message Center Console

reasonTag

Optional

 The value is taken from the column Tag ID in Message Center Console.