Implementation Guide for Oracle Self-Service E-Billing > Using the Reporting Engine > Reporting Engine Features >

Reporting Engine Object Model


Figure 4 shows the Reporting Engine object model. Only the main objects are shown.

Figure 4. Reporting Engine Object Model
  • ReportActionHelper. This class was designed to be called by the Servlet or Struts action class. It performs a number of tasks, such as parsing the request parameters, and then does the sorting, paging, and so on. It returns an IReport object, that you can use to render a report, or manipulate further before rendering it. Though it is possible to avoid using this class by using other APIs, it is strongly recommended that you use this class to reduce your customization work.
  • ReportManager. Use this class to get an instance of IReportManager.
  • IReportManager. This is the entry class to the Reporting Engine APIs. For example, to get an instance of IReport and other objects.
  • ReportContext. This class is a Map, which allows the Reporting Engine client to pass information to the Reporting Engine. For example, the binding values to SQL "?" parameters, and the objects used in Velocity templates.
  • IReportConfig. This interface represents the report XML definition. For example, the SQL used to query, instructions to bind the report context objects to the SQL, instructions to format the report. There are a set of Config objects related to this class that represent the report XML elements. For more information about this API, go to the Oracle Self-Service E-Billing Javadoc as described in Accessing Oracle Self-Service E-Billing Javadoc.
  • ITransformer. This object represents the transformer defined in the report XML. It offers a set of APIs that manipulate the format, such as format value, write the template, and so on.
  • DataSource. This API is not a public. It represents the datasource defined in the report XML, and allows you to retrieve report data from that data source.
  • IReportList and IReportRow. The report data retrieved from DataSource is represented as IReportList, which is a java.util.List. IReportList includes a list of IReportRow objects, which represents rows in a report. The objects in IReportRow are basic Java objects, such as Integer, Double, String, Date, and so on. For more details, please check Java APIs of Reporting Engine.

The object model of Reporting Engine is straightforward. Figure 5 shows how the Reporting Engine objects interact with each other to generate a report.

Figure 5. Reporting Engine Object Interaction

For more information on how to write action class and report JSP pages, see Customizing the Reporting Engine.

Implementation Guide for Oracle Self-Service E-Billing Copyright © 2014, Oracle and/or its affiliates. All rights reserved. Legal Notices.