Hi friends,
Today i want to share reporting concepts in AX 2012 with you guys.....
We will start with understanding basic concepts in Reporting
Framework to examples.
Reporting Framework Terminologies,
As you all know, the reports in AX 2012 have moved to SSRS
reporting, so MS has introduced a robust reporting framework wrapping over the basic
SSRS reporting functionality. There are many terms used in reporting framework
in AX that I will try and explain here:
· Report
Definition Language: RDL is an
XML application primarily used with Microsoft SQL Server Reporting Services.
RDL is usually written using Visual Studio. AX has Report Definition Language
Contract classes that can generate and build the RDL for an AX SSRS report.
This contract provides a weakly typed representation of parameters. It contains
methods that can be used to get or set values. It also contains a map of
parameter names and the SrsReportParameter class. The base class is SrsReportRdlDataContract.
· Report
Data Provider (RDP): A
framework that helps in building, processing and rendering data to reports.
Most of the reports require RDP classes that help in implementing business
logic required to process data and provide data in readable, presentable and
required formats design. The base class is SrsReportDataProvider. This
class has two main sub classes,SrsReportDataProvderBase and SrsReportDataProviderPreProcess. We will discuss about these classes in future posts.
· Report
Data Contracts: The Report Data Contracts
framework is used to provide and manage the parameters to an SSRS report. The
report data contract contains all the other relevant instances like Report Data
Provider contracts, print contracts, RDL contracts and query contracts that
will be used by a report.
· Printing
Contracts: The framework that manages
report printing (to different mediums). The base class is SrsPrintDestinationSettings.
There are other supporting contracts that are used for printing, we will
discuss about them in future posts.
· Query
Contracts: This framework manages
the queries used to process report data. This framework is also responsible for
providing dynamic filters (similar to our ‘Select” buttons on report dialogs
that open the Query specification form to filter data on report queries).
· Report
Controllers: Report controllers
control the report execution and dialog forms. Report controllers can be used
to modify report dialogs, validate report parameters and other validations
necessary before report execution. The base class is SrsReportRunController. Reports
utilizing report controllers can only be used for printing data on client side.
Reports controlled by controllers cannot be used in Enterprise Portals.
· Report
UI Builders: UI Builders are used to modify
the report dialogs at run-time or to add additional parameters and write custom
business logic to report dialogs. Ex: You want to perform some task based on
data modified for one parameter, that affects other parameters or build a
custom lookup etc (something that was provided by RunBaseReport framework class
in previous versions. The base class is SrsReportDataContractUIBuilder.
-Harry
No comments:
Post a Comment
Thanks