壹佰网|ERP100 - 企业信息化知识门户

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 497|回复: 1

FreeQuery与Cognos 统一登录集成解决方案

[复制链接]
发表于 2012/3/16 14:42:23 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。如果您注册时有任何问题请联系客服QQ: 83569622  。

您需要 登录 才可以下载或查看,没有帐号?注册

x
FreeQuery产品简述

FreeQuery是广州菲奈特公司自主研发面向关系型数据库的商业智能查询工具,它提供了强大的语义层定义和管理能力、灵活的查询和分析能力、丰富的报表展现和完善的门户(Portal)管理能力,并且部署简便,为企业级数据分析提供了高性能、高效率的灵活查询报表系统解决方案。可以认为是灵活配置,人性化定制的Web服务系统,兼容多种数据库,也可以部署Weblogic、WebSphere、Tomcat等应用服务管理平台。



¨      允许企业建立详细和易于理解的业务视图对象,以帮助报表设计者和最终用户可以快速访问到他们所需的信息。

¨      采用Ajax技术开发,用户在Web浏览器中能够直接拖拽业务对象,不用写SQL语句,就能够生成灵活的查询和分析,构建查询即方便又灵活。

¨      集数据源管理、语义层定义和查询分析于一身,并通过安全可靠的权限管理机制来控制不同用户的数据权限及操作权限。

¨      使项目开发及维护的过程都更加轻松,易于和任何第三方系统进行整合。



Cognos8.3 BI Web产品简介

Cognos Connection 是Cognos 8 BI门户,以web 形式展现。您可以从此处开始访问您的BI 信息和Cognos 8 的功能。使用该门户可以发布、查找、管理、组织和查看组织的业务智能内容,例如报表、记分卡和代理。如果您具有所需的权限,则可以从该门户访问各个工作室并将该门户用于内容管理,包括计划和分发报表及创建作业

   产品组件有:

1、Query Studio即席查询,给用户制作列表、交叉表、图表开发环境。在Cognos 8 中创建简单查询和报表的报表工具。只是偶尔使用或没有经验的用户,可以使用Query Studio 创建回答简单业务问题的自助式报表。

2、Report Studio 报表开发,为用户定制专业报表,可以开发BI报表、IT报表。Cognos 8 BI已进行扩展以满足用户对快速轻松创建报表和格式化功能的需要,并且不需要专业创建技能。现在Report Studio既包含传统的专业创建模式(在此版本中进行了增强),也包含快速创建模式。

3、Analysis StudioCube分析,管理人员和分析人员可以使用Analysis Studio来更好地了解业务,并获得有关业务问题的答案。而用户则可以快速、轻松地执行分析来了解事件或行为背后的问题及原因,从而提高业务绩效。

4、Report Viewer 报表查看,用来展现HTML 和 PDF等报表的界面,可嵌入到客户应用或Web页面中。

5、Metric Studio可以创建自定义的记分卡环境来监控和分析整个组织的业务度量标准。Metric Studio 可以帮助您将组织的战略转换为相关的可度量目标,从而使每位员工的行为和职能都与战略计划保持一致。

6、Event Studio在事件发生时,使用Event Studio通知事件组织中的决策者,以便他们可以作出及时有效的决策。

7、Framwork Manager

为Cognos 8 BI提供管理元数据模型开发环境,用Framework Manager对来自一个或多个数据源的数据业务展现进行建模。

8、PowerPlay Transformer

Cognos PowerPlay是一种多维报表解决工具,Transformer则是其建模工具。通过Transformer建立多维模型并生成PowerCube,然后通过PowerPlay展示。



解决集成登录方案与部署

Cognos8.3与FreeQuery分别安装在不同物理设备上(可以是同一台机器,也可以远程服务器),利用FreeQuery应用服务端集成CognosView报表视图和Analysis Cube分析,同时利用FreeQuery用户组织机构控制用户统一登录,达到Portal用户多系统登录,统一管理用户与角色信息。



以本地机为例:

1、FreeQuery安装路径配置:

C:\FreeQuery\Tomcat 5.5.20\webapps\freequery.war

2、Cognos8安装路径配置:

D:\Program Files\cognos\c8\webapps\p2pd

通过公司开发部提供的接口程序,用于Cognos8取FreeQuery知识库信息,得到用户角色控制Cognos8单点登录。

接口包文件清单:
Java 接口文件:

CAM_AAA_CustomIF.jar

classes12.jar

JdbcSample.jar

proxool-0.9.0RC3.jar

freequery系统登录JS页面,找到最新的文件。

Login.js

 楼主| 发表于 2012/3/16 14:42:43 | 显示全部楼层
3、统一登录集成解决方案:

操作前对配置文件进行备份:

1)        拷贝JdbcSample.jar、proxool-0.9.0RC3.jar、CAM_AAA_CustomIF.jar、classes12.jar

到c8\webapps\p2pd\WEB-INF\lib目录下

2)        拷贝mssqlConnectPool.properties到c8\configuration目录下,此文件有连接freequery知识库的配置信息,如有不同,则做相应修改见步骤3。

3)        首先修改好mssqlConnectPool.properties其中代码:

jdbc-0.proxool.driver-url=jdbc:mysql://127.0.0.1:6688/freequery?useUnicode=true&characterEncoding=GBK

4)        在freequery.war\WEB-INF\lib下把 _JDBC_mysql.jar 包拷贝到 cognos\c8\webapps\p2pd\WEB-INF\lib下

5)        打开Cognos configuration
配置Security—>Authentication—>New resources—>namespace

Configure the Custom Java namespace

Type:               Custom Java provider

Namespace ID:       dbAuth

Java class name:       auth.mssql.JDBCSample (sqlserver的情况)





6)        进行TEST测试验证:

7)        再修改Security—>Authentication—>Cognos属性,把Allow anonymous access? Value修改为“False”,并保存Cognos configuration配置,重启服务。

8)        启动Cognos连接知识库,本机是配置在Oracle数据库上,字符集为UTF-8

9)        再启动Cognos服务:Command net start "Cognos 8"

10)     启动FreeQuery服务,同时把Mysql数据库也启动。

11)     因FreeQuery集成自身缺陷,对链接地址限制了255个字符长度,需要修改

目录下:\webapps\freequery\template\freequery\resourcemanager\URLLinkDialog.template文件

URLLinkDialog.template

  
……

<td align="right" noWrap>链接:</td>

<td valign="top">

<input class="_url" maxlength="255" size='56'/> </td>

改成

<td align="right" noWrap>链接:</td>

<td valign="top">

<input class="_url" size='56'/> </td>

也就是去掉maxlength="255" 即可。





12)     登录FreeQuery应用服务,并没登录Cognos Connectin服务。需要配置FreeQuery系统文件。

..\webapps\freequery\template\freequery\MainFrame.template

在MainFrame.template文件的最后添加一段,并修改对应参数:


<span style = "display:none;">

<iframe id ="cognosIframe" name="cognosIframe"></iframe>

<form id="cognosForm" target="cognosIframe" action="http://127.0.0.1/cognos8/cgi-bin/cognos.cgi" method="post">

<input type="hidden" name="CAMUsername">

<input type="hidden" name="CAMPassword">

<input type="hidden" name="CAMNamespace" value="dbAuth">

<input type="hidden" name="h_CAM_action" value="logon">

<input type="hidden" name="encoding" value="UTF-8">

<input type="hidden" name="m" value="portal/main.xts">

</form>

<form id="cognosLogout" target="cognosIframe" action="http://127.0.0.1/cognos8/cgi-bin/cognos.cgi" method ="get">

<input type="hidden" name="b_action" value="xts.run">

<input type="hidden" name="m" value="portal/logoff.xts">

<input type="hidden" name="h_CAM_action" value="logoff">

</form>

</span>





跨服务器移植需要修改登录地址:


把<form id="cognosForm" target="cognosIframe" action="http:// 127.0.0.1/cognos8/cgi-bin/cognos.cgi" method="post">

中的"http:// 127.0.0.1/改为cognos服务器地址"(登录cognos)

把<form id="cognosLogout" target="cognosIframe" action="http:// 127.0.0.1/cognos8/cgi-bin/cognos.cgi?b_action=xts.run&m=portal/logoff.xts&h_CAM_action=logoff" method ="get">

中的"http:// 127.0.0.1/改为cognos服务器地址"(注销cognos)

把<input type="hidden" name="CAMNamespace" value="dbAuth"> 中的value="dbAuth" 改为cognos服务器中的namespace



13)     替换Login.js文件

\webapps\freequery\js\freequery\main\Login.js

14)     FreeQuery系统对Window IE版本有约束,高版本安全性较高,可以拦截与阻止不信任的地址,以及ActionX插件。

打开IE浏览器,选择“工具”—>Internet 选项—>安全标签页,点击“自定义级别……”,启用部分ActionX控件,启用“通过域访问数据源”,最好是降低IE安全性,直接默认设置。如果还是不能正常登录Cognos服务,每次都提示输入“用户名和密码”。继续配置IE选项下“隐私”,选中“打开弹出窗口阻止程序”,在点“设置”按钮。

添加:可信性的站点,如:http://10.1.19.162/freequery/index.jsp

在“筛选级别”:选“低:允许来自安全站点的弹出窗口”

方法二:如果还是不能登录或者受到阻止拦截:

打开IE中的Internet选项,选择“隐私”选项卡,点击“站点”按钮,在“网站地址”一栏中写上Cognos服务器地址:

15)     针对MainFrame.template注意一点:

情况一: Cognos与Freequery在同一台服务器
MainFrame.template中的cognos地址与freequery中添加报表的地址、同时与要访问的freequery地址要统一,

即为IP,全为IP,为机器名全为机器名

   例如:

      如果MainFrame.template中的cognos地址为IP:http://172.20.16.17/cognos8/cgi-bin/cognos.cgi

      则freequery中添加报表的地址为:http://172.20.16.17/cognos8/cgi-bin/cognos.cgi……

      当你打开freequery时的地址则为: http://172.20.16.17/freequery/



      如果MainFrame.template中的cognos地址为机器名:http://wuhuafu-vm/cognos8/cgi-bin/cognos.cgi

      则freequery中添加报表的地址为:http://wuhuafu-vm/cognos8/cgi-bin/cognos.cgi……

      当你打开freequery时的地址则为: http://wuhuafu-vm:8080/freequery



情况二:cognos与freequery不在同一台服务器
MainFrame.template中的cognos地址与freequery中添加报表的地址,即为IP,全为IP,为机器名全为机器名(同情况一)

另须在IE设置:

打开IE中的Internet选项,选择“隐私”选项卡,点击“站点”按钮,在“网站地址”一栏中写上cognos服务器地址

例如,cognos的服务器地址为:172.20.16.17,则在“网站地址”一栏中写上:http://172.20.16.17/cognos8/cgi-bin/cognos.cgi



注意,此处只允许IP地址,所以最好所有要设置地址的地方统一为IP地址,不要为机器名

另附:登录freequery后,等主页加载完全后再点击菜单栏进入查看报表.

16)    清除IE中的cookies和临时文件,重启IE进行登录。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|手机版|壹佰网 ERP100 ( 京ICP备19053597号-2 )

Copyright © 2005-2012 北京海之大网络技术有限责任公司 服务器托管由互联互通
手机:13911575376
网站技术点击发送消息给对方83569622   广告&合作 点击发送消息给对方27675401   点击发送消息给对方634043306   咨询及人才点击发送消息给对方138011526

GMT+8, 2025/11/30 12:21 , Processed in 0.011405 second(s), 14 queries , File On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表