当前位置导航:炫浪网>>网络学院>>编程开发>>Oracle教程

Oracle XML Publisher构建在线报表

   作为 Oracle 融合中间件系列产品中的一员,基于 Java 的 Oracle XML Publisher 5.6.2 使您能够利用 SQL 和 XML 数据源定义、发布、保护以及调度报表。 Oracle XML Publisher 最初只是作为电子商务套件中的技术来开发的,现在,它可以作为单独的产品从 eDelivery 下载,并可使用 J2EE 应用服务器(例如 Oracle Application Server Containers for J2EE (OC4J) 或 Apache Tomcat)进行部署。 最棒的是,XML Publisher 使用 Microsoft Word 和 Adobe Acrobat 等常见桌面工具来定义报表布局,这意味着用户可以通过熟悉的环境来设计报表,而无需安装和学习一个全新的工具集。

  XML Publisher 包含一个基于服务器的报表引擎,该引擎将报表模板、希望报告的数据以及所有语言翻译集合在一起,然后以标准格式(如 Adobe PDF、HTML、XML、RTF 或 Microsoft Excel)分发输出。

  图 1

   清晰划分数据、布局以及界面有助于更轻松地以不同格式报告相同数据、更轻松地维护报表定义库以及更直接地引入多语言翻译等功能。 类似于 Oracle 融合中间件体系结构的其余部分,XML Publisher 是一款“可热交换”的独立产品,与所有基于标准的数据库或 Java 应用服务器集成。

   XML Publisher 5.6.2 版本新推出了 XML Publisher Enterprise,这是一个可用于部署、调度以及保护报表的完善环境。 XML Publisher Enterprise 将向用户提供一个 Web 门户,用户可在其中加载并发布报表模板,然后向企业内的其他用户和组提供这些模板。

   XML Publisher 使用基于 OpenSymphony Quartz 调度程序的调度引擎来运行并交付报表,之后可通过电子邮件或支持 WebDAV 的服务器对这些报表进行在线访问。

  那么,如何利用 XML Publisher 5.6.2 Enterprise 来构建在线报表应用程序呢?

背景

   在本示例中,您将为企业创建一个在线报表环境。 您需要创建一个您的同事将使用的初始报表集,之后您的用户会对其进行维护并创建他们自己的报表。 其中的关键要求是,报表环境基于 Web 并安全,用户可轻松导航并使用该环境;报表可按需运行或按计划定期运行,用户可将数据从其报表导入常见的桌面应用程序格式(如 Microsoft Excel 和 Adobe Acrobat)。

   报表最初的使用者包括采购部门用户和销售经理,前者希望查看有关供应商发票的报表,后者希望在其 Web 浏览器中和通过 Microsoft Excel 分析销售数据。

  在这些示例中,要报告的销售数据存储在 Oracle9i 数据库和 Oracle 数据库 10g 附带的 SH 示例模式中,而供应商发票数据将通过事务处理应用程序的 XML 馈送信息提供。 要创建自己的报表布局,请单击此处下载 SQL 查询和 XML 文件示例。

定义基于 SQL 的销售分析报表

   要创建的第一个报表是销售报表,该报表使用来自 SH 示例模式的数据。 开始之前,请打开您的 Web 浏览器并登录 XML Publisher Enterprise,以便整理您的报表定义。 成功输入用户名和密码后,您将看到 XML Publisher Enterprise 主页。

图 2

   该 Web 页面的左侧下部是任务窗格,其中包含的链接可用于创建新文件夹或报表或者上载现有报表。 该页面的右侧是一组 XML Publisher Enterprise 附带的示例报表。

   单击 Create a new folder 链接为即将定义的报表创建一个文件夹,将其命名为“Sample Reports”。 按此方法对报表进行分组易于将这些报表划分为不同的主题领域,稍后可指定能够访问个别文件夹和报表的用户和组。

图 3

   然后,导航至刚创建的文件夹,单击链接创建一个新报表,将其命名为“sales report”。 创建报表之后,您会看到若干选项,可用于查看、调度、编辑报表或查看报表执行历史。

图 4

   现在,报表已经创建,您需要编辑定义以指定数据模型、报表可能使用的所有参数以及报表布局。 为此,单击报表标题下的 Edit 链接。 之后,XML Publisher Enterprise 将调出一个动态 HTML 界面以树视图显示报表定义元素。

图 5

 

 

XML Publisher 报表定义包含以下元素:

  • 数据模型,即数据库查询或 XML 文档
  • 报表模板,稍后您会使用 XML Publisher Desktop 对其进行定义
  • 报表使用的所有参数以及
  • 参数下拉列表的所有值列表

   这四个元素共同组成了报表定义,之后 XML Publisher 会将该定义以 XML 格式存储在应用服务器中间层上。

   接下来,单击报表树视图上的 Data Model 节点,单击 New 按钮创建一个新的数据模型,然后选择连接至您的数据库的 JDBC 数据源。 如果还没有这样的连接,则需单击该页面顶部的 Admin 链接来定义 JDBC 连接。

图 6

   选定了数据源后,按 New Query Builder 按钮选择将从数据库连接返回的数据项。 Query Builder 使您能够使用图形用户界面选择数据库表和列。

图 7

   选定数据后,向查询添加联接条件和所有其他需要添加的元素,然后将其保存到 XML Publisher Enterprise。

图 8

   现在,您已经定义了数据模型,可以开始考虑报表模板的布局了。

   报表模板定义了页面上数据元素的排列方式,与即席查询工具(如 OracleBI Discoverer)不同,您的模板形式可以完全不受任何限制,模板中可包含来自多个查询的数据。 利用 XML Publisher,您可以使用标准的桌面工具(如 Microsoft Word 和 Adobe Acrobat)来定义报表模板。XML Publisher 5.6.2 的标准下载包括一个名为 XML Publisher Desktop 的 Microsoft Word 插件,可用于自动化大部分的模板设置过程。 在这些示例中,您将使用 Microsoft Word 和 XML Publisher Desktop(Microsoft Word 的插件)来定义模板。 (此处提供了一个展示 Word 模板定义过程的 Flash 演示。)

   安装完 XML Publisher Desktop 后,您将看到一个新增的工具栏菜单,利用它可访问 XML Publisher 的功能。 因为第一个报表基于通过 SQL 查询访问的数据,所以需要访问 Data 菜单,然后选择 Report Wizard。

图 9

   之后按照向导逐步进行操作,指定用于检索数据的 SQL 查询、详细的数据库 JDBC 连接信息以及使用 XML Publisher Enterprise 时要用的数据源名称。

图 10

  按向导完成操作后,您会看到一个默认的数据项布局。

图 11

   现在,可以使用 Microsoft Word 中的格式设置功能来更改表格式、添加报表页眉和页脚、更改使用的字体以及添加企业的品牌标识。 尽管可以删除默认报表布局内的列并进行重排,但对于这个报表,应保持这些列的完整,以便随后将数据集导出到 Microsoft Excel 进行进一步的分析。

 

 

   为了使该报表更有效,可为其配备一个图表。 使用 XML Publisher Desktop 可以轻松实现此目的。首先,单击 Insert 菜单上的 Chart 菜单项打开 Chart 对话框。

图 12

  通过 Chart 对话框指定一个 Vertical Bar Chart,其中 Amount Sold按 Product Category 进行分组。

图 13

    现在,查看您的报表模板,其中的表将附带一个代表您的条形图的示例图表图片。

图 14

   通过 Preview 菜单项预览了该模板后,将其作为 RTF 文件保存到您的 PC,以备上载至 XML Publisher Enterprise。

  为此,首先单击报表树视图的 Layouts 节点,然后单击 New 并命名您的报表布局。

图 15

  之后,再次单击 Layouts 节点,选择包含您的模板的 RTF 文件并将其上载到 XML Publisher Enterprise。

图 16

  最后,就是测试您的报表:保存报表定义,返回报表选项并单击 View 运行该报表。

图 17

 

相关内容
赞助商链接