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中的文件夹位置,所以请在“项目-登陆身份”界面登陆管理员账号

Cognos 11.0快速开发指南 Ⅰ的更多相关文章
- Cognos 11.0快速开发指南 Ⅱ
1. 创建报表 在创建好数据源之后,我们就可以创建报表了,报表的开发是浏览器中完成的,这里我选用了chrome浏览器,在地址栏输入:http://localhost:80/ibmcognos ( ...
- Rookey.Frame v1.0快速开发平台-用户登录
上一次介绍的了Rookey.Frame v1.0快速开发平台的整体功能,接下来会对各个功能点进行解析说明,今天给大家介绍下系统登录功能. 用户登录 系统中基本上所有功能页面都是从后台代码拼接后返回的, ...
- TensorFlow 2.0 快速入门指南 | iBooker·ApacheCN
原文:TensorFlow 2.0 Quick Start Guide 协议:CC BY-NC-SA 4.0 自豪地采用谷歌翻译 不要担心自己的形象,只关心如何实现目标.--<原则>,生活 ...
- 【Android】11.0 UI开发(二)——列表控件ListView的简单实现1
************************ 转载请注明出处:https://www.cnblogs.com/xiaofu007/p/10342462.html ***************** ...
- Rookey.Frame v1.0快速开发平台-整体介绍
Rookey.Frame v1.0是一套基于.NET MVC的极速开发框架,支持简单逻辑模块零代码编程.支持二次开发,具有高扩展性.高复用性.高伸缩性. 框架特点 (1)简单逻辑模块实现零代码编程,通 ...
- TensorFlow 2.0高效开发指南
Effective TensorFlow 2.0 为使TensorFLow用户更高效,TensorFlow 2.0中进行了多出更改.TensorFlow 2.0删除了篇冗余API,使API更加一致(统 ...
- Odoo 8.0 实施开发指南 第一版 试读
试读地址: http://share.weiyun.com/4f83964db87e022c7c210abe6b5e782f 如有错误,欢迎指正.
- [CI]CodeIgniter快速开发指南
---------------------------------------------------------------------------------------------------- ...
- Jdon框架开发指南
Jdon框架快速开发指南 开发主要步骤如下: JdonFramework6.0以上两步开发见这里. 快速配置指南 新增/查询/修改/删除(CRUD); 批量查询和分页显示 本文Step By Step ...
随机推荐
- 单元测试报connection is allready closed导致dailybuild中断的解决方案——类加载机制的应用
现象; 前段时间在dailybuild过程中,经常遇到connection is allready closed错误,特别是在dailybuild高峰期. 分析定位: 这个错误是的起因比较多,这里的情 ...
- (转)log4j(五)——如何控制不同目的地的日志输出?
一:测试环境与log4j(一)——为什么要使用log4j?一样,这里不再重述 1 老规矩,先来个栗子,然后再聊聊感受 package test.log4j.test5; /** * @author l ...
- 【html】 a 标签
摘要 嗷呜,发现好多前端细节,基础不扎实啊,喵了个咪 target 属性 在制定框架中打开 <a href="a.html" target="view_frame& ...
- Java工程师书单(初级、中级、高级)
简介 怎样学习才能从一名Java初级程序员成长为一名合格的架构师,或者说一名合格的架构师应该有怎样的技术知识体系,这是不仅一个刚刚踏入职场的初级程序员也是工作一两年之后开始迷茫的程序员经常会问到的问题 ...
- Codeforces 828B Black Square(简单题)
Codeforces 828B Black Square(简单题) Description Polycarp has a checkered sheet of paper of size n × m. ...
- zabbix前台jsrpc注入
zabbix是一个开源的企业级性能监控解决方案. 官方网站:http://www.zabbix.com zabbix的jsrpc的profileIdx2参数存在insert方式的SQL注入漏洞,攻击者 ...
- 初学Python之 安装包的抉择~~
上面的都是windows系统平台的安装包,哇,有没有后宫三千,不知道"临幸"哪一个的感觉~.~ 看了下面的你就明白啦. 毫无疑问,x86适合32位操作系统:x86-64适合64位操 ...
- little bird
LITTLE BIRD Bzoj 3831 相对而言是一道比较简单的DP,不过它需要用单调队列优化.首先是朴素O(n2), if(d[j]>f[i]) f[i]=min(f[i],f[j]); ...
- Git时光机穿梭之版本回退
现在,你已经学会了修改文件,然后把修改提交到Git版本库,现在,再练习一次,修改readme.txt文件如下: Git is a distributed version control system. ...
- CentOS编译PHP过程中常见错误信息的解决方法
原文链接:http://www.linuxidc.com/Linux/2014-05/102327.htm ********************************************** ...