Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

18
Enterprise Data Publishing with Oracle Reports: Any Data, Any Format, Anywhere

Transcript of Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

Page 1: Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

Enterprise Data Publishing with Oracle Reports: Any Data, Any Format, Anywhere

Page 2: Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

INTRODUCTION

In the history of publishing we have used different approaches all with the same goal – to provide information in an easy accessible, yet representative way. It was a hard and exhausting process in the early days of “data publishing” where all “reports” had to be written by hand. With the invention of the printing press, the process was dramatically enhanced and speeded up.

The computer age opened up a complete new meaning to data publishing. This new computer technology produced lots of unformatted data that had to be heavily processed before it was comprehendible by humans. The age of enterprise reporting began. As data-processing technology improved, the expectation of the results also rose. Not only were accurate results expected, the format and presentation also became very important. The goal of enterprise reporting shifted more and more towards presenting the results in a pleasing, boardroom quality output. Those reports were high-fidelity paper reports, which were printed.

With the introduction of Internet technology, the requirements for enterprise reports changed. Online became their primary distribution medium, but still they were reports originally designed for printing. They were just produced to a compatible format, so users using their lightweight browser environments could view them.

Now that the Internet-technology has become an essential part of our information technology infrastructure, enterprise reporting has taken on a new meaning: enterprise data publishing. The requirements for page-based, printable reports are still there, but the presentation requirements for online reporting have changed dramatically. In the Web environment, there is no such thing as a “page” that is limited by a specific width and height. While paper pages are bound to strict page outlines, Web pages flow within the confines of your Web browser. To fit in a modern Web-environment it is also essential to use the latest technologies available in order to produce high fidelity Web pages. Online (data) publishing heavily utilizes dynamic media content, from animated images to full-blown animations and streaming content; all these are parts of a modern Web presentation.

Page 3: Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

In modern information technology environment, integration and interaction is a big issue. The key to this is openness: openness towards data, openness towards output and openness to possible requirements, meaning extensibility, as you need it. You want to be able to use a system out of the box but also be able to extend it over time to adjust it to new or changed requirements. Using documented interfaces (Application Programming Interface, API) you extend existing or create completely new functionality to fit your requirements. Extending your infrastructure should be easy and uniform across your entire IT infrastructure. The J2EE platform is designed to provide exactly that: a uniform environment for developing applications, regardless of operating system and hardware platform.

Enterprise data publishing is much more than just producing numbers on paper. It is presenting whatever information you need, however you need it, wherever you need it – any data, any format, anywhere – Oracle Reports.

Page 4: Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

ORACLE REPORTS – HIGH END REPORTING MADE SIMPLE

Oracle Reports is a powerful Enterprise Reporting tool to build and publish high quality, dynamically generated Web reports. Through data-driven tables of contents, hyperlinks, and drill-down chart hyperlinks, Oracle Reports provides users with an easy route to the information they require.

Rapid Development

Using a declarative, document centric development model, Oracle Reports Developer focuses a new user on the tasks required in the production of a report, while still allowing experienced developers to have total control of their report development. Each major task in report production is expedited by the use of an appropriate Wizard, while the use of Report Templates and a live data pre-view allows for easy customization of the report structure. Once daunting tasks, such as complex data-models and layouts become simple ‘drag & drop’ actions. For example, the Query Wizard allows for the visual representation and construction of the complex SQL on which operational reports are often based, while the Report wizard steps the developer through the task of defining a report structure, data source, break groups and summaries.

Wizards Simplify Report Development

Unlike many graphical reporting tools, Oracle Reports Developer does not apply any limitation on the number of queries defined within the report (many allow only a single query per report module), nor the overall format of the data returned. Based on page/frame model rather than the more simplistic banded reporting paradigm, Oracle Reports Developer allows for an almost unlimited number of report formats, without the need to resort to the complexity of nested report modules or complex procedural code.

On creation of a report definition, the report layout is displayed, along with the first page of data, in the ‘Live Pre-Viewer’. In this WYSIWYG view the developer is able to see immediately the impact their format choices have, or will have, on the final report and hence, they can further enhance the output by the direct manipulation of report objects.

Page 5: Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

Oracle Reports WYSIWYG Report Editor

As the requirements for a report change with the changing business environment Oracle Reports Developer simplifies the modification process by use of re-entrant Wizard technology. That is, a developer may return repeatedly to a wizard to make further modification, without loosing the current customizations that have been made. Currently most implementations of development wizards assume that any invocation is the first and will destroy any work to that point.

ANY DATA - PUBLISH ALL YOUR DATA, TRANSPARENTLY AND FLEXIBLE

In a modern IT environment, data is produced in different places and different formats. Consolidation into a single source of truth is often difficult and in some cases even unwanted. You just want to publish specific information without having to transform or consolidate it first.

Oracle Reports provides you with multiple data sources out-of-the-box. It supports SQL, PL/SQL (=ref-cursor), Express, XML, JDBC, Oracle OLAP and text-files (delimited and fixed format). You can combine queries from different sources in a single report and link them to produce master-detail relationships. With Oracle Reports it does not make any difference where the data of a query comes from.

Oracle Reports supports a variety of data sources and also provides a Java-API so you can create your own

datasource

These data sources are written against a Java-based API that also allows you to create and plug in your own data sources. A Java-class implementing the Pluggable Data source API allows you to create access mechanisms for data, common to your business and integrate it into reports, allowing you to use this data directly in your report.

Suppose you're building a report based on your supplier's inventory, accessible via an XML stream over the Internet, and your own inventory, stored in an Oracle database. Using the JDBC data source, you can access data from different JDBC-compliant datasources in a single report.

In order to easily personalize your query, you can include parameters into your query-definition, which allows you to pass query-criteria at runtime. For example, if you create a

Page 6: Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

report where you want to list employees that are with the company for a number of years, but this number is not set yet or changes, you can add these criteria as parameter and pass the actual value when you execute the report.

Data from an Oracle Database (upper block) and an XML-stream (lower block) combined in a single Report

This example shows a report that combines data from an SQL data source (warehouse data on the top) and data from an live XML feed via the Internet (inventory data, below) in a single report. You can also aggregate data across data sources and use columns regardless from where they originally come from.

Oracle Reports provides native access for data stored in Oracle OLAP as well as Express, which allows you to smoothly transition your OLAP data stored in Express to the new OLAP Services.

The only visible difference in the data model is a small icon, indicating the data source that is behind the query. Other than that, all queries are handled similarly. All PDSs are also available in wizard-driven report creation and can be used for all available report-styles.

Integrated Approach to Business Intelligence

Every organization has a spectrum of Business Intelligence requirements ranging from complex MIS written operational reports, to end user based ad-hoc queries to advanced analytical tasks like forecasting and “what if” analysis. However, in general the insight gained from corporate data may be simplified to three basic questions:

• How is my business doing?

• What influenced this and what factors were involved?

• Based on certain trends where will my business go?

The job functions of those tasked with answering these questions has often resulted in the use of quite different reporting methods. That is, traditional structured reports for (1), drill and pivot ad-hoc query tools for (2) and advanced analytical engines for question (3).

To date the use of disparate tools, often from separate vendors, has resulted in ‘pockets of knowledge’ without the

AdvancedAnalysis

AdvancedAdvancedAnalysisAnalysisAd Hoc Query

and AnalysisAd Hoc QueryAd Hoc Queryand Analysisand Analysis

EnterpriseReportingEnterpriseEnterpriseReportingReporting

What were sales by Region last quarter?

What is driving the increase in revenue

in the Western Region?

Given the rapid increase in Web sales, what will total sales be for the rest of the year?

Page 7: Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

ability for others to easily access the findings or to drill further into the results. A successful solution to Business Intelligence gathering should therefore allow end users to take advantage of the findings of others and to feed their own findings into an integrated solution.

Integrated business Intelligence across the enterprise

In order to make the most of the information gained from analytical tools it needs to be accessible to as wide an audience as possible. Oracle Reports facilitates the publishing of analytical data to the enterprise in two ways;

• By allowing for the creation of reports directly from worksheets created in OracleAS Discoverer, Oracle’s award winning ad-hoc query and analysis tool for Relational databases.

Generate Operational Reports directly from Ad-Hoc query worksheets

• By including an Oracle OLAP pluggable data source. On-line analytical processing (OLAP) services are part of the Oracle database. These Oracle analytical functions allow users to answer typical on-line analytical processing (OLAP) questions on demand. Powerful analytics like ranking, period-to-period comparisons and moving averages are now easy to use. In addition, users can sort, pivot, and drill on the data to meet their needs.

OracleAS Discoverer

Oracle Reports

Page 8: Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

ANY FORMAT – YOUR DATA FROM BOARDROOM-QUALITY TO ONLINE-FLEXIBILITY

Once created, a report can serve various purposes. From being served or distributed online to being printed, all from a single layout model. This approach would be true for strict page-oriented, paper-based publishing, but there are differences between creating a report for printing and reproducing its appearance in a Web-environment vs. true Web publishing.

Paper-based publishing – still a valid way to present data

For traditional Enterprise reporting, a report was always designed for printing and only secondary for online presentation. And even then, its original format –the page- was preserved. Oracle Reports pays respect to this way of publishing, by offering various output formats for its paper layout. Besides PDF, HTML and HTMLCSS, the traditional Web-formats, it offers RTF (incl. Unicode support) for support of e.g. Microsoft Word, as well as more data- rather than formatting oriented formats like DELIMITED or XML.

The same report in XML (left) and in PDF (right)

The latter two will produce the data contained in the report for other applications to process . This way you can produce a boardroom-quality report in PDF and from the same report interchangeable data for business-to-business applications.

An example would be a catalogue of your inventory. You could produce a high-fidelity version in PDF for your customers to view and print, and from the same report, by just changing the destination format in your request,

Page 9: Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

produce an XML version, which your customers can use to import in their own order management or inventory system.

In terms of PDF generation, the driver of Oracle Reports has multiple major enhancements. It now supports the use of multibyte fonts, such as simplified and traditional Chinese, Korean, Japanese. In conjunction with Adobes’ Asian Font Pack you can now produce reports for multi-byte users.

Different language characters combined in a single report

In order to produce real client-independent PDF files, Oracle Reports now supports font embedding and font sub setting, which includes the font definition of all used fonts in the report. By choosing one or the other, you can specify, whether you want to include the complete font set (embedding) or just the definition for the characters used (sub-setting). The resulting PDF document can be viewed in any PDF viewer, regardless if the used fonts are installed, or not. Font sub setting is especially useful if you’re dealing with Unicode documents, displaying different character-sets in a single report. You can then subset the font, so the document looks the same on any browser. Also special fonts that define your corporate identity can be included in the PDF file, so your customer does not need to install those specific fonts in order to view the document correctly.

To optimize the download time, we also support PDF compression, which allows you to minimize the size of your PDF document. Although compression is especially useful for documents with embedded/subsetted fonts, it can be used with any PDF document.

Page 10: Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

Implementing the PDF 1.4 standard for tagging PDF files adds, in conjunction with new properties in the paper layout, accessibility to the generated PDF document. It contains information that allows screen readers, such as Freedom Scientific’s JAWS, to read the PDF documents content.

Web vs. paper publishing

Today’s IT environments are all about online services and most of them are based on Web-technology focused on browser based delivery of information. In a browser-based environment, there are no traditional page boundaries as on a paper-page; the layout is flowing. A Web page is a collection of elements coming from different sources bound and rendered in the Web browser. Dynamic content is usually embedded in a framework of static information creating the basic look-and-feel of the Web page. This look and feel is created by a Web designer in any HTML-authoring tool and then handed to the different contributors to put content into the provided framework.

A “true” webpage, containing dynamic report content, created created using the new Web Source of Oracle

Reports

Oracle Reports introduces the new reporting paradigm called the Web source. Based on Java Server-Pages (JSP) technology it allows you to “inject” dynamic report content into any surrounding structure. This could be an existing web-page or any other format that you want to inject content into (e.g. WML for wireless browsers, …). The goal here is seamless integration into the HTML page, rather than exact reproduction of a paper layout as it is with our HTML(CSS) rendering of the paper-layout.

Page 11: Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

Using custom tags, the control elements of a JSP, you add programmatic elements in your HTML layout. At execution time, those elements access the data model, fetch the data from the data sources and produce the actual data.

Both Web source and Paper-Layout reside in the same file and so a single file can produce both Web and paper output. You can provide a true Web version of your report by executing the JSP in OracleAS or producing, for example, a PDF file from your paper-layout stored in the exact same file, by executing the report using Oracle Reports Services. The web source is based on standard JSP1.1 technology, which allows you to include other functionality, such as JavaBeans or regular Java Code into the page.

Web and paper layout, out of a single report definition file

Oracle Reports allows you to share data model and program unit objects within a Paper-based layout and a Web-based layout. In essence this means that the actual report needs to be developed just once - and the same data model and business logic can be used for Web publishing. Web designers can design the Web page itself, and the data component can be incorporated into the page using Oracle Reports JSP tags. This will also ensure a smooth migration for existing reports that incorporate a paper layout, and need to be moved to the Web. Thus, existing investments can be protected.

The Reports Builder is now capable of opening and saving various formats. The RDF, JSP and XML will all store data model as well as Web source and paper layout. However, only the JSP format provides you with the flexibility of the “develop once, deploy anywhere” principles of Oracle Reports. The JSP format can be executed in the applications

Page 12: Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

servers’ JSP engine to produce the Web output or can be used with OracleAS Reports Services to produce the paper output.

JavaServerPages offer the following advantages:

• Separation of dynamic and static content

• Support for scripting and tags

• Reuse of components and tags

• Portable, powerful and easy to use

• Accepted, industry-standard way of building dynamic Web pages

• Use of a non-proprietary scripting language (Java)

• Compiled for permanent execution

Report Versioning, Customization and Personalization using XML definitions

Though modern analysis and design techniques aim to meet the requirements of the entire user base as closely as possible, it is rare that a new report module will meet the needs of different users in quite the same manner. For example, the amount of information displayed may be insufficient for a given user or conversely superfluous to requirement, or simply in the wrong format. As such, it is often the case that the base report module is further customized for each unique need, resulting in a plethora of reports, each of which differs slightly from the original report definition

The problem is further compounded when a new version of the base report is released, as any custom modification would need to be rolled forward into the new version. This can result in a significant effort on the part of the application developers, and, in particular, greatly effects vendors of ERP style applications, where the modules are often heavily modified for each customer site in order to meet their own corporate standards (e.g. Logo, Font, Look and Feel etc.)

Oracle Reports Server answers this need by allowing the modifications to be externalized into a separate file, rather than having to create a unique version of the report. By creating and applying different customization files, the

Page 13: Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

report output can be customized on a per user or group basis without changing the original report definition

Hard coded modifications Vs. Runtime customization with Oracle Reports

Defined using XML, the customization file allows for both the modification of current objects in the report and also the creation of new components. Using these XML tags it is possible to build a full or partial report definition that will then serve as either a customization file or even a completely self contained report.

The ability to externalize modifications greatly simplifies the upgrade process, as well as the need to make an application site specific. As an XML definition is applied, it is possible to save the resultant combined definition, resulting in a new unique module. By performing a batch update to the application’s existing reports, it is possible to quickly update/upgrade a large number of modules without the need to open each file in the Reports Developer to manually make the changes. For example, a vendor of an ERP suite may wish to allow each customer to define the look and feel for their reports, requiring modification to fonts, colors etc. Through the use of XML based customization, gross changes of this nature can be made to the entire application in a single step.

User A Version

User B Version

Each user customizes the definition to create a unique report to meet their requirements.

Version 1Version 1Version 1Version 1 Version 2Version 3

Version 4...

Customization must be re-appliedfor each new version

User A User B

Customization is externalized and applied at runtime.

Version 1

A single report definition for all users.

XMLXML

Page 14: Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

ANYWHERE – WHEREVER YOU WANT YOUR DATA

Oracle Reports is all about publishing data. Publishing YOUR data WHEREVER you need it. In order to bring flexibility to publishing, Oracle Reports is offering a number of features that allow you to bring the published data exactly where YOU need it.

Deployment made simple

The OracleAS Reports Services allow you to deploy your reports on the OracleAS. The Reports Server Infrastructure, written in 100% Java provides mechanisms for securing and scheduling your jobs, as well as access-mechanisms to submit jobs via HTTP (reports servlet), PL/SQL or command-line (reports thin-client).

Pluggable features like notification allow you to integrate the reports-server into your existing business systems in a bi-directional manner. After submitting a job, you have access to the server-queue information in XML format so you can easily track your job from within an application and the pluggable notification allows you to implement callback-mechanisms where the server can notify your application when a job has finished.

Other pluggable mechanisms like the cache-management and security allow you to create your own implementations, if you require special handling. With the pluggable engine, you can even use the OracleAS Reports Services infrastructure to perform additional tasks (e.g. execute an operating system command) and leverage the other services of the server such as scheduling, security and distribution of the output.

Advanced mechanisms

With Enterprise reporting, you can produce multiple reports that respond to different requirements. For example, several managers in your company may need information specific to their departments. By using enterprise reporting, you can run a report once to generate multiple files, each file containing the information each manager needs for his department. For example, if you produce reports about data of your employees, a manager of a particular department is

Page 15: Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

interested in a brief overview of the company but only in the detail for his particular department.

Distributing reports sections to different recipients in a single run of the report.

Enterprise reporting enables you customize information for your audience. Oracle Reports provides a new feature called bursting that allows you to split the output of your report based on a repeating-group in your report. In our example, you would burst around the department group to produce the output for each department. The outputs are generated in a single run of the report.

Using the distribution feature of Oracle Reports, the result of this bursting could then be distributed wherever you need it. You could generate a PDF file of the report for every department and push it into OracleAS Portal or email the reports to the managers of each department.

The “rules” for distribution are defined in a distribution-file in XML format and passed to the report-request. OracleAS Reports Services will then render the report and distribute the output to the specified destinations. You can distribute to as many destinations as you want at the same time. For example, you could send the report by email to the department managers and archive them at the same time in OracleAS Portal.

The email-destination allows you to assemble your email however you want it. You can decide if you want the report output as attachment or as the body and add static files as attachments as well.

<foreach> <mail id="ex2" to="&<warehouseManagerEmail>" from="[email protected]" subject="Inventory Overview for Warehouse &<city>"> <body srcType="text"> Please find attached the Inventory Overview of your warehouse for your

convenience. </body> <attach format="pdf" name="report_&<city>.pdf" srcType="report" instance="this"> <include src="mainSection"/> </attach>

Page 16: Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

</mail> </foreach>

Example distribution file

This examples will create one email for each record in the bursting-group of the report, use fields from the data model to populate the TO field as well as enhance the content of the SUBJECT. The email will have a static text in the body and will have a PDF file attached, which name is enhanced using a field of the data model, and will contain only the data, for the current record of the bursting group. It will contain only the main section of the report.

Distribute your report to any kind of destination, printer, file, web … and if you can’t find the one you need, you can

create it in Java.

All destinations are built against another interface, the Pluggable Destination API. This allows you to extend this functionality as well. You can write your own destination and plug it into the reports infrastructure. If you for example want to push the report output directly into Oracle iFS or send it to a remote location via FTP, you can implement this functionality as new Pluggable Destinations.

CONCLUSION

In a modern IT environment, reporting is no longer just about simple representation of data; reporting is also about how and where the data is presented. High fidelity, boardroom-quality reports that are usually printed or at least designed in a way, so they are paper oriented to be printable later on, stand against the growing area of online data publishing; the ad-hoc way of presenting data in a Web-browser as the point of service.

Modern enterprise data publishing is all about online. Online presentation of data and online servicing even the boardroom report requests. Oracle Reports offers a solution

Page 17: Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

for both areas. The traditional Paper Layout gives you high-quality, paper oriented output with options to generate this output in many different online formats like PDF, HTML, HTMLCSS as well as print it directly, while the new Web-oriented publishing solution, based on JavaServerPages, allows you to easily integrate dynamic report content into your regular Web page so it fits your website look and feel 100%.

Opening up the complete infrastructure by exposing and documenting certain APIs, you can even extend reports functionality by adding data-sources, destinations or other components of the Oracle Reports framework.

Oracle Reports has become the complete solution for all your Enterprise Data Publishing needs of any data in any format anywhere.

Page 18: Enterprise Data Publishing with Oracle Reports: Any Data, Any ...

Enterprise Data Publishing with Oracle Reports February 2002 Authors: Philipp Weckerle Copyright © Oracle Corporation 2001 All Rights Reserved Printed in the U.S.A. This document is provided for informational purposes only and the information herein is subject to change without notice. Please report any errors herein to Oracle Corporation. Oracle Corporation does not provide any warranties covering and specifically disclaims any liability in connection with this document. Oracle is a registered trademark and Enabling the Information Age and Software Powers the Internet are trademarks of Oracle Corporation. All other company or product names are mentioned for identification purposes only, and may be trademarks of their respective owners.

Oracle Corporation World Headquarters 500 Oracle Parkway Redwood Shores, CA 94065 U.S.A. Worldwide Inquiries: 650.506.7000 Fax 650.506.7200 Copyright © Oracle Corporation 1995 All Rights Reserved