加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

IBM Cognos BI 最佳实践: IBM Cognos 8.3 中的报表批量分发功能

发布时间:2020-12-14 03:30:14 所属栏目:大数据 来源:网络整理
导读:登录 (或注册) 中文 IBM 技术主题 软件下载 社区 技术讲座 搜索 developerWorks 打印本页面 用电子邮件发送本页面 新浪微博 人人网 腾讯微博 搜狐微博 网易微博 Digg Facebook Twitter Delicious Linked In developerWorks 中国 技术主题 Information Manage
  • dW

  • 登录 (或注册)
  • 中文
  • IBM

  • 打印本页面
  • 用电子邮件发送本页面
  • 新浪微博
  • 人人网
  • 腾讯微博
  • 搜狐微博
  • 网易微博
  • Digg
  • Facebook
  • Twitter
  • Delicious
  • Linked In
  • developerWorks 中国
  • 技术主题
  • Information Management
  • 文档库

IBM Cognos BI 最佳实践: IBM Cognos 8.3 中的报表批量分发功能

本文档讨论了在多个场景下 IBM Cognos 8.3 中的报表批量分发(burst)如何工作。这些信息旨在补充 Report Studio 用户指南中的信息。

?评论:

developerWorks 中国网站编辑团队,编辑,IBM

2010 年 5 月 21 日

  • +

    内容

1. 简介

1.1 目的

本文档讨论了在多个场景下 IBM Cognos 8.3 中的报表批量分发(burst)如何工作。这些信息旨在补充 Report Studio 用户指南中的信息。

1.2 适用范围

本文档适用于 IBM Cognos 8.3 Business Intelligence。

2. 批量分发 ?List1? 报表

我们将查看三种选项来批量分发一个带有分组 List 报表的简单示例。List 查询包含我们希望传播的信息,其中包括一个分组数据项,它决定了哪些用户获得哪些数据。

我们将虚构一个包含地区销售信息的报表。该报表将根据地区代码分组并批量分发。

2.1 选项 1 – 使用一个查询的批量分发

对于这一选项,我们将定义一个单一查询,它将用于以下三种用途:

  • 作为 List Query
  • 作为 Burst Query
  • 作为 Recipient Query

在本例中,该查询名为 List Query。

List?Query 将包含以下信息:

图 1. List?Query 包含的信息

或 Repeater 报表,这种报表也使用非旋转(un-pivoted)查询。

注意,如阴影部分所示,包含 Recipients 会对每个 Recipient 重复数据。即使在这个简单的例子中,查询中的行数因为添加了接收者而翻倍。这会对数据检索产生影响,但是不会影响对查询布局查询结果的批量分发。在生成报表输出时,批量分发的关键信息将进行分组,并且使用不同的批量分发键为每个批量分发键生成一个输出文件(或文件集,如果以多种格式呈现的话)。

图 2. 配置批量分发方式

在运行时, 这个批量分发将按以下方式执行:

1. Burst Query (List Query) 将运行。

2. 对于 Burst Query 中的每个 Burst Group (Region Code),Recipients 都是可用的。

3. 为 Burst Query 中的每个 Burst Group (Region Code) 创建一个 Burst Instance(比如,PDF 文件),并发送到相关的 Recipient Address(s)。

这样做的结果就是 Burst Query (List Query) 将运行一次,并且我们将 Burst Groups (Region Code) 分发到 Recipients。

使用该选项的理想情况是所有或大部分 Burst Groups 都被发送给一个 Recipient,这样查询中就不会出现或只有少量的重复数据。

注意:如果批量分发键和接收者被存储在多个表中,那么需要处理这些表之间的连接(join),以确定批量分发 / 接收者查询的连接后的查询结果。

2.2 列表选项 2 – 使用两个查询的批量分发

在这个选项中,我们将定义两个单独的查询:

  • List 和 Burst Query:同时用作 List 查询和 Burst 查询
  • Recipient Query:用作 Recipient 查询

List 和 Burst Query 包含我们希望传播的信息,包括 Region 分组数据项,我们将对该数据项确定哪些用户获得哪些数据:

表 1. List 和 Burst Query 查询
Region Code Region Revenue
NA North America $123
ER Europe OT Other $123

Recipient Query 包含 Recipient 信息。在我们的例子中,Recipients 全部是电子邮件地址。该查询将 Recipient(s) 和 Burst Group (Region) 关联了起来。

表 2. Recipient Query 查询
Recipient
fred.smith@abc.com
maggie.jones@abc.com
david.black@abc.com
jane.white@abc.com
mary.doe@abc.com
teddy.schmoe.abc.com

我们将按如下所示配置批量分发:

图 3. 配置批量分发

为了连接 Burst Query 中的 Region 和 Recipient 查询中的 Region,主从关系将指定 [Region Code] -> [Region Code]。

在运行时,这个批量分发将按以下方式执行:

  1. Burst Query (List and Burst Query) 将运行。
  2. 对于 Burst Query 中的 Burst Group (Region Code),我们将执行 Burst Recipients 查询 (Recipient Query),该查询将 Region Code 作为一个过滤项传递(典型的主从操作)。
  3. 在 Burst Query 中为每个 Burst Group (Region Code) 创建一个 Burst Instance(比如 PDF 文件),并发送到相关的 Recipient Address(s)。

这样做的结果就是 Burst Query 将运行一次 ,并且 Burst Groups (Region Codes) 将对每个 Burst Group (Region Code) 执行一次 Recipient Query。

这个选项的优点就是它不会在 List Query 中复制数据。此选项适合用于需要将每个 Burst Group 发送到多个 Recipient 的场景。由于 Recipient Query 会运行多次,因此此方法的一个潜在缺点就是可能会由于多个查询而引起数据库负载问题,但是它的优点是不需要处理单独的 burst 和 recipient 表之间的连接。然而,每个 Burst Group 的 Recipient 列表都非常小,这些查询通常也非常小,因此对数据库的影响也较小。

2.3 选项 3 多个接收者电子邮件地址

一个不常见的选项是在 Recipient Query 的一个单一行中指定多个接收者。只有在接收者为电子邮件时才支持该选项。

表 3. 单一行中指定多个接收者的查询
Revenue
$123 fred.smith@abc.com,maggie.jones@abc.com
david.black@abc.com,jane.white@abc.com
mary.doe@abc.com,teddy.schmoe@abc.com

在 Recipient 数据项中,使用逗号分隔多个电子邮件接收者。这允许我们使用选项 1 –单个查询,并且避免了复制数据或运行多个查询的缺点。我们的查询将如下所示:

该选项是 IBM Cognos 8.3 的新增特性。

回页首

3. 批量分发交叉表 2

IBM Cognos 8 不支持直接批量分发一个交叉表查询。因此,必须使用单独的 Burst 和 Crosstab Queries。我们将讨论使用两个或三个查询的选项。

3.1 交叉表选项 1 – 使用两个查询的批量分发

与列表选项 1 相同,该选项对 Burst and Recipient 查询使用单个查询:

图 4. Burst and Recipient 查询使用单个查询

表 4. 使用两个查询的批量分发
NorthAmerica
jane.white@abc.com

由于实际的数据位于 crosstab 查询中,因此 Burst and Recipient 查询只需要包含 Burst Key (Region Code) 和 Recipient:

crosstab 查询将包含数据。crosstab 查询将针对每个 Burst Key 执行一次。当从接收者处分离出数据后,在 Burst Query 中返回相同的数据不会产生任何问题。

crosstab 查询将对每个不同的批量分发键执行一次。

3.2 交叉表选项 2 – 使用三个查询的批量分发

一个批量分发也可以使用三个查询。将从 Burst Query 到 crosstab 查询以及到 Recipient Query 查询之间建立一个主从关系,如下所示:

图 5. 交叉表选项

burst 查询将包含 Burst Group (Region Code) 和 Label (Region):

表 5. burst 查询
Region
NorthAmerica
Europe
Other

Recipient Query 将包含 Burst Group 和 Recipient:

Region Recipient

表 6. Region Recipient 查询
Crosstab Query?与 Recipient Query 相同。

该方法没有明显的优势,并且有一个缺点,因为现在需要多次提交 Recipient Query(对每个批量分发组提交一次)。

3.3 选项 3 多个接收者邮件地址

它的操作方式与 list 和 crosstab 查询相同。

再次说明,对于电子邮件类型的接收者,当使用逗号分隔电子邮件接收者时,可以在一个行内定义多个接收者。这允许我们对交叉表使用选项 1 的包含两个查询的方法。burst and recipient 查询将如下所示:

表 7. burst and recipient 查询
回页首

4. 批量分发多语种报表

每个批量分发报表执行都在一种语言(本地)中运行。因此,要批量分发多语种报表,必须在每一种语言中运行它。通过调度报表并选择需要的语言可以实现这一点。注意,将针对选择的每一种语言运行报表(并批量分发)。

在报表内部,还需要根据语言过滤接收者。这需要对 Recipient 信息添加额外的语言代码并对 Recipient Query 进行过滤。Locale() 函数可用于返回当前语言,以实现过滤目的。

回页首

5. 批量分发不同的报表模式

大多数报表模式,比如 PDF、HTML 和 Excel,都根据由创建者指定的报表布局呈现。CSV 和 XML 都基于这些数据。因此,当批量分发到基于布局和数据组合的格式时,报表将运行两次来创建所需的布局。

回页首

6. 结束语

实现批量分发有多种选择;本文档的信息旨在帮助您选择最适合自己的方式。

回页首

附录 A:术语

  • Burst Group?– 报表分组项,用于创建 Burst Instances,比如 Region Code
  • Burst Instance?– 一个报表结果,比如一个 PDF 文档,其中选中的数据将被分发到 Burst Recipients
  • Burst Recipient?– IBM Cognos 8 用户或邮件地址,可将 Burst Instance 发送给这些接收者或供其使用。
  • Burst Query?– 驱动批量分发处理的查询。该查询包含 Burst Group 数据项。对于列表而言,该查询通常是由列表引用的查询。由于 crosstab 查询无法直接执行批量分发,因此 Burst Query 通常用作一个主列表查询,而 crosstab 为从查询。
  • Recipient Query?– 包含 Burst Recipient 信息的查询。这通常是与 Burst Query 相同的查询。
  • Recipient Data Item?– Recipient Query 中的数据项,包含电子邮件地址或接收者的 CAMID。
  • Burst Master-Detail?– 用于连接 Burst Query 和 Recipient Query。
  • Burst Label?– 用于为 Burst Instances 提供名称的数据项,例如按 Region Code 批量分发的报表可能包含 Region 的 Burst Label。

参考资料

学习

  • 通过?developerWorks Information Management 专区:在这里可以学到更多关于 Information Management 的知识。还可以找到技术文档、how-to 文章、培训、下载、产品信息等。
  • 通过 Information Management 专区?Cognos BI 专题,了解更多有关 Cognos BI 专题的产品和技术资源。
  • 通过?商业智能入门以及 Cognos 产品介绍,了解 商业智能的基本概念和相关技术,并介绍了 Cognos 商业智能相关的产品。
  • 通过访问?IBM Cognos 8 Business Intelligence,学习 IBM Cognos 8 Business Intelligence 产品的相关知识。
  • 通过访问?Cognos 8.3 Software Environments,了解 Cognos 8.3 产品安装的相关环境要求。

获得产品和技术

  • 在线试用?IBM Cognos BI 试用版软件,了解 IBM Cognos BI 商业智能解决方案的最新版本新功能。
  • 下载?IBM Cognos Express V9 试用版软件,了解 IBM 专为中型企业定制的集成商业智能和计划解决方案。
  • 获取更多?IBM 试用版软件,并熟练掌握来自 DB2?、Lotus?、Tivoli?,以及 WebSphere?的开发工具和中间件产品,用这些试用版软件开发您的下一个项目。这些试用版软件可以免费直接从 developerWorks 下载。

讨论

  • 参与?developerWorks blogs并加入 developerWorks 社区。

条评论

请?登录?或?注册?后发表评论。

注意:评论中不支持 HTML 语法


剩余?1000?字符

快来添加第一条评论

  • IBM PureSystems

    IBM PureSystems? 系列解决方案是一个专家集成系统

  • developerWorks 学习路线图

    通过学习路线图系统掌握软件开发技能

  • 软件下载资源中心

    软件下载、试用版及云计算

回页首

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读