集成员工岗位数据到EAS系统实现方案
EAS Cloud系统员工webservice接口中,没有员工职位和部门属性参数,同步到EAS系统后,不能挂到正确的职位下。若要同步职位和部门属性到EAS Cloud,可通过引入引出webservice接口来变通实现。方案如下。
1、引入引出模板
通过在职员工引入引出实现类方法,调用引入引出接口来实现从第三方系统同步员工兼职职位数据到EAS系统,实现类为:com.kingdee.eas.basedata.person.app.EmployeeDataImport。
2、数据引入接口
职员引入引出使用通用的外部数据交换接口,WSExternalDataExchangeFacade
1、 要职员引入引出接口,必须首先登录EAS,可参考EASLogin接口文档。
2、 职员引出接口 webService 接口生成客户端,可参考 EASLogin 方法
2.1importBizData
1、 使用该接口引入员工岗位数据
2、 引入参数:String[][] importBizData(String easTemplaeNum, String xmlData, boolean isUpdate) throws BOSException
• 传参数第1个:easTemplaeNum 数据引入模板编码
在职员工标准模板 person
• 传参数第2个:xmlData
Xml格式的数据文件, xml模板可以从EAS在职员工引入引出模板处获得。
• 传参数第3个:isUpdate
是否覆盖更新,是:覆盖更新;否,新增引入
附:在职员工XML模板.此模板只列出了必录字段,现场可根据实际需要,基于职员引入引出模板,添加字段。
<easrecord product="EAS" version="8.5.0" objectName="Person" objectDesc="在职员工">
<struct>
<field name="FNumber" desc="编码" isNeed="true" memo=""/>
<field name="FName_L2" desc="简体中文_名称" isNeed="true" memo=""/>
<field name="FPositionID" desc="所属职位编码" isNeed="true" memo=""/>
<field name="FIsPrimary" desc="是否主要职位" isNeed="true" memo=""/>
<field name="FAdminOrgUnitID" desc="所属行政组织编码" isNeed="true" memo=""/>
<field name="FEmployeeTypeID" desc="员工状态编码" isNeed="true" memo=""/>
</struct>
<records>
<record>
<field name="FNumber">000178</field>
<field name="Fname_L2">张三</field>
<field name=" FPositionID">P0002</field>
<field name=" FIsPrimary ">1</field>
</record>
</records>
</easrecord>
3、 EAS登录 webService 接口
3.1.功能规划
1、 如需调用数据引入引出接口,必需先要登录EAS,先期需要调用 EASLogin 登录 EAS
3.2.EASLogin 发布
1、 发布 EASLogin 客户端
2、 点击 EASLogin(wsdl),获取其 wsdl 地址
3、 制作 bat 文件,利用第三方包,发布登录客户端代码,调用语句如下:
java -Djava.ext.dirs=lib org.apache.axis.wsdl.WSDL2Java http://192.168.16.13:6888/ormrpc/services/EASLogin?wsdl
4、 第三方apache包
5、 代码解释:java –Djava.ext.dirs=lib org.apache
lib 是包放置的文件夹名
3.3 .EASLogin 代码调用
1、 调用的各所需参数
2、 所需参数:
* @param userName 用户名 String
* @param password 密码 String
* @param slnName eas String
* @param dcName 数据中心 String
* @param language 语言 String
* @param dbType 数据库类型 int
* @param authPattern 验证方式 默认 "BaseDB" ; 其他认证方式KEY可从easAuthPatterns.xml中获取 String
3、 参数说明
a) 所传参数,如上所列,按顺序传入
b) 查看EASLogin(wsdl),有两个接口,
i. 传参6个,此方式不提倡使用。为保证原有功能,服务端最后也会调用
传参7个的方法,第7参数自动调用"BaseDB"
ii. 传参7个,如调用此方法,则需要查询easAuthPatterns.xml 文档
c) 解决方案:eas
d) 语言:L2 简体中文L3 繁体中文
e) 服务器地址 + 端口:组合成 URL
f) 数据库类型:0 SQL Server1 Oracle2 DB2
g) authPattern 验证方式
i. 默认 "BaseDB"
ii. easAuthPatterns.xml 文档路径
iii. easAuthPatterns.xml 文档说明
4、 做一个javaBean 类,把此参数 set 到此javaBean 类中
5、 登录代码
a) 登录
b) 登录实现