RashidKhan ReportsResearchProject

You might also like

You are on page 1of 21

Exploring an Alternative to Crystal Reports:

A Comparative Study of Other Reporting Technologies Including Microsoft SQL


Server ™ 2005 Reporting Services and Data Dynamic’s Active Reports

Project Number: PNJI-xxxx

Specification Number: ASD-xxxxxx

Prepared by: Rashid Khan

Approved Approved Approved Approved Approved Approved Issued By


President MFG/R&D. OPS. VP MKTG. Prod MGR.

XXXXXXXXX, INC.
RESEARCH & DEVELOPMENT
Document Revisions

Revision Description By Date


A Initial Draft. Rashid Khan
Some modifications made to sections 3.3, 3.5,
B Rashid Khan
4.2.2, 4.5

iPARC_ReportsResearchProject.doc 1
Table of Contents

1 Executive Summary _______________________________________________________ 3


2 Purpose _________________________________________________________________ 4
3 MS SQL Server ™ 2005 Reporting Services ___________________________________ 4
3.1 Reporting Services Overview _________________________________________________ 4
3.2 Product Offerings __________________________________________________________ 7
3.2.1 Presentation _____________________________________________________________________7
3.2.2 Performance _____________________________________________________________________9
3.2.3 Scheduled Delivery of Reports / Report Subscription _____________________________________9
3.2.4 Security _________________________________________________________________________9
3.3 Licensing Details and Product Support ________________________________________ 10
3.4 Report Lifecycle and Management ___________________________________________ 11
3.5 Deployment ______________________________________________________________ 12
4 Data Dynamics ActiveReports ______________________________________________ 13
4.1 ActiveReports Overview ____________________________________________________ 13
4.2 Product Offerings _________________________________________________________ 13
4.2.1 Presentation ____________________________________________________________________13
4.2.2 Performance ____________________________________________________________________13
4.2.3 Scheduled Delivery of Reports / Report Subscription ____________________________________14
4.2.4 Security ________________________________________________________________________14
4.3 Licensing Details and Product Support ________________________________________ 14
4.4 Report Lifecycle and Management ___________________________________________ 15
4.5 Deployment ______________________________________________________________ 15
5 Other Reporting Technologies _____________________________________________ 15
6 At a Glance: MS SQL Server ™ 2005 Reporting Services and Data Dynamics’ Active
Reports ____________________________________________________________________ 16
7 Glossary _______________________________________________________________ 19

iPARC_ReportsResearchProject.doc 2
1 Executive Summary

I have evaluated Microsoft SQL Server ™ 2005 Reporting Services (SSRS) and Data Dynamic’s
Active Reports as a potential replacement of existing Web and Crystal versions of reports in
iPARC. Although, Active Reports has some nice features and is gaining popularity, SSRS appears
to be more suited to our needs and comes with a greater degree of sophistication as compared to
the Active Reports. SSRS comes free with the SQL Server database and in the case of iPARC we
already use SQL Server database and consequently migrating to the SSRS should not incur extra
cost to the company, albeit proper edition of the SQL Server database needs to be licensed in order
to harness the full capabilities of the SSRS. SSRS has the potential to increase the performance of
some of the reports used in iPARC and a performance gain of up to 92 % was achieved by me in
the prototyping phase. It should be kept in mind that the performance gain was achieved without
ever re-designing our database architecture and as a result the SSRS has the potential to help us
overcome the limitations of our current database architecture. Furthermore, other features of the
SSRS viz. advanced presentation capabilities, dynamic column sorting, ability to create
subscriptions, and advanced delivery mechanism which includes the ability to simply email the
URL of a report to a user and enabling him/her to view/print/save that report without ever logging
into the iPARC application makes it a strong contender to become the new reporting solution for
iPARC. Also, because of the fact that SSRS comes with many in-built features, it scores high as
compared to the Active Reports for which in order to achieve the same level of functionalities a lot
of custom codes need to be written thereby adding more time to develop and test the new reporting
solution for iPARC.

In the light of the assessment as outlined in this document I would highly recommend migrating to
the Microsoft SQL Server ™ 2005 Reporting Services to ensure the continued viability of iPARC
and to enhance its competitiveness in comparison to other similar products out there in the market.

iPARC_ReportsResearchProject.doc 3
2 Purpose
The goal of this paper is to detail the explorative study of finding an alternative to Business
Objects’ Crystal Reports and the comparative analysis of other reporting technologies available in
the market that could potentially become a replacement of Crystal Reports used in ASE’s state of
the art Parking and Revenue application software, iPARC. The reporting technologies that have
been evaluated are Microsoft SQL Server ™ 2005 Reporting Services, Data Dynamic’s Active
Reports, and Information Builders WebFOCUS. Points of comparison include cost and flexibility
of licensing, richness of features, report lifecycle and management and ease of deployment.

3 MS SQL Server ™ 2005 Reporting Services

3.1 Reporting Services Overview

MS SQL Server™ 2005 Reporting Services (SSRS) is an enterprise class reporting solution
provided by Microsoft that is robust, flexible and scalable at the same time. This sophisticated
reporting solution could be used to transform valuable enterprise data into shared information for
insightful, timely decisions at a lower cost of ownership.1

SSRS comes standard with MS SQL Server 2005 and its architectural design that is based
on XML web services, enhances its flexibility and makes customization of reports and the
management of reports easier. The ability to connect to disparate data sources, create additional
output formats, and deliver to variety of devices makes SSRS an attractive alternative to the
existing reporting technology that might be in use in an organization.

iPARC_ReportsResearchProject.doc 4
Fig 1: SQL Server 2005 Reporting Services Architectural Overview (courtesy Microsoft©)

iPARC_ReportsResearchProject.doc 5
Fig 2: SQL Server 2005 Reporting Services Detailed Architecture (courtesy Microsoft©)

SSRS can be broken down into three logical tiers, viz. Report Server, Report Server Catalog and
Client Applications. The following table outlines the functionalities of each of the tiers.

Component Function

Report Server A Web service that does the following:

• Handles Simple Object Access Protocol (SOAP) and URL requests

Processes reports, including executing queries, evaluating expressions,



and generating output formats

• Provides snapshot and report cache management

iPARC_ReportsResearchProject.doc 6
Component Function

• Supports and enforces security policies and authorization

The Report Server also includes a Windows service that is responsible for
scheduled and batch operations.

Report Server Catalog The following two SQL Server databases form the catalog:

ReportServer contains report content information, including report



definitions, report metadata, data source definitions, snapshots, and
history. It stores security settings, account information, scheduling, and
delivery settings.

ReportServerTempDB houses content necessary to support session



management and also cached data for reports.

The catalog can reside on the same physical system as the Report Server or on
a separate system (remote catalog).

Client Applications Client applications access the server through SOAP Web services and URL
requests. The Report Management tool and Report Viewer application are client
applications that are included with Reporting Services. Microsoft® Visual
Studio® 2005 provides Report Viewer controls for embedding reports in client
systems. Report Builder is a report authoring tool used for ad hoc reports. Many
third-party software vendors also provide their own client applications.

Table 1: Three Logical Tiers of SSRS (courtesy Microsoft ©)

3.2 Product Offerings

SSRS comes with a set of rich features that makes designing, managing and viewing of reports a
breeze. Some of the salient features of SSRS are as follows:

3.2.1 Presentation

Reports developed for and deployed on the reporting server can be accessed by specifying the
URL for that report or can be embedded in a web application or a windows application where the
report is rendered using the ReportViewer control. The control displays a default navigation bar
(see the following screenshot) that allows users to navigate, zoom in and out, search for a string,
export the report to a file, refresh the report, and print the report.

Screenshot 1: Navigational bar used by SSRS

Reports can be exported to the following formats:

iPARC_ReportsResearchProject.doc 7
• HTML
• MHTML
• PDF
• XML (with the report data)
• CSV
• TIFF
• EXCEL

SSRS also provides the functionality of allowing dynamic column sorting whereby the result set
can easily be sorted by simply clicking the column header of one of the displayed columns.
Extensive set of charts and graphs are also available in SSRS to create dashboard-type reports that
could provide a meter reading on the business. SSRS also allows the creation of drill down reports
which present a great deal of information in a concise way at the same time allowing users to
expand nodes in order to get more detailed information (see the following screenshot).

Screenshot 2: Drill Down reports created by the SSRS

iPARC_ReportsResearchProject.doc 8
The rich presentation features of the SSRS make it a strong contender to become a replacement for
not only iParc’s crystal reports but the web version, as well, thereby reducing redundancy and
maintenance overhead associated with keeping two separate versions of the same report in iParc.

3.2.2 Performance

SSRS employs two techniques to enhance the performance of a report. First, the returned result set
of a report can be stored in the session cache and subsequent requests for the same report can be
served using the cached copy of the report. However, the contents of the cache are volatile and
they are reinstated once the server is rebooted. So, caching, although increases the performance, is
not very predictable.
The other technique that can be used in SSRS to improve the performance is by creating snapshot,
which is more persistent in nature and comes with additional benefits. For some of the reports
which are historical in nature snapshots can be created and stored during off peak hours and
instead of actually going to the actual data source to retrieve the result set for the given report,
requests for the report can be served using the snapshot instead. In the context of iParc, snapshots
have the potential to increase the performance of some reports dramatically and help overcome the
performance bottlenecks imposed due to the current database design. In the prototyping phase, Fee
Computer Activities report of iPARC took about 33 seconds to return approximately 30,000
records without the use of snapshots. However, by using snapshot the same report took about 2.5
seconds leading to a performance gain of about 92% (see the following table).

Number of records Time to run the report without Time to run the report using % Gain in
returned using snapshot snapshot performance

30000 (approx) 33 seconds (approx) 2.5 seconds (approx) 92.42 %

Table 2: Performance gain by utilizing snapshots in MS SQL Server™ 2005 Reporting Services

3.2.3 Scheduled Delivery of Reports / Report Subscription

Subscription of a report is a pending request to have a specified report run at a specified time and
format and to have it delivered in a specified way. SSRS allows subscribed reports to be either
emailed in a format chosen by the user or delivered to a file share. Unlike the current limitation
imposed in iParc of not being able to create more than one scheduled job for a given report, in
SSRS multiple subscription of a report based on different filter criteria can be created.

3.2.4 Security

SQL Server 2005 reporting services uses role-based authorization and Windows authentication to
secure the reports that reside on the server. Roles can be of two types – item-level and system-level
roles. Item-level roles are used for securing the reports themselves and the system-level roles are
used to allow/disallow users to do system operations on the reporting server.

iPARC_ReportsResearchProject.doc 9
3.3 Licensing Details and Product Support

Licensing cost for the SSRS depends on the way it is deployed. If the report server and the report
database are deployed on the same server, which would be the typical scenario in case of iPARC,
only one valid license for the SQL Server 2005 is required and no additional cost is involved in
order to use the reporting server.

Microsoft has an extensive support network for its products that includes email support, phone
support, and MSDN tech forums where developers can browse around to find answer to any
technical question related to the SSRS. Furthermore, due to the fact that it has a wide market base
and is a Microsoft product, a plethora of resources are also available on the Internet such as blogs
created by developers.

Report Server
Feature Express Workgroup Standar Enterpris Comments
d e

Data Source(s) Express 1, 2 Workgroup 1, 2 SE and EE support all data


sources (OLAP and
Relational)

Rendering Excel, PDF, Excel, PDF, Image Standard and Enterprise


Image (RGDI, (RGDI, Print), editions support all output
Print), DHTML DHTML formats

Management Report Workgroup, Standard, and


Manager Enterprise editions support
SQL Server Management
Studio and Report Manager

Caching

Snapshot

History

Delivery

Scheduling

Extensibility Can add/remove


renderers, data sources,
and delivery

Custom

iPARC_ReportsResearchProject.doc 10
Report Server
Feature Express Workgroup Standar Enterpris Comments
d e

Authentication

SharePoint
Integration

Scale-out
Report Servers

Subscription

Data Driven
Subscription

Role Based Fixed Roles Fixed Roles Standard and Enterprise


Security editions can add roles

Report Builder

Report Builder Workgroup 1, 2


Data Sources

Model Level
Security

Infinite
Clickthrough

Table 3: SQL Server 2005 Reporting Services Feature Matrix (courtesy Microsoft ©)

3.4 Report Lifecycle and Management

The lifecycle for reports meant for an enterprise solution include three distinct stages viz. report
authoring, management of reports and delivery of reports. Installing the SSRS also installs a report
designer as a set of templates in the Microsoft Visual Studio 2005 development environment.
Besides the Visual Studio IDE, reports for the SSRS can be designed and deployed using another
tool called Report Builder which is a “Click Once” application that can be deployed via the
browser. Report builder is meant for end users to create ad-hoc reports. Reports in the Report
builder can be designed based on a pre-defined data model that acts as a layer of abstraction over
the actual underlying database structure which could be intimidating to the end user in terms of
complexity.
Reports deployed on the reporting server can be managed by using either MS SQL Server
Management Studio or any custom web based or windows based management application utilizing
the Reporting Services API. Once a report has been authored and deployed on the reporting server,

iPARC_ReportsResearchProject.doc 11
it can either be delivered on demand to the user or through a subscription (see the following
figure).

Fig 3: Lifecycle and management of reports in the SSRS (courtesy Microsoft©)

3.5 Deployment

Reports developed for the SSRS can easily be deployed to the Reporting server from within the
Visual Studio 2005 IDE in which they have been developed or they can be deployed using the
batch files. Deployment phase consists of publishing the RDL (report definition language) files to
the report server which can be achieved by deploying a report project solution from Report
Designer, saving it from Report Builder, or uploading it through Report Manager or SQL Server
Management Studio. Once the reports have been deployed on the reporting server, they can be
easily accessed from within the web application by making the Reporting server web service API
calls.

iPARC_ReportsResearchProject.doc 12
4 Data Dynamics ActiveReports

4.1 ActiveReports Overview


“Active Reports for .NET” from Data Dynamics, Ltd. is yet another reporting solution that has
been gaining popularity, partly because of its lower cost as compared to the Crystal reports from
Business Objects. It is written in fully managed Visual C# and provides complete integration into
the Visual Studio .NET IDE 2. Active Reports is more like a developer’s tool rather than a stand
alone product.

4.2 Product Offerings

4.2.1 Presentation

Active Reports for .NET includes an ActiveX control for viewing and printing reports from within
a browser. However, from the navigational bar of the control, option to export the report to
different formats is noticeably absent.

Screenshot 3: Navigational bar used by Active Reports

Reports generated by Active Reports can be exported to the following format:

• PDF
• HTML
• EXCEL
• RTF
• TEXT
• TIFF Images

Unlike the SSRS, Active Reports does not support dynamic column sorting and the user would not
be able to click the displayed columns to sort once the report has been rendered in a browser.

4.2.2 Performance

Active Reports does not provide a sophisticated mechanism to increase the performance of a
report. The only mechanism to increase the performance of reports is caching which is quite
rudimentary at its best. Reports generated using Active Reports can be cached either to the disk or
a cached copy can be stored in memory. When the same report is requested subsequently, the
request can be served using the cached copy instead of re-generating the report again. In order to

iPARC_ReportsResearchProject.doc 13
have an efficient caching mechanism using Active Reports, every aspect of caching has to be
considered and a lot of custom code needs to be written whereas the SSRS takes care of caching as
an inbuilt feature.

4.2.3 Scheduled Delivery of Reports / Report Subscription

Unlike the SSRS, Active Reports does not come with an inbuilt feature to set up subscriptions of
reports. The only way to incorporate such functionality in an application using Active Reports
would be to write custom code (as told by a tech representative, Eric, from Data Dynamics - June
8, 2007).

4.2.4 Security

Unlike the SSRS, Active Reports does not come with a built in security mechanism. It does not
provide role-based authorization and the only way to put a security mechanism in place would be
either to control access to reports from within the application or have network administrator
configure folder access via account permission (as told by a tech representative, Eric, from Data
Dynamics - June 8, 2007).

4.3 Licensing Details and Product Support

Data Dynamics’ Active Reports comes with two types of licensing scheme: Per Developer / per
machine license and Site License. Per developer license entitles one developer to develop reports
using the Active Reports software whereas a site license entitles a group of developers to use it and
the number of developers using it must exceed seven in order to use Site Licensing scheme.

Please see the following table for price comparison of different editions of Active Reports:

Product Price

ActiveReports for .Net Professional Edition 3.0


$1,499.00
CD

ActiveReports for .Net Professional 3.0


$900.00
Upgrade fr. Std. 3 CD

ActiveReports for .Net Professional 3.0 Site


$5,600.00
Upgrade fr. Std. 3.0 Site CD

ActiveReports for .Net Professional Edition


$9,799.00
Site License 3.0 CD

ActiveReports for .Net Standard Edition 3.0


$599.00
CD

ActiveReports for .Net Standard Edition Site


$4,199.00
License 3.0 CD

iPARC_ReportsResearchProject.doc 14
Table 4: Price List for Active Reports

Data Dynamics provides both email as well as phone support for its products. A technical forum is
also maintained on its web site where developers can ask questions and reply to questions asked by
others. The company might also help provide code snippets to its licensed users as told by the
representative from the company.

4.4 Report Lifecycle and Management

There is no centralized management mechanism available for managing the reports developed
using Active Reports. Reports can be authored using the control that is embedded in the Visual
Studio IDE.

4.5 Deployment

Reports developed using Active reports control can be deployed on a web server by either by
creating an installer application that incorporates the Active Reports application and then the
installer application can be installed on the web server, or XCOPY deployment can be used where
all the referenced assemblies are copied onto the web server. Besides these two methods of
deployment, assemblies referenced in an application can be placed in the global assembly cache
(GAC) as well.

5 Other Reporting Technologies


Besides the Microsoft SQL Server ™ 2005 Reporting Services and Data Dynamic’s Active
Reports there are numerous other reporting technologies out there in the market that are rich in
features and are being used by several prominent companies. However, they either are not
compatible with iPARC as several of them are specifically geared towards Java applications or
may prove to be too costly and exceed far beyond the scale and scope of iPARC web application.

Information Builders’ web based reporting system WebFOCUS is another reporting solution that
might need to be evaluated further as it seems to be a good alternative to the reporting solution that
iPARC currently employs. WebFOCUS is an enterprise reporting solution that is web based and
offers numerous advanced features. It offers self-service reporting by making available different
parameter-driven reporting templates through which data could be easily accessed in its current
location and format, and then securely published on the Web3. The reports can be exported to
PDF, HTML, and EXCEL formats and there is a feature to compound different reports with the
same or varied layouts and formats into one file that can be emailed, viewed or printed. Another
useful feature offered by the WebFOCUS is “On-Demand Paging” that divides a long report into
multiple HTML pages that can be selectively downloaded or printed thereby giving users more
flexibility in terms of what they want to see first. WebFOCUS delivers reports by both “push”

iPARC_ReportsResearchProject.doc 15
technology whereby a report is delivered to the user on a scheduled time and in a chosen format as
well as by “pull” technology whereby the user is able to retrieve a report when required. It also has
extensive support for mobile devices. The software comes in two major flavors, one is the core
product that is the bare minimum of the reporting software and the second one is the professional
edition that has advanced business intelligence capabilities such as “Bursting of reports” which
enables an administrator to run a single report and burst the results into multiple sections, with
each section sent on to a different web server or e-mail address. For example, in case of a
personnel report that keeps track of sick and personal days for each employee, the pages of the
report can be automatically collated and distributed to individual employees electronically. Please
see the following table for an overview of the product’s price:

Edition Number of CPUs Price


Core Product 1 About $ 28,050
Core Product 2 About $ 45,800
ProServer 1 About $ 53,220
ProServer 2 About $ 76,000

Table 5: Overview of pricing for the WebFOCUS software (courtesy Ms. Donna Cascardo, Information Builders, Inc. - June 26, 2007)

Also note that there would be a maintenance charge of about 20% annually and the training session
provided by Information Builders for the product would cost about $ 10,000.

6 At a Glance: MS SQL Server ™ 2005 Reporting Services


and Data Dynamics’ Active Reports

Features SSRS Active Reports Remarks

Export HTML, MHTML, PDF, PDF, HTML, EXCEL, SSRS offers the ability
Format XML (with the report data), RTF, TEXT, TIFF to export a report to
CSV, TIFF, EXCEL Images CSV format which is a
more portable format
and can be easily
utilized by custom
applications if there is
a need for it.

Navigational Pagination, Zooming, Pagination, Zooming, Navigational bar in


Bar Search, Export, Refresh, Search, Print Active Reports lacks
Print the capability to export
a report.

iPARC_ReportsResearchProject.doc 16
Dynamic Is an in built feature in the Is not available in Active So, SSRS is more
Column SSRS Reports. advanced.
Sorting

Performance Performance can be Only caching is SSRS has superior


increased either by caching available. mechanisms to
or creating snapshots. enhance the
performance of a
report that is of great
importance for
iPARC.

Delivery Can be delivered via email, Same functionalities can SSRS has elaborate
Mechanism or the reports deployed on be achieved but require a delivery mechanism
the reporting server can be lot of custom codes to be that is inbuilt and does
accessed through an URL. written. not require a lot of
custom coding to
achieve those
functionalities as
compared to the
Active Reports.

Security Comes with built-in security Lacks any in-built SSRS seems to be a
mechanism which includes security mechanism and better option due to the
role-based authorization and to create a sophisticated fact that it has in-built
windows authentication. security mechanism security mechanism.
Roles can be item-level roles custom codes need to be
as well as system-level roles. written.

Licensing Comes free with the SQL Although, cheaper as SSRS is a better option
Server license. However, compared to other because we already
proper edition of the SQL reporting software out use SQL Server as our
Server needs to be licensed in there in the market, backend database.
order to harness the full license must be
capabilities of the SSRS. purchased.

Product Extensive product support is Tech support available SSRS has a wider
Support available that includes, from the company but network of support and
MSDN tech forums, phone not as many resources more resources are
support, and plenty of available online as is the available for the
resources online. case with the SSRS. SSRS.

Report Reports can be authored Active Reports control More options are
Authoring using either the Visual Studio can be embedded in the available in the SSRS
IDE or SQL Server Business Visual Studio IDE and for reports authoring.

iPARC_ReportsResearchProject.doc 17
Intelligence Development then reports can be
Studio that comes with the designed in it.
SQL Server 2005
installation.

Ad Hoc SSRS comes with an in built Active Reports does SSRS’ ad hoc reports
Reporting ad hoc reporting tool called provide a control that authoring tool seems
the Reports Builder that can could be used to create to come with more in
be used by end users to ad hoc reports, but a lot built advanced
design ad hoc reports based of custom code needs to features as compared
on a data model which is a be written in order to to the one that comes
group of tables and provide end users a fully with Active Reports.
relationships that has been functional ad hoc reports
identified in advance to be designer.
suitable for ad hoc reporting.

Report Reports management can be No in-built management Obviously, SSRS is


Management done by using the web interface. more advanced with
application called “Reports respect to this feature.
Manager” that comes with it.
It can be used to manage
reports that have already
been deployed on the reports
server that includes security
management, subscription
management, etc.

Deployment Deployment can be done Reports can be deployed As far as deployment


either from within the either using an installer mechanism is
development IDE or reports application or it can be concerned, both
can be deployed using batch done by XCOPY products seem to be at
files. deployment. the same level.

iPARC_ReportsResearchProject.doc 18
7 Glossary

Cache: Report caching is a technique to keep a copy of processed report stored in the reporting
server after the report is run for the first time and subsequent requests for the report are served
using the cached copy instead of pulling data out of the data source specified for the report
originally leading to a faster response time.

Click Once Applications: “Click Once” is a deployment model used by thin clients developed
using .NET framework which allows the update of the software by downloading and executing
application from centrally managed servers without requiring administrative privileges.

Data Model: Is an abstract model that describes how data is represented and used and it hides the
complexity of the underlying database structure.

Dashboard Reports: Display key business indicators visually which convey the health of a
business enterprise at a glance.

Dynamic Column Sorting: Is the feature by which a report can be sorted by clicking on the
column header of one of the displayed columns.

Snapshot: Report snapshot is a report that contains layout information and query results that were
retrieved at a specific point in time. Report snapshot is different from a cached copy of a report in
terms of persistence as snapshots are stored permanently either in a database or in a file.

Subscription: A subscription is a standing request to deliver a report at a specific time or in


response to an event, and then to have that report presented in a way that the user has defined.

Pull Technology: Specifically requesting information from a particular source, for example
downloading reports from the reporting server.

Push Technology: Data distribution technology in which selected data is automatically delivered
to the user at prescribed intervals or based on the occurrence of some event.

iPARC_ReportsResearchProject.doc 19
Work Cited

(1) Microsoft – Reporting Services Overview


http://www.microsoft.com/sql/technologies/reporting/overview.mspx

(2) ActiveReports for .NET


http://www.datadynamics.com/Products/ProductOverview.aspx?Product=ARNET3

(3) Information Builders


http://www.informationbuilders.com/products/webfocus/self-service_reporting.html

iPARC_ReportsResearchProject.doc 20

You might also like