FineReport与致远OA单点集成方案

楼主
社区管理员

   今天为大家分享一下FineReport与致远OA单点集成方案,以下是大致相关,文末会有详细介绍(含FineReport与致远OA详细集成方案、五份文件以及两份说明),有需要可自行下载

   在SeeyonReport的同目录下,放一个报表工程WebReport,如下图1所示:

  图1


   然后之后访问的报表url,都是访问这个WebReport,譬如访问fs的具体URL是http://localhost/WebReport/ReportServer?op=fs,(ip根据致远实际情况修改),然后将该url挂在致远OA的某个链接上。譬如将其挂在致远OA的关联系统里面,系统管理员给test用户的关联系统挂了一个fs的链接,如图2所示:

   图2


    然后test用户登录OA后,可以看到关联系统里面有一个帆软报表的链接,如下图3所示:
   图3
  
  与刚部署的WebReport的fs做单点登录
  由于致远的限制,在WebReport里面不能获取到当前登录OA的用户名和密码,而又想要单点登录fs,这时候可以修改致远OA的登录页面,获取到登录OA的用户名和密码,然后加上我们的Ajax单点登录。注意,由于涉及到中文用户名,需要用到cjkEncode方法,而如果直接引用finereport.js,会和致远的js冲突,因此需要重写cjkEncode方法。其OA登录页面为Seeyon\A8\ApacheJetspeed\webapps\seeyon\main\login\default\login.jsp,
在它的loginButtonOnClickHandler方法内,加上我们的Ajax单点登录,同时,新增一个cjkEncode的function。具体代码见改文件目录的login.jsp。
然后,将OA里的用户同步到WebReport里。首先,连上OA的数据库(以MySQL为例),然后建立一个服务器数据集,通过
SELECT org.name as department,p.name as role,
m.name as username,a.login_name,a.credential_value
FROM dbo.[ORG_PRINCIPAL] a left join dbo.ORG_MEMBER m on a.member_id=m.id
left join dbo.[ORG_POST] p on p.id=m.org_post_id
left join dbo.[ORG_UNIT] org on org.id=m.org_department_id

如下图4,图5所示:

  图4

图5

可以看到,其密码都是加密过的,因此需要我们fs配置自定义加密类。将改目录下的TestPasswordValidator.class放到
WebReport\WEB-INF\classes\com\fr\privilege\providers\dao目录下,没有则新建。

另外还需要将seeyon_ctp_core.jar放到WebReport\WEB-INF\lib目录下;
这两个方法好,重启报表工程。
然后登陆fs配置,如图6所示:(自定义加密那里的路径填写成com.fr.privilege.providers.dao.TestPasswordValidator)


图6


    配置好后,再登录OA来验证单点登录是否成功,如下图7,图8,图9所示

图7


   图8


          图9(“测试”即为OA登录的test用户)


[micxp_gzhmm]
致远与独立部署的FR做单点.rar (1.76 MB, 下载次数: 411, 售价: 66 个F豆)
[/micxp_gzhmm]
(附件含FineReport与致远OA详细集成方案、五份文件以及两份说明)

分享扩散:

沙发
发表于 2017-6-2 15:58:28
哪里下载啊
板凳
发表于 2017-6-2 16:00:46
这么贵啊
地板
发表于 2017-6-2 16:01:32
请问 Webreport 项目从哪里来
5楼
发表于 2017-6-2 18:39:08
这个是7.0的有没有8.0的和致远的单点登录
6楼
发表于 2017-9-5 11:45:37
学习,顶顶顶顶顶
7楼
发表于 2017-9-7 09:16:51
贼贵贼贵的~~~
8楼
发表于 2017-9-8 09:43:22
相当的使用,谢谢分享
9楼
发表于 2017-9-14 07:42:40
不错的方案
10楼
发表于 2017-9-19 11:09:13
同时,新增一个cjkEnocde的function。。。
应该是cjkEncode,这里单词拼错了
参与人数 +1 F豆 +6 理由
兔子酱 + 6 多谢指正,已修改

查看全部评分

11楼
发表于 2017-11-10 19:11:16

好资料,正需要学习,厉害了我的哥
12楼
发表于 2017-11-16 09:43:41
请问FR同步致远OA的人员和部门的时候怎么把OA的组织架构关系也同步过来?
13楼
发表于 2017-12-5 09:11:02
挺好的啊,不知道其他网友按照你的方法有无成功过。你致远OA版本是多少,师傅
14楼
发表于 2017-12-5 15:33:58
厉害啊。正在做这事儿
15楼
发表于 2017-12-5 17:07:48
已成功,,,6.1的致远oa,8.0的report
16楼
发表于 2018-1-1 19:23:12
为什么我将login.jsp文件改了之后,登录不起做用了
17楼
发表于 2018-1-18 16:10:01
先 MARK一下,等需要了再来消费。
18楼
发表于 2018-1-27 13:06:18
我好像MARK过了。
19楼
发表于 2018-2-9 10:02:54
验证多少!加了微信不回复呀
20楼
发表于 2018-2-9 14:13:38
验证多少!加了微信不回复呀
21楼
发表于 2018-2-10 22:26:43
学习一下,这个跟帮助文档的差不多啊
22楼
发表于 2018-3-24 00:29:20
怎么下载呀????
23楼
发表于 2018-4-11 20:25:17
差豆是件很蛋疼的事情
24楼
发表于 2018-4-16 21:12:00
感觉好复杂,有更简单的说明吗?
25楼
发表于 2018-4-23 20:08:42
目前配置了在OA页面跳转帆软页面始终要求输入账号密码(手工输入OA的账号密码可以登录),login.jsp文件中我把jQuery.ajax({   
url:"http://localhost/WebReport/ReportServer?op=fs_load&cmd=sso",//单点登录的报表服务器   里面localhost改成了自己服务器的地址,不知道这样对不对,或者还有其他什么地方要修改,望大神指点
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

53回帖数 7关注人数 52577浏览人数
最后回复于:2024-8-13 13:07

返回顶部 返回列表