跳转到主要内容

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

当您初次登录到 developerWorks 时,将会为您创建一份概要信息。您在 developerWorks 概要信息中选择公开的信息将公开显示给其他人,但您可以随时修改这些信息的显示状态。您的姓名(除非选择隐藏)和昵称将和您在 developerWorks 发布的内容一同显示。

所有提交的信息确保安全。

  • 关闭 [x]

当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

所有提交的信息确保安全。

  • 关闭 [x]

整合 IBM Enterprise Records 和 IBM Cognos BI

高禅, 高级软件工程师, IBM
高禅,IBM 中国软件开发中心的一名资深软件工程师,在 ECM 部门主要从事 Enterprise Content Management 相关产品应用的开发。
孙岩, 高级软件工程师, IBM
孙岩,IBM 中国软件开发中心的一名资深软件工程师,拥有多年的产品开发经验,主要从事 IBM Records Manager 和 IBM Enterprise Records 产品的开发。

简介: IBM Enterprise Records( 简称 IER) 整合了 Crystal Report 用以对 IER 提供统计报表。但是对于 Cognos 用户来说,IER 没有提供对 Cognos 的支持是一种遗憾。本文研究了如何将 IER 和 Cognos 进行整合,重点描述了配置过程。按照本文的方法读者可以利用 Cognos 为 IER 生成报表。本例中 IER 版本为 4.5.1,Cognos 版本为 8.4.1

发布日期: 2012 年 1 月 19 日
级别: 中级
访问情况 : 971 次浏览
评论: 


免费下载:IBM® Cognos® Express V9.5 或者 Cognos® 8 Business Intelligence Developer Edition V8.4 试用版
下载更多的 IBM 软件试用版,并加入 IBM 软件下载与技术交流群组,参与在线交流。

IBM Enterprise Records 简介

IBM Enterprise Records 是 IBM FileNet P8 产品套件的附加组件。IBM Enterprise Records 可用于为电子和物理信息创建并维护准确、安全且可靠的记录。用户可以使用 IBM Enterprise Records 来管理任何类型的记录,而与存储介质或格式无关。 在 IBM Enterprise Records 上下文中,记录是元数据 - 这是一个文件,它引用且包含关于另一个电子文件(文档)或物理对象的信息。用户可以创建记录以使文档或物理对象由公司或政府来控制,公司或政府将指定文档或 对象存储、访问及最终处理的方式。元数据的格式为记录属性,例如介质类型、格式、作者、主题、审阅员、位置和发布日期。用户可以按照针对该记录类型的政府标准和方针的要求来控制记录。


IBM Cognos Report Server 和 IBM Cognos Virtual View Manager 简介

IBM Cognos BI 是一个基于 Web 的商业智能产品。IBM Cognos BI 集成了报表(reporting),分析(analysis),记分卡(scorecarding),仪表盘(dashboarding),业务事件管理 (business event management)以及数据集成(data integration)等功能。 IBM Cognos BI 包括一个用来内容展示、管理的 Portal 以及若干用来创建、分析企业数据的 studio,除此之外还有一些如 Framework Manager,Transformer,Metric Designer 等客户端工具。 IBM Cognos BI Virtual View Manager 为企业级信息整合提供了一种虚拟数据管理系统。Virtual View Manager 提供了对各种数据源访问的接口,并提高了从不同数据源中查询数据的性能。在本例中使用 Cognos Virtual View Manager 的目的在于,Cognos BI 本身并不支持 JDBC 类型的数据源,只有 Cognos Virtual View Manager 提供基于 JDBC 的连接,而连接 IER 使用的是 FileNet P8 JDBC Driver,它是基于 JDBC 的实现,因此需要 Cognos Virtual View Manager 这个组件,相当于一个数据源桥梁的作用。


安装和配置 IBM Cognos BI

Cognos BI 是多层架构,分为用户接口层,Web 服务层,应用层,数据层。应用层可以配置一个或多个 Cognos BI 服务器。Cognos BI 架构如图:


图 1. Cognos BI 架构图
图 1. Cognos BI 架构图

Cognos BI 服务器负责处理报表、分析、查询等请求。报表的服务,定义,存储,运行等都依赖与 Cognos 服务器端,服务器端是基于 SOA 构架的 Cognos 服务,以 Web Service 的方式接受和处理用户请求,通过客户端来访问服务器获得这些资源。因此,使用 Cognos BI 集成 IER 的报表功能,我们要安装 Cognos BI 服务器。Cognos 是由许多功能组件构成的,可以分为服务器端组件和客户端组件。本文章以 Windows2003 操作系统为例介绍如何安装和配置。安装过程请参照 IBM Cognos BI 信息中心的安装章节。接下来要进行配置了。我们这里设定 Cognos 的安装目录为 %Cognos_Server_Install% Cognos BI 需要在一个 Web 服务器中运行。如果是 Windows 系统,可以使用 IIS 作为 Web 服务器,另外也可以使用 Tomcat 作为 Web 服务器,当然也可以使用其他 Web 服务器。下面介绍如何配置 IIS 服务器。 首先在 Windows 上安装 IIS 服务。这一步不再具体讲解,如果读者不太清楚,可以参阅 Windows 和 IIS 相关的文档。安装好 IIS 之后,首先我们创建一个虚拟目录,在填写虚拟目录别名的时候,这里要特别注意,如果是 Cognos8 版本,那么别名就是必须是 cognos8,如果是 Cognos10,那么别名就是 ibmcognos。本文以 Cognos8 为例,如下图:


图 2. 填写虚拟目录别名
图 2. 填写虚拟目录别名

指定网站内容目录,%Cognos_Server_Install%/c8/webcontent,如下图:


图 3. 网站内容目录
图 3. 网站内容目录

创建 cgi-bin 虚拟目录,别名必须为 cgi-bin,如下图 :


图 4. 填写 cgi-bin 虚拟目录别名
图 4. 填写 cgi-bin 虚拟目录别名

然后选择网站内容目录,这里选则 cgi-bin 所在的安装目录,%Cognos_Server_Install%/c8/cgi-bin 最后把"所有未知 CGI 扩展"设置为允许。


图 5. 设置为允许
图 5. 设置为允许

启动 Cognos configuration 进行设置。为了保证访问 server 的安全,通常要禁止匿名访问,即把匿名访问设置为否,转到 Security->Authentication->Cognos,将 Allow anonymous access 设置为 False Cognos BI Server 支持多种用户权限设置。本例以 NTLM 为例,进行 NTLM 用户的配置。右键选中 Security->Authentication,选择 New resource->Namespace,Name 输入 NTLM,Type 选择 NTLM,选择确定。配置好之后,启动 Cognos 服务,启动 Cognos 服务的方法为点击配置界面上方的 start 按钮,再启动 IIS 服务器,然后访问 Cognos 网关,验证 Cognos BI Server 是否能访问。网关为 : http://localhost:80/cognos8/cgi-bin/cognos.cgi 。


图 6.Cognos 网关
图 6.Cognos 网关

在浏览器中输入以上地址,会出现登录界面,Namespace 为 NTLM,要求输入用户名和密码,这里即为 Windows 系统用户的用户名和密码,然后进行登录,浏览器中看到 Cognos 管理界面,说明 Cognos BI Server 访问正常。如下图:


图 7.Cognos 管理界面
图 7.Cognos 管理界面

安装和配置 Cognos Virtual View Manager

Cognos Virtual View Manager(以下简称 Cognos VVM)的安装参照 Cognos BI 的安装章节。由于 FileNet JDBC Driver 不同于一般 JDBC Driver,它是基于 EJB 和 Webservice 两种传输模式,无论使用哪一种传输模式,都要对客户端进行一些配置,下面分别进行介绍。

基于 EJB 传输模式

通过 FileNet JDBC Driver 连接 FileNet Content Engine,FileNet ContentEngine 支持在主流的应用服务器上部署,WebSphere,Weblogic,JBoss 均支持,下面以 WebSphere 为例,介绍如何配置客户端,使其连接到部署在 WebSphere 上的 Content Engine Server。在配置之前,请停止 Cognos VVM 的服务,如图:


图 8. 停止 Cognos VVM 服务
图 8. 停止 Cognos VVM 服务

本文章以 WebSphere7 为例进行介绍,WebSphere 的安装目录为 %WebSphere_Install% 找到 Content Engine 服务器上 WebSphere 的安装目录下的 runtimes 目录,即 %WebSphere_Install%/runtimes,共有 10 个 jar 文件,如图:


图 9. WAS runtimes 下的 10jar 文件
图 9. WAS runtimes 下的 10jar 文件

把这 10jar 文件复制到 Cognos VVM 安装的机器上的任意目录下,例如 C:\config_EJB\WAS7_runtimes\。 在 Content Engine 服务器上找到 CE 的安装目录 %CE_Install%,在 lib 目录下,%CE_Install%/lib,复制 Jace.jar 和 log4j.jar 两个 jar 文件到 Cognos VVM 安装的机器上的任意目录下,例如 C:\config_EJB\CE_API\。把 WAS7_runtimes 和 CE_API 两个目录下的 jar 文件一同复制到 %Cognos VVM Install%\apps\extension\lib 目录下。 在 Content Engine 服务器上,在 %CE_Install>\config/samples/ 目录下,复制 jaas.conf.WebSphere 文件到 Cognos VVM 安装的机器上的任意目录下,例如 C:\config_EJB\files\,找到 %WebSphere_Install%/ AppServer/%your_profiles%/AppSrv01/properties/ 目录,复制 sas.client.props 文件到 Cognos VVM 安装的机器上的任意目录下,例如 C:\config_EJB\files\,然后打开 sas.client.props 文件,对一些项目进行修改,

 com.ibm.CORBA.securityServerHost=<host name> 
 com.ibm.CORBA.securityServerPort=<port> 
 com.ibm.CORBA.loginSource=none 
 

其中 <host name> 为 Content Engine Server 所在的主机名称,<port> 为 2809,如果是其他的应用服务器,请填写其相应的端口,文件内容如图:


图 10. sas.client.props 文件内容
图 10. sas.client.props

保存,关闭文件。 转到 %Cognos VVM Install%\bin 目录,打开 virtualviewmanager_server.bat 文件,加入两个 JVM 参数,-Dcom.ibm.CORBA.ConfigURL 和 -Djava.security.auth.login.config。 参数的值分别设置为:

 -Dcom.ibm.CORBA.ConfigURL="file: C:\config_EJB\files\sas.client.props"
 -Djava.security.auth.login.config="file: C:\config_EJB\files\jaas.conf.WebSphere"

可以把这两个 JVM 参数放置到 JAVA_OPTS 的最后。 启动 Cognos VVM 服务。

基于 EJB 传输模式

这种传输模式的好处是,不论对哪一种应用服务器,WebSphere,Weblogic 或者 JBoss,客户端都是同一的,不用为这些应用服务器单独配置客户端。首先在 Content Engine 服务器上找到如下目录,ProcessEngine/CE_API/lib/,复制该目录下的 5 个 jar 文件

 Jace.jar 
 log4j.jar 
 stax-api.jar 
 xlxpScanner.jar 
 xlxpScannerUtils.jar 

到 Cognos VVM 安装的机器上的任意目录下,例如 C:\config_WSI\CE_API,然后把 CE_API 目录下的 5 个 jar 文件一同复制到 %Cognos VVM Install%\apps\extension\lib 目录下。 在 Content Engine 服务器上,在 %CE_Install%\config/samples/ 目录下,复制 jaas.conf.WSI 文件到 Cognos VVM 安装的机器上的任意目录下,例如 C:\config_WSI\files\,转到 %Cognos VVM Install%\bin 目录,打开 virtualviewmanager_server.bat 文件,加入一个 JVM 参数,-Djava.security.auth.login.config 参数设置为

 -Djava.security.auth.login.config="file: C:\config_WSI\files\jaas.conf.WSI"
 

可以把这个 JVM 参数放置到 JAVA_OPTS 的最后。 启动 Cognos VVM 服务。


使用 Cognos Virtual View Manager 创建并发布数据源

打开 Cognos VVM studio,输入相关登录信息,用户名和密码初始为 admin/admin,如图:


图 11. Cognos VVM 登录界面
图 11. Cognos VVM 登录界面

创建 FileNet JDBC 数据源

Cognos VVM 原生支持 DB2,Oracle,SQL Server,MySQL,LDAP 等等多种数据源类型,对于 FileNet JDBC 这个数据源,可以使用 Generic 类型的数据源,首先我们要创建一个 Data source adapter,右键 localhost->shared,选择 New Data Source,在弹出的对话框中选择 New Adapter …,显示出 New Adapter 界面,如图:


图 12. Adapter 配置界面
图 12. Adapter 配置界面

输入 Name,Parent adapt er 选择 Generic JDBC,adapter class name 为 com.filenet.api.jdbc.Driver,针对 EJB 和 WSI 两种传输模式,Connection URL Pattern 有所区别。

  • EJB 传输模式下为 jdbc:filenetp8:iiop://<HOST>:<PORT>/FileNet/Engine?objectstores=<DATABASE_NAME> 注意,这里的 iiop 针对的是 WebSphere 应用服务器,如果是其他应用服务器会有所不同。
  • WSI 传输模式下为 jdbc:filenetp8:http://<HOST>:<PORT>/wsi/FNCEWS40MTOM?objectstores=<DATABASE_NAME>。

然后选择确定。创建完 adapter 之后,还需要修改相关配置文件,转到 adapter location 目录下,打开 filenetp8_values.xml 文件,把文件中的注释还原,找到文件中的 /introspection/relational/supportsCatalog 和 /introspection/relational/supportsSchema 两个属性,把 value 设置为 false,表示 FileNet JDBC Driver 不支持 catalog 和 schema,然后保存文件,关闭。 创建一个 FileNet 数据源,选中新创建的 FileNet adapter,点 next,如图:


图 13. 数据源创建页面
图 13. 数据源创建页面

输入 Name,Host 为 Content Engine 服务器的机器名,输入 Port,如果是 EJB 传输模式,使用 WebSphere,则为 2809,如果是 WSI 传输模式,使用 WebSphere,则为 9080。Database name 为 Content Engine 中 Object Store 的名字,login 和 password 为登录 Content Engine 的用户名和密码。如图:


图 14. EJB 传输模式的设置
图 14. EJB 传输模式的设置

选择下一步,在界面左侧会显示出该 Object Store 和它下面所有的 table,如图:


图 15. Object Store 下所有的 table
图 15. Object Store 下所有的 table

该界面列出 Object Store 下的所有的表,可以选择他们添加到数据源,这里选择全选,然后按确定。这样,在 Cognos VVM 中,一个 FileNet 的数据源就创建好了。这里注意,如果试图展开 filenetp8,但是并没有显示出任何 table 的时候,很有可能对 filenetp8_values.xml 文件的修改没有立即生效,解决方法是关闭 Cognos Studio,重新启动 Cognos VVM 服务,再次登录 Cognos Studio,按照上面的方法重新创建数据源。

发布数据源

数据源创建好之后,但如果提供给外界使用,还需要把数据源发布出来。发布的方法是在 Virtual View Manager Data Service 中创建一个 service,我们在 Databases 目录下创建一个名为 FileNetP8 的 service,由于 Cognos VVM 规定数据源的格式为 root->catalog->schema,因此在 FileNetP8 首先创建 catalog,名为 catalog,然后在 catalog 下创建 schema,名为 schema,这样,目录结构就创建好了。建好的结构如下图:


图 16. 目录结构
图 16. 目录结构

接下来把数据源的内容发布到 service 下。选中数据源下你想发布出来的 table,在这里我们把 table 全部选中,鼠标右键选择 publish,如图:


图 17. 选择 table 进行发布
图 17. 选择 table 进行发布

然后选择 schema,表示发布到 schema 下,至此就发布好了数据源,可以供外部使用了。如图:


图 18. 选择 schema 进行发布
图 18. 选择 schema 进行发布

创建 ODBC 数据源

在 Windows 系统中,创建一个 ODBC 数据源。打开 Windows ODBC data source administrator 界面,选择系统 DSN,然后新建,选择 Cognos Virtual View Manager 8.4,如图:


图 19. Cognos Virtual View Manager 8.4 Driver
图 19. Cognos Virtual View Manager 8.4 Driver

在配置界面输入相应的参数,DSN Name 任意指定,VVM Host 为 Cognos VVM 服务所在的主机名,Port 为 9401,User Name 为登录 Cognos VVM 的用户名即 admin,Password 为 admin,Domain 为 cognos,Datasource 为 filenetp8,Catalog 为 catalog,如图:


图 20. ODBC 配置界面
图 20. ODBC 配置界面

其中,Datasource 指的是 Cognos VVM 中发布出的 service 的名字,本例即为 filenetp8。 填好之后,可以进行测试,然后确定,一个 ODBC 数据源就建好了。


使用 Cognos Administration 创建数据源

访问 Cognos 网关,登录后转到 Cognos Administration->Configuration->Data Connection,选择新建数据源,按照步骤,每一步填写相关的内容,其中,在选择数据源类型这一步中,选择 IBM Cognos Virtual View Manager(ODBC),如图:


图 21.数据源类型
图 21.数据源类型

数据源信息,DSN 名称填写上一步中创建的 Windows ODBC 的名称,用户名和密码都设置为为不选中,其他都使用默认值。如图:


图 22. 数据源设置
图 22. 数据源设置

可以进行测试,测试成功后,选择完成,一个 Cognos 数据源就创建好了。


设计并运行 IER 报表

设计报表分为两部分,首先是设计报表的数据模型,有了数据模型之后,就可以在数据模型的基础上设计实际的报表。设计报表的数据模型使用的是 Cognos Framework Manager 组件,需要单独安装。设计报表使用的是 Report Studio,这个工具已经集成在 Cognos BI Server 中了。我们以一个简单 IER 报表为例,介绍如何设计报表,这个报表为列出所有的 RM Folder。

设计数据模型

安装好 Cognos Framework Manager 后,我们启动它,然后创建一个项目,提示选择数据源,当你不确定使用哪些数据库表时,可以先不选择,待之后再加入到模型中。进入 Cognos Framework Manager,我们为报表设计数据模型,该例子为列出所有的 RM Folder,涉及到 RMFolder 表,因此我们把 RMFolder 表从数据源加入到模型中,在此期间,把需要的表格列加入进来。选择步骤如下,右键 Model,选择 Run Metadata Wizard …,选择数据源,点 Next,选择一个数据源,这里面的数据源即为在 Cognos Administration 中创建的数据源,点 Next,展开 tables 目录,选择 Id,FolderName,PathName 三列,最后选择 Import。如图:


图 23. 选择 RMFolder
图 23. 选择 RMFolder

加入完之后,我们在界面左侧看到加入进来的 RMFolder,接下来可以进行 Test Sample,即测试一下表格中的数据。如图:


图 24. Test Sample 进行测试
图 24. Test Sample 进行测试

设计完数据模型之后,需要对其进行发布才能被报表使用。右键选中 packages,创建一个 package,选择要发布的模型,创建之后,对其进行发布。按照默认的设置即可。发布完之后就可以使用数据模型进行报表设计了。这里要注意,当数据模型修改之后,必须要重新发布,外部才可以使用。发布之后如图:


图 25. 发布 package
图 25. 发布 package

设计报表

我们通过 Cognos 网关登录到 Cognos BI Server,在右上角的菜单中选中 Report Studio,如图:


图 26. 菜单中选择 Report Studio
图 26. 菜单中选择 Report Studio

打开 Report Studio,选择数据包,数据包即为在 Framework Manager 发布出来的数据包。然后选择新建报表。系统会提示有多种报表的模板供选择,List,Crosstab,Chart 等,我们选择 List,之后在界面左侧就可以看到可用的数据对象了。我们可以把想显示的数据从左侧直接拖拽到右侧,这样在报表运行时就可以显示这些数据了,如图:


图 27. 报表设计
图 27. 报表设计

在界面上方的菜单中选择运行,Cognos 支持多种格式的报表,我们选择 HTML 格式,可以浏览报表的运行效果。这里要注意,由于 PathName 列的类型为 Text Blob,因此直接运行报表会有错误的提示,如图,


图 28. 运行错误
图 28. 运行错误

错误显示,表格中有 blob 类型的列,表格中必须有一个主键或者唯一索引,所以我们要为该查询模型定义一个唯一标识。在 FileNet JDBC Driver 的设计中,为每一个 table 都定义了 Id 这一列,可以理解为 table 的主键,所以我们在 Cognos 的 Determinants 中使用 Id 定义一个唯一标识,在 Framework Manager 中,定义一个 Determinants,如图:


图 29. Cognos Determinants
图 29. Cognos Determinants

然后重新发布 package。在 Report Studio 中重新定义这个报表,之后选择 HTML 格式运行该报表。


结论

本文介绍了如何将 IER 和 Cognos BI 进行整合,对 IER 的基本知识和 Cognos BI Server 的安装和配置做了基本的介绍,主要描述了开发 IER 报表前的主要配置过程,重点讲解了如何利用 Cognos Virtual View Manager 创建和配置基于 FileNet JDBC Driver 的数据源,利用该数据源实现基于 IER 的 Cognos 报表。


参考资料

学习

获得产品和技术

讨论

作者简介

高禅,IBM 中国软件开发中心的一名资深软件工程师,在 ECM 部门主要从事 Enterprise Content Management 相关产品应用的开发。

孙岩,IBM 中国软件开发中心的一名资深软件工程师,拥有多年的产品开发经验,主要从事 IBM Records Manager 和 IBM Enterprise Records 产品的开发。

关于报告滥用的帮助

报告滥用

谢谢! 此内容已经标识给管理员注意。


关于报告滥用的帮助

报告滥用

报告滥用提交失败。 请稍后重试。


developerWorks:登录


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 使用条款

 


当您初次登录到 developerWorks 时,将会为您创建一份概要信息。您在 developerWorks 概要信息中选择公开的信息将公开显示给其他人,但您可以随时修改这些信息的显示状态。您的姓名(除非选择隐藏)和昵称将和您在 developerWorks 发布的内容一同显示。

请选择您的昵称:

当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

(长度在 3 至 31 个字符之间)


单击提交则表示您同意developerWorks 的条款和条件。 使用条款.

 


为本文评分

评论

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Information Management
ArticleID=788403
ArticleTitle=整合 IBM Enterprise Records 和 IBM Cognos BI
publish-date=01192012

标签

Help
使用 搜索 文本框在 My developerWorks 中查找包含该标签的所有内容。

使用 滑动条 调节标签的数量。

热门标签 显示了特定专区最受欢迎的标签(例如 Java technology,Linux,WebSphere)。

我的标签 显示了特定专区您标记的标签(例如 Java technology,Linux,WebSphere)。

使用搜索文本框在 My developerWorks 中查找包含该标签的所有内容。热门标签 显示了特定专区最受欢迎的标签(例如 Java technology,Linux,WebSphere)。我的标签 显示了特定专区您标记的标签(例如 Java technology,Linux,WebSphere)。