万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

时间:2022-10-07 16:59:56

用友U8+作为中国企业最佳经营管理平台的一个基础应用服务,在企业经营管理中得到非常广泛的使用。众所周知,用友U8+提供的基础能力可以满足企业日常管理的基本问题,但由于每个企业内部管理的方式和流程各不相同,标准的软件功能很难很好地适应所有企业的管理需要。加之,随着互联网以及移动应用的发展,通过移动端设备进行应用访问的需求也越来越明显,而用友U8+主要是以桌面端应用为主,缺失移动端的解决方案,在便捷使用方面造成很多不便。

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

面对这样的困扰我们该如何解决呢?今天就带着大家一起看看低代码是如何释放用友U8+的潜力,帮助企业挖掘更多价值。
为了让大家更直观的理解,我们以活字格低代码开发平台为例,向大家展示这一过程。
先给大家看看效果:(由于使用的本地的虚机,配置比较差,可能会有些卡顿,但不会影响我们后面介绍的集成方法。)

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

想要实现上面的效果会不会很困难?没错,如果使用传统的开发方式,这个难度确实不小。通常情况下,需要团队配备多名专业开发人员,技术门槛高、工程量大,交付周期也会非常长。但使用了低代码提供的开发套件之后,整个集成过程就会变得非常简单。

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

下面我们看看如何将程序集成到用友U8+的程序中来,集成的内容主要包括:数据集成、C/S页面嵌入、用户集成。

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

可以先来看看集成的效果:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

具体的集成步骤主要分为以下几步:

1. 环境准备

用友U8是一套C/S架构的标准ERP系统。如果需要对U8进行功能扩展,可在U8系统中集成葡萄城的Web应用开发工具活字格。
本章介绍在U8系统中集成活字格和Wyn之前,需要准备U8服务器与客户端环境的操作方法。
注意:基础环境基于U8+ v11.0,v12.5,v13.0,v16.0,v16.1版本。不同版本的集成套件不完全相同,需要向官方人员申请U8集成套件,申请时请注明自己的U8版本。
(1)集成套件下载
操作前请从用友云市场先下载集成压缩包, 整个集成文件包解压之后显示如下:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

其中,【U8】文件夹中包含用于配置U8服务器与客户端集成环境的文件。【活字格】是用于在U8系统中集成活字格应用的配置文件。

(2)U8服务器端环境准备
注意:为满足集成需要,请使用SQL Server数据库管理工具,打开安装包中\U8\Server文件夹中的UFSystem-GC.sql文件:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

并按照下图方式执行其中的脚本,该脚本执行完成之后将会在U8的系统管理数据库UFSystem创建集成所需的数据库对象。

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

(3) U8客户端环境准备
请合并 \U8\Client\ 文件夹下的注册表项文件(*.reg)文件。如果操作系统是32位的Windows,请右键单击U8Browser-x86.reg,然后点击【合并】;如果是64位的Windows,请右键单击U8Browser-x64.reg,然后点击【合并】。

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

注意:如果需要以嵌入式方式集成,即在U8窗体中直接显示活字格的页面,请确保客户端操作系统中已安装有IE11浏览器。否则,如果是谷歌等其他浏览器,那么只能以弹出窗口(Popup)的方式显示活字格的页面。

2. 系统对接集成

活字格是一个Web应用程序生成平台,使用该平台开发的Web应用程序,可集成到U8系统中。用户只需点击【U8+企业应用平台】中的集成菜单,即可启动并使用这些活字格开发的应用程序。
以下分别介绍在U8系统中集成活字格应用程序的配置操作方法。

(1)用户集成(安全提供程序)
活字格的第三方用户安全提供程序用来集成用户信息与第三方系统的登录。活字格提供有一个ISecurityProvider接口,通过实现该接口,用户可以与其他系统进行集成(包含用户,角色以及是组织机构)。

操作步骤:

a) 设计器
点击【安全】-【认证模式】-【第三方用户集成】按钮,修改应用认证模式。

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

点击【安全】-【用户管理】按钮打开用户管理页面。用户名密码为administrator的用户名和密码。

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

点击【第三方】-【上传】按钮,选择对应的第三方用户集成zip包,该zip包保存在集成文件包中的 \活字格文件夹下。

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

上传成功后页面如下:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

在【其他设置】中添加U8用户所在数据库的服务器名称、数据库名称、数据库管理员的用户名和密码,以及设置自动同步用户信息的时间间隔。如果数据库和活字格服务管理器在同一台服务器上则ServerName使用(local)即可。

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

同步完成之后的效果如下:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

b) 服务管理器
用户管理上传第三方用户集成zip包,其操作方法与设计器用户管理操作方式相同。

(2)菜单集成
集成后的活字格应用程序是通过U8中的自定义菜单来启动的,而自定义菜单是通过执行数据库SQL脚本来配置,配置的方法如下:
a) 预置子系统
表名:UFSYSTEM库 ua_subsys_base表

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

注意:预置前请先确认模块标识(cSub_Id)是否存在
其中,预置菜单数据的SQL语句脚本示例如下:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

脚本执行前:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

执行后的效果如下所示:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

b) 预置菜单
表名:UFSYSTEM库 UA_MENU表
U8业务导航中看到的菜单需要预置在UA_MENU表中,该表结构如下图:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

注意:请提前在该表查出上级菜单ID,并为新增的菜单预置一个唯一ID(不可重复)。
预置菜单数据的SQL语句脚本示例:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

执行前:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

执行后的效果如下图所示:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

c) 预置接口
表名:UFSYSTEM库 UA_IDT
ID保持与菜单ID相同,其他项均使用以下sql中的值。
预置接口数据的SQL语句脚本示例:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

执行前:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

执行后的效果如下图所示:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

d) 预置菜单属性
表名:UFSYSTEM库 GC_MENU表
配置U8菜单对应的URL地址,单点登录密码以及默认打开方式。cMenu_Id保持与U8菜单ID一致。DefaultTargetWindow使用默认值即可。

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

数据库脚本如下图所示:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

执行前:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

执行后:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

e) 单点登录密码获取:
点击【设置】-【与另外的网站集成】按钮,勾选允许单点登录,将单点登录密码配置到GC_MENU表的SSO_Password字段。

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

f) 预置菜单自定义属性
表名:UFSYSTEM库 GC_MENU_Option表
自定义配置某一用户针对某一菜单的打开方式。cMenu_Id保持与U8菜单ID相同。cUser_Id保持与U8用户的userid一致。可针对自定义用户进行自定义的菜单打开方式。Popup为弹出页面,CurrentWindow为Tab形式打开。

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

数据库脚本如下:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

执行前:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

执行后:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

执行后的效果如下图所示:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

当以上操作都正确完成后,菜单则会生成到设置的节点下。效果如下:

万物皆可集成系列:低代码释放用友深度价值(1)—系统对接集成

(3)门户集成

将集成文件包中\活字格\文件夹下的Forguncy.U8UserControl.dll文件拷贝至对应客户端的U8SOFT的Portal目录下(C:\U8SOFT\Portal)即可实现门户集成。



作者:葡萄城技术开发团队