Overview
OLE Reporting Framework has been built with flexibility in customizations by various institutions in mind; There are two core pieces to this framework;
...
BIRT (Business Intelligence Reporting Tool by Eclipse) is an open source tool that can be use to design reports. In OLE, the canned reports are designed using the BIRT framework which again allows for customizations as and when needed.
Process & Framework details:
The below process diagram explains how the OLE reporting framework works.
Technical Details
- Logging Transactional Data
- OleCamelContextListener - Listener class to initialize OleCamelContext when OLE webapp comes up.
- OleCamelContext - This is the main class that is responsible for taking messages from the InMemoryQ and routing it to a log file. Logging to the file is the current default. The endpoint (JDBC, JMS..) can be easily configured depending on the implementor's choice.
- ReportLogHandler - This is the main class that others have to be aware of for sending transnational data to be logged. It takes a message object (Generic) and then puts it in an in-memory Q.
- CircLogFormatProcessor - As the messages are consumed from the in-memory Q to the final end point (file log, JMS, JDBC...), the message formatting needs to be handled. The current format for the message logging is JSON and so this class takes the message object, converts it into JSON string and puts it back on the Q. The values that needs to be captured are essentially transformed in this class. For every transaction type (Circulation, Invoicing etc), there will be format processors that will know what all elements that needs to be captured.
- Report(s)
- BIRT plugin for Eclipse is used to design and generate a report.
- Few custom classes that know to read from a configured endpoint (file log in this case) and provide to the report engine to be rendered.