Reporting Paradigm


The focus of Web Intelligence reporting can be summed up in several themes:

  • Users who have no database experience should be able to create their own queries and reports.

  • Users should be able to perform an analysis on a report, even if they didn't create the report originally.

  • The interface should be easy to use and intuitive.

  • The interface should be very powerful and provide supporting capabilities for those users who can develop sophisticated analyses and scenarios.

In order to achieve these objectives, Business Objects developed a four-tier approach to reporting, which ties together various functional engines to provide a complete reporting and analysis stack that is called the Web Intelligence report engine. Figure 20.1 depicts the stack of functional engines and the basic workflow for creating an ad-hoc report.

Figure 20.1. This figure shows the four functional engines that make up the Web Intelligence reporting engine. The query is first created via a query panel off of the semantic layer, and when SQL is generated and data retrieved, the microcube and report engines perform post-query calculations and display the results.


Security Layer

Fundamental to secure reporting is the ability to provide appropriate access to data. You can think of the access as coarse-grained and fine-grained. Coarse-grained refers to accessing reporting resources in the business intelligence environment (meaning objects in the InfoStore) that specifically relate to the WebI engine, such as universes (semantic layers) and preexisting reports. Fine-grained security refers to providing access to the resource, but limiting it in some way. For example, managers can see data in an HR database, but cannot see salary information. Coarse-grained access is managed via the Central Management Server, or CMS. Fine-grained access is managed in the universe via the Designer and put into practice by the Web Intelligence engine. The security layer provides access to resources (universes, reports, and application functionality) and user-specific security overrides on these resources. Examples of such overrides are listed in Table 20.2.

Table 20.2. Coarse-Grained and Fine-Grained Security

Course-grained security (managed via CMC, manifest by CMS)

Universes

User is granted or denied access to a particular universe.

Reports

User is granted or denied access to a particular report.

Application functionality (Business Objects Enterprise applications)

User is granted or denied access to a particular application, such as Web Intelligence or Designer.

Fine-grained security (managed via Designer, manifest by WebI engine)

Universes

User can see a universe but cannot see all objects within the universe (object-level security).

User has SQL restrictions (WHERE clauses) attached to all generated SQL, whether through an ad-hoc request or through refreshing a previously existing report (row-level security).

User can have specific query governors applied (time-and row-restriction limits).

User can have table substitution overrides and the like.

Fine-grained security (managed by CMC, manifest in WebI engine)

Reports

User can edit a particular report, but can be denied editing rights on another report.

Application functionality

User can have access to an application but be denied a specific right (for instance, user has access to Web Intelligence on-report analysis, but has been denied access to create new reports, or possibly is restricted from the ability to see the underlying SQL).


Semantic Layer

Tied closely to the security layer is the semantic layer. There are two semantic layers currently available in Business Objects XI: business views and universes. The semantic layer used with WebI is the universe (see Chapter 18, "Using a Semantic LayerBusiness Views and Universes," for details on universes). The universe provides an abstraction layer for the end user that hides the complexities of the database, and presents database elements as business objects that can be selected in any combination by the business user via a GUI drag-and-drop interface called the query panel. Behind the scenes, a sophisticated SQL generation engine looks at the objects selected and, based on rules defined in the semantic layer, generates correct SQL for the end user (which they are completely shielded from seeing). Because the semantic layer passes through the security layer, all user-specific security overrides apply to SQL generation at the time it is generated, either initially or at subsequent execution.

Microcube Engine

One of the major differences between Web Intelligence and Crystal Reports is the inclusion of the microcube engine. The microcube engine stores the resultsets in a multidimensional array providing OLAP-like capabilities on the data. Working closely with the semantic layer that provides instructions to the microcube on how certain objects should behave when rolled up, the microcube can take the resultset data and project it in any dimensional combination based on the objects selected. Again, see Chapter 18 for a more detailed explanation.

The microcube shows projections, or slices of the data at a particular level. The microcube also allows for report variables to be calculated based on the underlying objects, and will project these calculations as well. Advanced users can specify levels of aggregation for calculation for a particular report variable, thus creating very sophisticated multilevel report variables.

Report Engine

The report engine sits on top of the microcube engine and shows the projections in report blocks. A report block is a table or chart that shows a particular slice or level of the microcube projection. Unlike Crystal Reports, WebI reports are not banded; there is a report block which shows a particular level of the data, and there are sections that can be placed around the report block (grouping headers and footers). There can be multiple sections or levels in a report. The sections also provide projection of objects at those levels, so calculations specific for each section are not necessary (the microcube takes care of this for the user).

The report engine allows the user to navigate the data and provide analysis via Drill mode. This means that as the user interacts with the report block, the user can select an object and drill down on the object to a lower level. Natural data hierarchies are defined in the semantic layer. Drilling down on a report tells the microcube to move the level of projection down one level in the data hierarchy and recalculate the report block at the next lowest dimensional level. All measures are recalculated to show the proper values at that projection level.

As users move or swap objects in and out of the report block, measure values are constantly being recalculated on the fly and reprojected to the reporting engine. This allows the user to move through the data seamlessly and explore relationships between the different dimensional combinations.

This seems very complicatedand it is. However, as you move through the user experience, you can easily see how intuitive it appears to a business user (or any user for that matter), and that describing this intuitive data manipulation is more difficult than actually using it.

Real World Usage

Using the Web Intelligence reporting paradigm, the user generally executes this workflow:

1.

Select a universe on which to explore the data.

2.

Select objects from the universe for the query.

3.

Get results back.

4.

Start manipulating the data.

5.

Refine the question; get more data (go to step 2 or step 1 and loop).

6.

When the user arrives at a sufficient stopping point, save the report.

7.

The user can schedule, publish, or send the report to other users.

This means that data exploration and discovery are part of the reporting paradigm. Many times business users know they need to "look at the numbers" but don't know exactly what it is they are looking for. This often makes it impossible to nail down specific user-reporting requirements. In the Web Intelligence paradigm, the burden for report requirement definition is shifted to the business user, who in turn creates his own report. As he explores the data, he might learn things that take him in a completely new direction, ending up at a much different place than his initial intent. Needless to say, this process of discovery and new insights about the data often provides much more business benefit to the user and the organization as a whole.

As the data is secured through the semantic layer and through the security mechanism, it also allows IT to maintain control over what data is accessed and by whom. Because all connections are masked to the database via the universe, the end user is less likely to know how to circumvent the system. Data can still be exported into Excel or in comma separated values (CSV) format so that the user can use the information in ways that are not available via the reporting engine. However, access to the data is secured and all access to the database is controlled via the semantic layer.

Note

Web Intelligence accesses data only via the universe. There is no ability to create a Web Intelligence report off of any other source than a universe. As described in Chapter 18, the universe currently connects to relational data sources and some multidimensional databases. A universe also contains a single database connection, meaning single database access. However, a Web Intelligence report can contain multiple resultsets from different universes, so data can be brought together in the same report from different platforms. These resulting data can be synchronized within the report and the data projected within a single report block.


For more complete details, p. 413





Crystal Reports XI(c) Official Guide
Crystal Reports XI Official Guide
ISBN: 0672329174
EAN: 2147483647
Year: N/A
Pages: 365

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net