最近出现了很多关于帆软报表和泛微OA的集成问题,均出现在“单点登录”上。直接也有相关的文章介绍一些FineReport和泛微集成的背景、价值等,以及FineReport和OA的深度集成的方案,但是并没有提到单点登录的集成方案,今天就简单介绍下FineReport和OA单点登录集成方式。
同步用户信息
单点登录的基础,就是用户信息的同步,FineReport的决策系统中有一个很强大的功能,可以自动帮助用户实现用户信息同步。具体菜单:决策系统-管理系统-用户管理。点击用户管理菜单后,右侧页面右上角有一个“设置”按钮,如下图:
点击“设置”,则会出现如下图的界面。按照下图中的配置进行对应的配置。
认证方式:选择平台内置认证。单点登录的集成是通过平台内置认证进行集成的。
用户同步数据集:选择“已开启”
服务器数据集:服务器数据集是需要去帆软报表的开发工具上进行配置。如下图:
进入设计器,点击菜单服务器-服务器数据集,新增一个数据集,选择OA的数据源,写入SQL“select * from hrmresource”,保存即可。
保存后,需要去本地的开发环境上找到对应的xml,复制到决策系统服务器端,才可使用。本地开发环境的xml路径见上图“保存路径”后面的对应文件路径。
通过EditPlus编辑器打开datasource.xml文件后,找到“OA用户”这块xml代码。将这块代码复制到服务器上的datasource.xml上,路径和/WebReport/WEB-INF/resourcr/datasource.xml,粘贴格式参见本地的开发环境。如下图:
注:不要用记事本打开xml,保存可能会损坏xml。更新服务器文件时,做好备份。
继续配置用户同步
用户名:XXX
姓名:XXX
密码:XXX,注意,OA的密码已经进行了32位大写的MD5加密。
加密方式:不设置密码加密
其他选填。
点击保存,OK,决策系统已经开始在后台执行了用户同步了。只需要在决策系统中的用户管理上查看同步的用户信息结果即可。
泛微OA的登录方式和如何编写单点登录
了解单点登录之前,先了解下OA的登录方式。泛微OA的登录方式有2种。第一种,是通过页面登录进OA;第二种是,是通过E-Message上的快捷方式进入到OA。
这样的话,如果实现FineReport和泛微OA集成的单点登录,以上的两种登录方式均瑶实现这个效果。很多用户和泛微的实施团队会在OA的login.jsp上编写单点登录代码。在login.jsp上编写单点登录代码智能解决第一种登录方式“通过页面登录进OA”。而通过E-Message上的快捷方式进入到OA是不能实现帆软决策系统的单点登录的。如果要实现两种登录方式的单点登录,可以在泛微OA登录后页面上编写单点登录代码。泛微OA登录后页面的jsp为“/ecology/wui/theme/ecology7/page/main.jsp”。
第一步,引入js代码:
<script type="text/javascript" src="http://***.***.***.***:**/WebReport/ReportServer?op=emb&resource=finereport.js"></script>
第二步,获取当前用户的登录名和密码的java代码:
String nodeSql ="select loginid,password from HrmResource where id = " + user.getUID(); RecordSet.executeSql(nodeSql); if (RecordSet.next()){ userpasswordstr = RecordSet.getString("password"); loginidstr = RecordSet.getString("loginid"); }
从上面的代码可以很明显的看到,这个和sql和rs的取值字段跟之前配置用户同步信息对应的表和字段是一样的。
第三步,编写js代码:
var username =FR.cjkEncode("<%=loginidstr%>"); var password ="<%=userpasswordstr%>"; password = password.toUpperCase();//把密码小写字母转换成大写字母 var scr = document.createElement("iframe"); scr.src = "http://***.***.***.***:**/WebReport/ReportServer?op=touchfs&username="+username+"&__redirect__=false&password="+password;
这里是采用iframe的跨域单点登录方式,所以在JS中需要创建一个iframe,然后在iframe上设置SRC。
第四步,保存main.jsp,备份服务器的main.jsp,更新main.jsp。
第五步,重新登录OA,单点登录成功。校验方式,在OA的浏览器上,新建一个页签,输入“http://***.***.***.***:**/WebReport/ReportServer?op=fs”,如果出现如下图,且登录名为自己的用户,则表示单点登录成功。但是。。。还没完。
在泛微OA上配置决策系统入口
完成了上述的配置,但是OA用户通过什么方式进入决策平台呢?提供2个方式供参考。
第一,用系统管理员配置自定义左侧菜单。
第二,设置用户元素。
以上3点完成后,FineReport和OA的集成工作就大功告成了。
相关推荐
FineReport 与泛微 OA ...FineReport 与泛微 OA 的深度集成解决方案能够为企业提供更加全面的信息化解决方案,提高办公自动化的效率和灵活性,提高报表设计的灵活性,降低对实施人员的技能要求,提高用户的满意度等。
FineReport与泛微OA集成方案,有详细的讲解与实施介绍。
FineReport与泛微OA集成.ppt
本攻略将详细介绍如何使用Finereport报表开发工具与泛微协同OA系统进行集成,实现高效的数据管理和报表展示。 #### 四、技术环境搭建 本方案的技术环境包括: - **操作系统**:Redhat5.4 Linux 64位 - **Web应用...
这里以泛微OA系统和FineReport报表开发工具作为具体实施的技术平台,来详细阐述整个方案的流程、亮点以及实现方法。 首先,方案的核心目的是实现企业内部多个信息系统的数据整合,尤其是办公协同、合同管理、ERP、...
本教程旨在指导用户如何将 Spring Boot 2.6.13 集成 FineReport 11.0,实现报表生成和数据可视化。该教程涵盖了环境配置、数据库设置、FineReport 安装、报表设计和预览等多个方面。 知识点 1:环境配置 Spring ...
总结来说,通过在FineReport中运用ajax技术和JSONP跨域请求方式,可以有效地解决跨域问题,实现系统的单点登录功能。这不仅为用户提供了便利,也加强了系统的安全性和可维护性。在具体实施时,开发者应充分考虑到...
操作系统Redhat 5.4 Linux 64位 ...OA系统 泛微协同OA Finereport的数据来源于oracle现有数据库,通过OA新增菜单,链接jsp网页,利用OA角色与权限控制单元在jsp页面(嵌入报表页面)做二次开发,并授权用户访问报表。
钉钉集成到FineReport插件中,是为满足企业用户在移动办公场景下,通过FineReport报表平台与钉钉企业号平台的深度整合,实现报表分享、消息推送、单点登录等多样化的功能需求。本文将详细介绍如何将钉钉与FineReport...
FineReport的特点在于其易用性和高效的报表设计方案,它采用了数据双向扩展、真正的无编码形式设计报表,用户不需要掌握复杂的编程技能即可设计出符合业务逻辑的报表,从而满足报表使用者的需求。此外,FineReport还...
【标签】: "fineReport" 指出这个操作与FineReport报表工具紧密相关,因此在执行集成时,我们需要了解FineReport的特性和使用方法,包括如何创建报表、设置数据源、设计模板以及实现数据交互等。 详细步骤如下: 1...
以上就是Spring Boot集成Finereport的主要步骤和相关知识点。在实际开发中,可能还需要根据项目需求进行定制化开发和调整。通过这样的集成,我们可以充分利用Spring Boot的便捷性和Finereport的强大报表能力,为Web...
而FineReport是一款强大的报表工具,帮助企业实现数据可视化和数据分析。本教程将深入探讨如何将Finereport与Spring Boot整合,以充分利用两者的优势,为企业提供高效的数据报表服务。 首先,整合Finereport和...
FineReport 群集配置方案是基于 Linux 平台使用 Apache+Tomcat+JK 实现负载均衡和群集的完整过程。这篇文章将详细介绍从编译、部署到配置的整个过程,并解决了在实现过程中遇到的问题。 Apache 服务器是在 Linux ...
### 知识点一:JBPM与FineReport简介 ...综上所述,将FineReport集成到JBPM项目中不仅可以提高业务流程的自动化程度,还能增强数据分析和决策支持的能力,对于提升企业的业务处理效率具有重要意义。
finereport.jar结合 finereport.jar结合 finereport.jar结合