【原创】 Cognos 8 SDK 在 Web 应用中集成 Cognos 报表

Cognos 8 SDK 简介Cognos 8 SDK 从功能上可以分成三部分:BI Bus API,URL Interface 和 Script. Player。BI Bus APICognos 8 通过提供的 BI Bus API 将相关服务整合到其他应用软件中去。Cognos 8 SDK 体系结构是建立在基于 WSDL 和 SOAP 的 web service 基础上的。Cognos.w...显示全部
Cognos 8 SDK 简介

Cognos 8 SDK 从功能上可以分成三部分:BI Bus API,URL Interface 和 Script. Player。

BI Bus API

Cognos 8 通过提供的 BI Bus API 将相关服务整合到其他应用软件中去。Cognos 8 SDK 体系结构是建立在基于 WSDL 和 SOAP 的 web service 基础上的。Cognos.wsdl 文件中具体描述了 Cognos 所提供的各种服务及其支持的方法。用户请求通过 SOAP 包传递于服务器和客户端之间。SDK 提供的接口使开发者不必亲自构建 SOAP 消息。调用接口时,SDK 负责将用户请求转化成 SOAP 消息,再通过 BI Bus API 传递给相应的服务。BI Bus API 将每个 XML 格式的 request 或 response 包装进 SOAP 信封,并通过 HTTP 协议传输。

URL Interface

URL Interface 使用户可以通过在 URL 中传递命令及参数来实现相应的 Cognos 操作。

Script. Player

Script. Player 是一种命令行工具,用于执行编制好的 action logs,实现 Framework Manager 设定的功能,如创建和修改模型,或者部署 package 等。

准备使用 Cognos 8 SDK

将 Portal server 与 Cognos 8 集成时,可以有多种方式。如使用 Web Page Portlet,将 Cognos 报表的链接直接嵌入到 Portal 的页面里,或者直接部署 Cognos 8 提供的 Portlet。使用这些 Portlet 可以在 Portal 中查看 Cognos 报表,metrics 等。这两种方式都提供了展示和查看 Cognos 中已有内容的功能,虽然可以使用 WebSphere Dashboard 快速开发 Cognos Portlet,但这仅能提供有限的灵活度,且需基于 Portal,无法满足部分客户定制化的需求。这时就需要使用 Cognos 8 SDK 来进行相应的开发工作,更灵活的实现与 Cognos 的整合。下面就来介绍下如何使用 Cognos 8 SDK 实现 Cognos 与 Web 应用的整合。

安装 Cognos 8 SDK 和 Cognos 8 Samples

Cognos 8 SDK 是 Cognos 8 的一个独立组件,需要单独安装。安装完成后,SDK 相关的内容默认被添加到 Cognos 8 的安装目录下,其中包含了 C#,VB 和 Java 的运行时内容及相关的文档和示例。为了配合本文写作,还需安装 Cognos 8 Samples 组件,请参阅向导完成安装配置并将示例数据倒入到 DB2 数据库中。我们将在本文介绍 SDK 中 Java 相关部分,并使用 Samples 中名为 great_outdoors_sales 的示例模型与数据。

修改和部署模型

准备工作完成后可以在目录cognos_homec8webconetntsamplesmodels下看到名为 greate_outdoors_sales 的示例模型目录。Cognos 8 SDK 提供了 Script. Player 用于创建和修改模型,我们可以将这部分功能集成到 Web 应用中,其核心工作是编写 XML 格式的 action log 文件,以实现对模型的操作,但本例将重点放在对报表的创建及展示,所以将忽略这部分内容,而直接使用 Framework Manager 对 great_outdoors_sales 的模型进行修改。在 Framework Manager 中打开 great_outdoors_sales.cpf。

1.png



可以看到示例项目 go_sales 中已经有建好的 Go_sales(analysis) 和 Go_sales(query) 两个 package,其中引入了大量的业务对象。为了简单,我们将重新定制 package, 仅引入少数所需要的业务对象。右键点击 Packages,选择 Create->Package,输入名字:CognosSample;点击 Next;如下图所示,选择本例中需要使用的业务对象:

在接下来的设定中,选择英文作为支持语言,DB2 作为功能集,完成并打开发布向导。将 package 发布到 content store 中,不使用模型版本。本例中不引入安全机制,接受默认设定,直到完成发布。收起
参与19

查看其它 18 个回答weij的回答

weijweij业务系统分析师neea
支持 楼主真是太好了
教育/培训 · 2010-08-31
浏览628

回答者

weij
业务系统分析师neea
擅长领域: 大数据商业智能

weij 最近回答过的问题

回答状态

  • 发布时间:2010-08-31
  • 关注会员:0 人
  • 回答浏览:628
  • X社区推广