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:
1.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.
2.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.
3.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.
3.1. 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.
3.2. 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).
4. 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.
5. 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.
These are some of the basic reporting terminologies that you will be
using extensively for reporting in AX.
No comments:
Post a Comment