K3单点登录二次开发指导文档Word文件下载.docx
《K3单点登录二次开发指导文档Word文件下载.docx》由会员分享,可在线阅读,更多相关《K3单点登录二次开发指导文档Word文件下载.docx(15页珍藏版)》请在冰豆网上搜索。
![K3单点登录二次开发指导文档Word文件下载.docx](https://file1.bdocx.com/fileroot1/2022-11/24/6f006e0d-8529-4b80-b418-686c7164c9b2/6f006e0d-8529-4b80-b418-686c7164c9b21.gif)
2.1.VisualBasic单点登录二次开发实现步骤3
2.1.1.Demo简介3
2.1.2.实现步骤和流程4
2.1.3.注意事项7
2.2.VisualC#单点登录二次开发实现步骤8
2.2.1.Demo简介8
2.2.2.实现步骤和流程9
2.2.3.注意事项12
2.3.Asp.Net单点登录二次开发实现步骤13
2.3.1.Demo简介13
2.3.2.实现步骤和流程13
2.3.3.注意事项17
1.概要信息
1.1.目的
本文档主要描述如何在第三方系统中,使用K/3门户系统的单点登录功能,以方便与K/3各应用系统如K/3门户、K/3、K/3HR进行集成应用。
阅读本文需要具备一定的软件开发知识,最好具备相应语言如VisualBasic、VisualC#、Asp.Net开发经验,同时也需要对单点登录的业务逻辑有一定的了解,关于单点登录业务逻辑的信息文档,请参见K/3门户的帮助系统。
1.2.范围
本文档描述单点登录的二次开发功能实现,主要分3种语言分包进行描述,分别为VB、C#、Asp.Net,当然,K/3门户系统的单点登录也支持其他开发语言,具体请参考已有语言的逻辑进行二次开发工作。
2.二次开发实现步骤
2.1.VisualBasic单点登录二次开发实现步骤
2.1.1.Demo简介
正常安装K/3后,请在服务器打开
(K3安装目录一般为C:
\ProgramFiles\Kingdee\K3ERP)
/K3Portal/PortalHelp/Demo/VB/目录,其中VBPassportDemo.vbp为采用VisualBasic语言开发的单点登录Demo,运行时界面如下图:
录入正确的用户和密码后,选择单点登录,进入正常的第三方业务系统,界面效果如下图:
2.1.2.实现步骤和流程
下面以Demo为例,详细讲解二次开发流程
1、假定VBPassportDemo为第三方的业务系统,并具备自己的用户和登录系统,假定原登录界面为FrmLogin,原主控为frmMain
2、在FrmLogin增加3个控件,首先增加一个GroupBox(登录方式),然后增加2个OptionButton,分别命名为opt1(命名用户登录),opt2(单点登录),其中命名用户登录为原有的登录方式,改进后增加了如下图的内容
3、增加一个Module,命名为PassportLogin,假定原系统存在登录逻辑校验函数为LoginVB,则增加函数LoginPassword,该函数首先调用单点登录组件进行单点登录验证,当单点登录验证通过之后,再调用原有登录逻辑LoginVB进行登录
具体如下:
4、在登录界面FrmLogin中,调用单点登录函数,如下图
5、注销功能实现,当退出主控台时,需要注销单点登录信息,注销实现如下图:
6、在FrmMain界面调用注销功能,代码如下图:
2.1.3.注意事项
1、关于门户Url地址和门户用户关联:
因为单点登录是使用K/3门户的用户进行登录的,而第三方系统有自己的用户系统,因此,需要进行两者的用户关联,本Demo默认使用K/3的用户关联系统,第三方系统需要替换成自己的用户关联处理函数
下面介绍一下K/3的用户关联逻辑
2、K/3系统的Url地址
在安装有K/3的机器上,通过开始菜单-程序-金蝶K3-金蝶K3服务器配置工具-帐套管理,进入后点击系统(&
S)菜单-系统参数设置,见如下界面
该参数在VB中通过下列代码可以获取
3、K/3单点登录用户关联
在安装有K/3的机器上,通过开始菜单-程序-金蝶K3-金蝶K3服务器配置工具-帐套管理,选择具体的帐套,进入菜单帐套(&
A)-用户管理,在用户管理界面中,选择一个用户,双击,弹出如下界面,其中包括“对应门户用户”的信息
2.2.VisualC#单点登录二次开发实现步骤
2.2.1.Demo简介
/K3Portal/PortalHelp/Demo/C#/目录,其中CSharpPassportDemo.csproj为采用VisualC#语言开发的单点登录Demo,运行时界面如下图:
录入正确的用户和密码后,选择单点登录,进入正常的第三方业务系统,界面效果如下图:
2.2.2.实现步骤和流程
1、假定CSharpPassportDemo为第三方的业务系统,并具备自己的用户和登录系统,假定原登录界面为FrmLogin.cs,原主控为FrmMain.cs
3、增加一个Class,命名为CPassportLogin.cs,假定原系统存在登录逻辑校验函数为LoginCSharp,则增加函数LoginPassword,该函数首先调用单点登录组件进行单点登录验证,当单点登录验证通过之后,再调用原有登录逻辑LoginCSharp进行登录
6、在主控台FrmMain调用注销功能,代码如下图:
2.2.3.注意事项
1、关于门户Url地址和用户关联:
2、门户Url地址:
本Demo未取实际的Url设置地址,实际应用中要增加门户Url设置界面,并调用相关接口提取门户Url地址,本Demo采取了简化处理,直接取本机,如下图
3、单点登录用户关联
如VB本版介绍,需要进行用户关联设置并提供相关接口进行用户映射
2.3.Asp.Net单点登录二次开发实现步骤
2.3.1.Demo简介
/K3Portal/PortalHelp/Demo/ASPNET/目录,其中包括Login.aspx和Default.aspx,该页面是采用asp.Net语言开发的单点登录Demo,首先在IIS服务器建立一个虚拟目录为ASPNET,并将路径指向该目录。
运行时界面如下图:
2.3.2.实现步骤和流程
1、假定第三方的业务系统登录页面为Login.aspx,主控台为Default.aspx,并具备自己的用户和登录系统;
2、在Login.aspx增加2个控件,分别命名为opt1(命名用户登录),opt2(单点登录),其中命名用户登录为原有的登录方式,改进后增加了如下图的内容
3、增加一个javascript文件,命名为public.js,假定原系统存在登录逻辑校验函数为LoginAspNet,则增加函数LoginPassword,该函数首先调用单点登录组件进行单点登录验证,当单点登录验证通过之后,再调用原有登录逻辑LoginAspNet进行登录
4、在登录界面中,调用单点登录函数,如下图
由于b/s结构的特殊性,需要增加自动调用功能,见下图
上述代码表示,在页面加载时自动调用on_load()函数,该函数调用cookie内容并设置默认信息后调用单点登录函数,退出时调用window_unload()函数,并将默认信息保存到cookie中。
同时增加对应的调用函数如下图:
5、注销功能实现,当退出主控台时,需要注销单点登录信息,注销实现如下图:
6、在主控台页面调用Default.aspx中注销功能,代码如下图:
2.3.3.注意事项
1、关于门户Url地址和用户关联
本demo忽略了门户Url地址的设置和用户关联,需要在二次开发中自行增加,可参考vb版本的说明
2、Asp.Net的特殊性
Asp.Net作为一个b/s系统的开发工具,与通用的c/s的开发存在较大的不同,大部分的代码和逻辑需要采用html和javascript来实现,在本指导文档中的描述中,可能缺少连贯性,因此要多参考demo代码本身。