Supporting Report Factory


See Report Factory for a description of the model itself; this article describes the workflow and provides a list of items to check in the event of process disruption.


  • Reports Server Polling Service (RSP); subscribes to 3-14 topic
  • Reports Client Polling Service (RCP); subscribes to 3-6 topic 
  • ReportFactory Job (RFJ); SQL Server Agent->Jobs


  1. Request is submitted via the API (ReportFactoryExport endpoint)
  2. API generates the JobId and generates 3-14 notification 
  3. RSP creates Schedule request in [REPORT_CONFIG].[Report].[Schedule]
  4. RFJ identifies Schedule record and starts process
  5. RFJ generates 3-6 notifications for InProgress & Complete | Failed
  6. RCP updates data used by Trader Desktop Reports Admin
  7. On completion RFJ:
    - archives request in [REPORT_CONFIG].[Report].[ScheduleArchive]
    - generates 6-18 notification (user desktop alert)
    - creates Audit Log record in [REPORT_CONFIG].[Report].[ReportFactoryLog] 

Audit Log

Every request consists of a number of elements including the XML body (containing the parameters relevant to the specific report type) and the schema (XSD) that is applied. This information is recorded along with the results of the request including JobId, Trading Entity and the status. If SUCCESS is not the result then a description of the reason for failure is provided.


The most common symptom will be the lack of expected reporting data and there are a number of reasons why this can happen.

Windows Services

As listed above there are two key Windows Services that need to be running. Often restarting these resolves issues caused by servers being rebooted, service packs applied and so on.

SQL Server

SQL Server Agent needs to be running 

Report Factory Job needs to be Enabled

ReportFactory Project should be available under Integration Services Catalogs

Check configuration of the ReportFactory Package (right-click menu on ReportFactory.dstx-> Configure... ).

With particular reference to the Connection Strings.

Tracing a Specific Request 

Package-level reports can be recalled which show each time a job is executed (right-click menu on ReportFactory.dstx -> Reports-> Standard Reports -> All Executions).

It should be noted that the job is run every 1-2 minutes as the first step is to check for a valid Schedule table record (RF request); if none is found the job is still reported. 

As noted above it is also possible to review the outcome of a RF Request through [REPORT_CONFIG].[Report].[ReportFactoryLog].


See Also
ITAS Client Services API