MyException - 我的异常网
当前位置:我的异常网» 操作系统 » Cognos 11.0高速开发指南 Ⅰ

Cognos 11.0高速开发指南 Ⅰ

www.MyException.Cn  网友分享于:2013-09-19  浏览:0次
Cognos 11.0快速开发指南 Ⅰ

1. 概述

Cognos Analysics 11,是IBM在Cognos BI 10的版本基础上,吸取业界流行的敏捷BI理念,强化了自助式分析的一款强大BI开发平台工具。其官方文档内容丰富,但是较为冗长,新手应对项目过程中客户的进度要求稍显捉襟见肘。作为官方文档的一个补充,我们结合在川高系统大数据分析与应用平台项目过程中的实践,撰写了此文。便于有其他类似需求的项目团队及同事,作为快速参考。

本文档主要针对初次使用,且对cognos整体和开发流程不太了解的人员,能帮助他们快速上手制作报表。本文将以制作一张普通的固定报表的顺序来编写文档,制作报表的整体步骤分为两步:一是数据建模,二是报表制作;

其中数据建模可以有多种方式,如:framework Manager,Cube designer,BI 中的数据模块等,这里采用传统的framework Manager设计。

2.    启动cognos服务

在建模和开发报表之前都需要向启动cognos的服务,步骤如下:

(1)打开IBM Cognos 配置器

 

(2)点击工具栏中的启动按钮,然后等待,这里等待时间较长,大概要话费5-10分钟,等看到工具中的启动按钮变成了灰色,则表示已经启动成功。

(3)记录下Cognos的访问地址,在报表开发的时候会用到。即:在资源管理器中选择环境,如下图中,Gateway URI后面的地址就是Cognos的访问地址了:

3.    framework manager

这是一个cognos中传统的数据建模工具,可以处理复杂的关系模型,他的整体流程主要是:

(1)创建“数据源”的链接,这里使用MySQL数据库

(2)从数据源中选中要使用的数据表来建立“元数据”

(3)建立数据表之间的关系模型

(4)根据报表页面创建业务视图

(5)根据业务需要创建维度视图(非必须)

(6)创建“数据包”并发布

3.1.  更新jdbc的jar包

由于cognos 11中默认没有MySQL的jdbc驱动,所以这里讲解一下jdbc驱动的部署方法,下载mysql-connector-java-5.1.42-bin.jar文件,然后将文件复制到Cognos的安装目录下的drivers目录下,如下图:

3.2.  操作步骤

3.2.1.  打开framework Manager工具

首先在开始菜单中找到并打开framework Manager工具,如下图:

3.2.2.  新建项目

(1)在“菜单”中点击“新建”来创建一个项目,如下图:

 

(2)选择模型的语言,如下图:

 

(3)选择“数据源”向导,默认选择“数据源”选项,如下图:

   

3.2.3.  新建数据源

(1)新建“数据源”,如下图:

 

(2)为数据源命名后点击下一步

 

(3)选择JDBC连接类型,下一步

 

(4)选择MySQL数据库类型,配置jdbc url 内容,将

jdbc:mysql://<host>:<port>/<database-name>?noAccessToProcedureBodies=true

替换成具体的url,如jdbc:mysql://139.224.42.182:3306/scdp_ciimp?noAccessToProcedureBodies=true

 

(5)配置数据库登陆凭证

 

(6)测试连接连接成功后关闭测试页面,点击下一步

 

(7)点击完成即可。

关闭数据源向导后,选择刚刚建立好的数据源,即可进行下一步操作

 

3.2.4.  选择数据表

(1)选择需要使用的表、视图、存储过程,这里选用了如下几张表:

“bis_company,bis_road,rpm_r_accident_probability,mem_r_full_percentage”

 

(2)点击下一步,取消“使用组件和外键”的选项,否则会创建默认的关系,如果数据库表未创建外键则会报错,最后点击“导入”

 

(3)导入完成后在模型设计界面就能看到导入的相关表了。

 

3.2.5.  创建名称空间

“名称空间”是用来将模型归类的,有点类似于代码中的命名空间,通常我们创建三个名称空间:“元数据”、“业务视图”、“维度视图”,这里的名称可以自定义,这里只是推荐的一种归类方式,如下图:

 

将刚才导入的表全部拖入“元数据”中,如下图:

 

3.2.6.  模型结构概览

整个模型分为四个部分:模型、数据源、参数映射、数据包,整体结构如下,图中的红色框部分对应了这四个部分:

 

3.2.7.  自定义sql查询主题(可选)

这里科普一下,默认我们导入的“表、视图、存储过程”在模型中都以“查询主题”的方式呈现,所以你可以理解“查询主题”为一个数据集合。

“查询主题”分为三类:模型、数据源、存储过程,如下图:

 

(1)这里如果要自定义sql语句的查询主题,我们需要选择“数据源”类型的“查询主题”,默认从数据库中导入的就是“数据源”类型的。

(2)双击需要修改sql的数据源查询主题,结构如下:

 

(3)用户可以选择插入多个数据源,然后将多个数据源进行sql的拼接,如上图,我这里采用了两个数据源“mysql1、mysql内网”,如下图:

 

(4)编写好sql后,需要进行验证并测试,如下图:

 

(5)用户也可以做“计算”或者“过滤”的操作,其实和我们自己写sql语句是一样的原理

3.2.8.  创建关系

创建表与表之间的关系,操作步骤如下:

(1)双击“元数据”名称空间,在中间显示区域切换为“图”显示,如下图:

 

(2)点击右侧的工具栏中创建“链接”图标,然后在图中鼠标左键点击需要创建关系的表不放,拖放到需要创建关联的表中,打开关系配置框,如:rpm_r_accident_probability <--> bis_road

 

(3)创建好关系后,用户点击验证我错误后,可以切换到“关系SQL”选项中查看拼接的SQL语句,如下图:

 

(4)最后查看整体关系图,如下:

 

3.2.9.  创建业务视图

在创建好表关系之后,我们可以针对自己的业务,从“元数据”的表中选择有用的字段,放入业务视图的“查询主题”中,这里主要的工作就是将数据空表的字段映射为中文,并且创建一些计算字段。

(1)在“业务视图”右键,创建“查询主题”,在弹出框架,输入名称和类型选择“模型”,如下图:

 

(2)将左侧“元数据”中的查询项目拖入到右侧框中,如下图:

 

(3)你也可以自己添加一个“项目”,点击右下角的“添加”,打开“计算定义”,用户可以自定义字段的处理,如下图,我们进行了字段的计数处理:

 

(4)最后点击“验证”查看有没有配置错误,则完成,如下图:

 

(5)最后点击整个“查询主题”的验证,如果无问题,则完成。

3.2.10.     创建维度视图(可选)

“维度视图”是由“常规维度”和“度量维度”组成;默认是将“业务视图”中的信息组织在一个层级内(从详细程度的最高级别到最低级别)

l  常规维度

时间(包含:年、季度、月、周、天),销售人员(包含:国家/地区、城市、人员名称)

l  度量维度

度量维度主要是表示度量的数字,如价格,年龄之类

如下图:

 

“维度视图”不是必须创建的,只有当您希望在 IBM Cognos Analysis Studio 中使用关系数据源、在报表中启用向上钻取和向下钻取或访问工作室中的成员函数时,必须对关系数据源按维度建模。

稳定的关系模型是维度模型的基础。

3.2.10.1.1.    创建方式

用户可以在“业务视图”右键添加“度量维度、常规维度”对象

 

3.2.10.1.2.    常规维度

创建“常规维度”时,在“层级框”中前两层默认不能绑定数据源,只做当前维度的名称,从第三层开始定义维度字段,如下图中的“年”层级,用户可以在左侧模型中选择需要的“年份”字段,如果该字段不为字符串,则可以使用cast函数进行转换

 

并且在“角色”字段选择“_businessKey(业务键)、_memberCaption(标题)”

3.2.10.1.3.    度量维度

创建“度量维度”用户可以将某类“度量”归为一类,如:库存(包含:期初盘存、发运数量、增加、期末盘存等),如下图:

 

3.2.11.     创建数据源

在创建好模型后,我们就可以将整个模型打包为“数据包”,并发布到cognos中,进行报表的开发。步骤如下:

(1)在“数据源”选项上右键,创建“数据包”,如下图:

 

(2)在弹出的数据框中,输入名称,点击下一步,如下图:

 

(3)然后配置“名称空间”的可选项,一般将“元数据”设置为隐藏,点击下一步,如下图:

 

(4)点击下一步,选择函数包,默认是全部选择,直接点击完成,然后提示是否发布数据包,点击“是”,进行数据包发布,如下图:

 

(5)可以选择数据包发布的位置,和数据包的版本,处理好后,一直点击“下一步”,直到发布,在发布时会进行数据包的验证,如果有错误,就不能发布数据包。

3.2.11.1.   修改数据包位置报错解决方案

当用户不能修改cognos中的发布位置时,是因为当前用户没有权限访问Cognos中的文件夹位置,所以请在“项目-登陆身份”界面登陆管理员账号

 

文章评论

我的丈夫是个程序员
我的丈夫是个程序员
如何成为一名黑客
如何成为一名黑客
代码女神横空出世
代码女神横空出世
编程语言是女人
编程语言是女人
60个开发者不容错过的免费资源库
60个开发者不容错过的免费资源库
为啥Android手机总会越用越慢?
为啥Android手机总会越用越慢?
10个帮程序员减压放松的网站
10个帮程序员减压放松的网站
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
2013年中国软件开发者薪资调查报告
2013年中国软件开发者薪资调查报告
我跳槽是因为他们的显示器更大
我跳槽是因为他们的显示器更大
10个调试和排错的小建议
10个调试和排错的小建议
 程序员的样子
程序员的样子
聊聊HTTPS和SSL/TLS协议
聊聊HTTPS和SSL/TLS协议
鲜为人知的编程真相
鲜为人知的编程真相
Java 与 .NET 的平台发展之争
Java 与 .NET 的平台发展之争
“肮脏的”IT工作排行榜
“肮脏的”IT工作排行榜
程序员眼里IE浏览器是什么样的
程序员眼里IE浏览器是什么样的
程序员都该阅读的书
程序员都该阅读的书
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
“懒”出效率是程序员的美德
“懒”出效率是程序员的美德
漫画:程序员的工作
漫画:程序员的工作
十大编程算法助程序员走上高手之路
十大编程算法助程序员走上高手之路
程序员和编码员之间的区别
程序员和编码员之间的区别
程序员的鄙视链
程序员的鄙视链
2013年美国开发者薪资调查报告
2013年美国开发者薪资调查报告
程序员周末都喜欢做什么?
程序员周末都喜欢做什么?
看13位CEO、创始人和高管如何提高工作效率
看13位CEO、创始人和高管如何提高工作效率
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
为什么程序员都是夜猫子
为什么程序员都是夜猫子
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
Google伦敦新总部 犹如星级庄园
Google伦敦新总部 犹如星级庄园
老美怎么看待阿里赴美上市
老美怎么看待阿里赴美上市
什么才是优秀的用户界面设计
什么才是优秀的用户界面设计
程序员应该关注的一些事儿
程序员应该关注的一些事儿
总结2014中国互联网十大段子
总结2014中国互联网十大段子
一个程序员的时间管理
一个程序员的时间管理
那些性感的让人尖叫的程序员
那些性感的让人尖叫的程序员
程序猿的崛起——Growth Hacker
程序猿的崛起——Growth Hacker
科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
老程序员的下场
老程序员的下场
做程序猿的老婆应该注意的一些事情
做程序猿的老婆应该注意的一些事情
Java程序员必看电影
Java程序员必看电影
每天工作4小时的程序员
每天工作4小时的程序员
程序员必看的十大电影
程序员必看的十大电影
5款最佳正则表达式编辑调试器
5款最佳正则表达式编辑调试器
团队中“技术大拿”并非越多越好
团队中“技术大拿”并非越多越好
旅行,写作,编程
旅行,写作,编程
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有