Configure the Transaction Server

To configure the Transaction Server to initiate a list of reports at the end of the business day, an event needs to be included in the Scheduler.xml. An example is shown here:
<EVENT>
  <NAME>End-of-Day Check to Services Framework</NAME>
  <TYPE>EndOfDayCheck</TYPE>
  <EXEC>com.ibm.paydir.ima.txsvr.event.appbridge.EndOfDayCheckEventHandler</EXEC>
  <PARAMETER name="msgType">endOfDayCheck</PARAMETER>
  <PARAMETER name="destinationID">EndofDayReportingTask</PARAMETER>
  <PARAMETER name="jmsQmgrHostname">localhost</PARAMETER>
  <PARAMETER name="jmsQmgrChannel">SYSTEM.DEF.SVRCONN</PARAMETER>
  <PARAMETER name="jmsQmgrPort">1414</PARAMETER>
  <PARAMETER name="jmsClient">true</PARAMETER>
  <PARAMETER name="jmsQmgrName">FTM.QMANAGER</PARAMETER>
  <PARAMETER name="jmsSendQueue">FXH.SERVICESFRAMEWORK.INPUT.QUEUE</PARAMETER>
  <PARAMETER name="jmsReplyQueue">FXH.TRANSSERVER.SYNC.REPLY.QUEUE</PARAMETER>
  <PARAMETER name="jmsReplyTimeout">2500</PARAMETER>
</EVENT>

The IBM® MQ configuration needs to match the environment.

A Crystal reporting task can be started by other Transaction Server events. It can also be passed a specific report name to initiate on the Crystal Reports server. If a specific report name is passed, only the specified report is initiated, not the other reports listed in the task configuration. An example is shown here:
<EVENT>
  <NAME>Incoming File - Presentment Group State Reached</NAME>
  <TYPE>PresentmentGroupStateChange</TYPE>
  <EXEC>com.ibm.paydir.ima.txsvr.event.appbridge.PresentmentGroupEventHandler</EXEC>
  <PARAMETER name="msgType">TaskInitiation</PARAMETER>
  <PARAMETER name="destinationID">CRtask1</PARAMETER>
  <PARAMETER name="reportName">IncomingFileReport</PARAMETER>
  <PARAMETER name="state">BALANCED</PARAMETER>
  <PARAMETER name="archivable">Y</PARAMETER>
  <PARAMETER name="jmsQmgrHostname">localhost</PARAMETER>
  <PARAMETER name="jmsQmgrChannel">SYSTEM.DEF.SVRCONN</PARAMETER>
  <PARAMETER name="jmsQmgrPort">1414</PARAMETER>
  <PARAMETER name="jmsClient">true</PARAMETER>
  <PARAMETER name="jmsQmgrName">FTM.QMANAGER</PARAMETER>
  <PARAMETER name="jmsSendQueue">FXH.SERVICESFRAMEWORK.INPUT.QUEUE</PARAMETER>
  <PARAMETER name="jmsReplyQueue">FXH.TRANSSERVER.INPUT.QUEUE</PARAMETER>
  <PARAMETER name="jmsReplyTimeout">2500</PARAMETER>
</EVENT>

In the example, when an incoming transmission can be archived and is balanced, a Crystal reporting task is run on Services Framework. The task receives a unit of work type PRESENTMENT_GROUP_ID and the value. It also receives a report name of IncomingFileReport. Since a report name was received, only the IncomingFileReport is initiated.