u开发之eai接口
EAI讲解
U8EAI产品一、概述随着企业应用的不断增加,如果不能将各个应用无缝地进行集成,实现协同工作,势必会出现“应用孤岛”这一困境,无法使企业耗费巨资搭建的应用实现最优的性能,因此EAI(Enterprise Application Integration,企业应用集成)工具开始扮演着越来越重要的角色。
U8EAI成功的推出为用户实现第三方系统与U8的集成提供了很好的支持。
EAI(企业应用集成):将进程、软件、标准和硬件联合起来,在两个或更多的企业系统之间实现无缝集成,使它们就像一个整体一样。
尽管EAI常常表现为对一个商业实体(例如一家公司)的信息系统进行业务应用集成,但当在多个企业系统之间进行商务交易的时候,EAI也表现为不同公司实体之间的企业系统集成,例如B2B的电子商务。
EAI到底是什么:工具:系统集成工具;方法:企业老总们常说的系统“无缝连接”;工程:“信息孤岛”之间的桥梁U850EAI策略就是 U8利用XML技术进行与外部系统的数据交互,使得U8系统具有更强的开放性和可扩展性,利用数据交换平台可以实现U8系统与第三方软件的系统集成。
包括数据的双向传递。
EAI整体解决方案如下:二、术语EAI: Enterprise Application Integration,企业应用集成XML:eXtensible Makeup Language,可扩展标记语言。
可扩展标记语言(Extensible Markup Language,XML),它是标准通用标记语言(Standard Generic Markup Language,SGML)的一个子集。
其目的在于使得在Web 上能以现有超文本标记语言(Hypertext Markup Language,HTML)的使用方式提供,接收和处理通用的SGML成为可能。
XML文件由称为实体的存储单元组成,实体可以包含已析数据或未析数据。
已析数据由字符组成,其中一些字符组成字符数据,另一些字符组成标记。
U8-EAI二次开发说明
企业应用集成工具(EAI)二次开发1.概述U850企业应用集成工具(EAI)是U850与外部系统的数据接口,EAI提供了一些组件,可以在这些组件的基础上进行二次开发(以下简称“EAI二次开发”),实现与外部系统的集成。
不同系统集成的关键是遵循共同的数据标准,U850根据自己系统提出了一套数据标准,包括各种单据和基础档案,外部系统如果要和U850集成则必须遵循这一标准。
这套标准用XML 描述,因此数据流都为XML格式。
EAI二次开发可分为两种模式:注意:文中所有编程都以VB为例一、直接利用EAI管理工具。
在开始菜单中选择企业应用集成工具,登录企业应用集成主界面。
在这里可以将U850数据以标准XML文件的形式导出U850数据库或将标准XML数据文件导入U850系统。
二次开发程序员只需编写一个工具将标准XML数据文件进行适当转换写入外部系统或取出外部系统数据写成标准XML数据文件。
(参看EAI安装目录\xml\Samples\下的例子)数据流程如下:这种开发模式比较简单,优点是:充分利用EAI工具提供的功能,编程简单;缺点是:只能提供批量导入导出功能。
二、利用EAI提供的组件,进行灵活的二次开发。
包括两种方式:本地COM方式、Internet方式。
1)本地COM方式:这种方式可根据开发者的需要批量处理或者实时处理。
接口调用非常简单,简化了编程。
开发者只需将标准数据传入接口,如下:Set Obj=CreateObject(U8Distribute.iDistribute)Str = obj. Process(sXml)sXml为标准数据串,具体格式后面会说明。
2)Internet方式:http.Open "Post",http_name & “import.asp", True //指定服务器ASPhttp.send dom.xml //把xml数据发送到服务器端strRet= http.responseText //strRet :返回的xml格式的回执信息2.数据格式标准EAI可以导入导出的数据范围包括:Ø总帐§凭证§银行对账单Ø工资管理§人员档案§工资项目数据Ø固定资产§固定资产卡片Ø成本管理§材料消耗数据Ø资金管理§资金内部结算单Ø应收管理§应收单§收款单Ø应付管理§应付单§付款单Ø采购管理§采购订单§采购到货单§采购发票Ø销售管理§销售订单§发货单§销售发票§销售发票_导入到内部结算单Ø库存管理§入库单§出库单§库存量Ø基础档案§部门档案§职员档案§地区分类§客户分类§客户档案§供应商分类§供应商档案§存货分类§存货档案§结算方式§付款条件§开户银行§仓库档案§收发类别§销售类型§计量单位§计量单位组§产品结构§采购类型§成套件§费用项目§发运方式§货位档案§自定义项档案§项目§会计科目§外币§凭证类别§常用摘要提示:EAI安装目录\xml\Operation\dir.xml保存了相关定义下面一个例子是从U8导出的部门档案的片断:<?xml version="1.0" encoding="gb2312" ?><ufinterface sender="001" receiver="u8" roottag="department" docid=".533424" proc="Query" codeexchanged="N" exportneedexch="N" display="部门档案" family="基础档案" billtype=""> <department><code>1</code><endflag>0</endflag><name>综合处</name><rank>1</rank><manager/><prop>管理兼技术</prop><phone/><address/><remark/><creditline/><creditgrade/><creditdate/><offergrade/><offerrate/></department><department><code>109</code><endflag>1</endflag><name>厂办公室</name><rank>2</rank><manager/><prop>管理</prop><phone/><address/><remark/><creditline/><creditgrade/><creditdate/><offergrade/><offerrate/></department>…………</ufinterface>EAI中所有的标准数据文件都有类似于上例的结构,首先,有一个名为ufinterface的元素,ufinterface再有若干个子元素组成,不同应用的子元素有不同的格式。
EAI接口开发使用及单点登录配置说明
WS_EAI接口
type int lang 登录后使用的语言,默认为中文 returns string 如果验证成功,返回一个token串 ,否则返回空字符串,调用其它的WEB服务,必须 将token变量加到请求头中 退出登录 logout( ) returns void (2)WS_EAI 提供CRM系统用户EAI读取的WEB服务 EAI处理函数 process(string queryXml) type string queryXml 输入XML returns string 输出XML
在线文档
如图:
WS_System接口
2.接口介绍
用友TurboCRM6.1的WebService主要的两个接口是: (1)WS_System 提供CRM系统用户登录登出的WEB服务 验证身份 login( string user, string password, int lang ) type string user 用户登录名 type string password 登录密码
配置文件说明: method:验证方法。pass表示登录名和密码验证。
单点登录
配置文件示例:
method=ip type=clientip/referhost [user:*] ip:1="192.168.0.1" ip:2="192.168.0.1-192.168.0.5" ip:3="192.168.0.*" host:1="" host:2="192.168.0.1“ „„ [user:admin] ip:1="192.168.0.1" ip:2="192.168.0.1-192.168.0.5" ip:3="192.168.0.*" „„
U8-EAI二次开发说明
企业应用集成工具(EAI)二次开发1.概述U850企业应用集成工具(EAI)是U850与外部系统的数据接口,EAI提供了一些组件,可以在这些组件的基础上进行二次开发(以下简称“EAI二次开发”),实现与外部系统的集成。
不同系统集成的关键是遵循共同的数据标准,U850根据自己系统提出了一套数据标准,包括各种单据和基础档案,外部系统如果要和U850集成则必须遵循这一标准。
这套标准用XML 描述,因此数据流都为XML格式。
EAI二次开发可分为两种模式:注意:文中所有编程都以VB为例一、直接利用EAI管理工具。
在开始菜单中选择企业应用集成工具,登录企业应用集成主界面。
在这里可以将U850数据以标准XML文件的形式导出U850数据库或将标准XML数据文件导入U850系统。
二次开发程序员只需编写一个工具将标准XML数据文件进行适当转换写入外部系统或取出外部系统数据写成标准XML数据文件。
(参看EAI安装目录\xml\Samples\下的例子)数据流程如下:这种开发模式比较简单,优点是:充分利用EAI工具提供的功能,编程简单;缺点是:只能提供批量导入导出功能。
二、利用EAI提供的组件,进行灵活的二次开发。
包括两种方式:本地COM方式、Internet方式。
1)本地COM方式:这种方式可根据开发者的需要批量处理或者实时处理。
接口调用非常简单,简化了编程。
开发者只需将标准数据传入接口,如下:Set Obj=CreateObject(U8Distribute.iDistribute)Str = obj. Process(sXml)sXml为标准数据串,具体格式后面会说明。
2)Internet方式:http.Open "Post",http_name & “import.asp", True //指定服务器ASPhttp.send dom.xml //把xml数据发送到服务器端strRet= http.responseText //strRet :返回的xml格式的回执信息2.数据格式标准EAI可以导入导出的数据范围包括:Ø总帐§凭证§银行对账单Ø工资管理§人员档案§工资项目数据Ø固定资产§固定资产卡片Ø成本管理§材料消耗数据Ø资金管理§资金内部结算单Ø应收管理§应收单§收款单Ø应付管理§应付单§付款单Ø采购管理§采购订单§采购到货单§采购发票Ø销售管理§销售订单§发货单§销售发票§销售发票_导入到内部结算单Ø库存管理§入库单§出库单§库存量Ø基础档案§部门档案§职员档案§地区分类§客户分类§客户档案§供应商分类§供应商档案§存货分类§存货档案§结算方式§付款条件§开户银行§仓库档案§收发类别§销售类型§计量单位§计量单位组§产品结构§采购类型§成套件§费用项目§发运方式§货位档案§自定义项档案§项目§会计科目§外币§凭证类别§常用摘要提示:EAI安装目录\xml\Operation\dir.xml保存了相关定义下面一个例子是从U8导出的部门档案的片断:<?xml version="1.0" encoding="gb2312" ?><ufinterface sender="001" receiver="u8" roottag="department" docid=".533424" proc="Query" codeexchanged="N" exportneedexch="N" display="部门档案" family="基础档案" billtype=""> <department><code>1</code><endflag>0</endflag><name>综合处</name><rank>1</rank><manager/><prop>管理兼技术</prop><phone/><address/><remark/><creditline/><creditgrade/><creditdate/><offergrade/><offerrate/></department><department><code>109</code><endflag>1</endflag><name>厂办公室</name><rank>2</rank><manager/><prop>管理</prop><phone/><address/><remark/><creditline/><creditgrade/><creditdate/><offergrade/><offerrate/></department>…………</ufinterface>EAI中所有的标准数据文件都有类似于上例的结构,首先,有一个名为ufinterface的元素,ufinterface再有若干个子元素组成,不同应用的子元素有不同的格式。
L3-U81客开培训文档--EAI
L3-U81客开培训文档--EAIEAI问题与解决思路汇总培训部门:U8移动及UAP开发部U8版本号:V11.1讲师:刘朝晖定稿时间:2022-11-250.变更记录变更阶段时间变更原因变更类型内容提出人一、EAI接口配置问题在使用EAI之前,务必设置好EAI接口配置,包括:指定U8服务器(服务端默认为本机localhot,客户端可任意指定)、EAI默认登录身份验证、EAI数据源和外部系统注册,具体设置方法按F1参见“U8EAI帮助文档”,在此不赘述。
基础常见的问题有:1.“登录信息不全”这是由于用户没有正确设置EAI的默认登录(单击“确定”是否弹出“成功”提示);或者在设置默认登录之前,EAI的接口已经在使用,如零售和CRM中,由于这些应用都是基于EAI的远程接口,这时设置完后,要使配置生效,还需要重启IIS。
2.“不存在的年度”或“登录日期不在有效的会计期间”图1图2这一类问题出现的原因是使用当前操作系统时间登录指定EAI数据源帐套不合法。
出于历史原因,EAI的所有配置信息存储在Meta库,外部系统注册码和日志信息存储于帐套库,因此,在EAI基本设置中需要指定这些信息的存储地——EAI数据源(这与外部系统注册中为数据交换指定的交换对象或目标——业务帐套完全是两个概念)。
由于U810.0之前版本存在“年结”,为了安全避免随意设置EAI数据源登录时间带来的风险(误登录往年帐套),统一取当前操作系统的时间为EAI数据源的默认登录时间(界面上没有设置登录时间的地方)。
万事皆有可能,客户可能尚未年结至当前年度,还需要做往年帐,这时设置EAI数据源后就出现如上图所示的错误提示。
知道原因,修改当前操作系统的时间为EAI数据源登录的有效时间即可解决。
3.“注册号不正确”很明显这是没有正确设置EAI的注册码,或者交换文件中携带的注册码(头结点中ender属性的值)与EAI的当前配置不匹配,可能是用户根本没有设置或者修改或者删除了交换文件中指定的注册号,这时检查“外部系统注册”页签下应该不存在“系统编码”为该注册号的条目,此时根据实际情况,分析是否需要单击右下角“添加”按钮新增该注册号,或者修改交换文件中携带的注册码为已注册的注册码。
EAI技术和概念解析
EAI技术和概念解析简介:本文介绍了EAI的概念,并对一套完整的EAI技术层次体系中的不同层面进行了详细的讲解。
标记本文!发布日期: 2004 年 12 月 01 日级别:初级访问情况 798 次浏览建议: 0 (添加评论)平均分(共 1 个评分)EAI概念综述企业应用整合(EAI)的概念在IT界提出和讨论已经有几年的历史了,最初大家谈到的EAI的概念,相对后来EAI的发展来看,可以说是一个狭义上的EAI,正如其字面上的含义"Enterprise Application Integration",即企业应用整合,仅指企业内部不同应用系统之间的互连,以期通过应用整合实现数据在多个系统之间的同步和共享。
伴随着EAI技术的不断发展,它所被赋予的内涵变得越来越丰富。
现在大家谈到的EAI的概念,具有更为广义的内涵,它已经被扩展到业务整合(Business Integration)的范畴,业务整合相对EAI 来说是一个更宽泛的概念,它将应用整合进一步拓展到业务流程整合的级别。
业务整合不仅要提供底层应用支撑系统之间的互连,同时要实现存在于企业内部应用与应用之间,本企业和其他合作伙伴之间的端到端的业务流程的管理,它包括应用整合,B2B整合,自动化业务流程管理,人工流程管理,企业门户以及对所有应用系统和流程的管理和监控等方方面面。
同样,对于要实施EAI的企业而言,EAI也是分层次的,但对于如何划分和规范EAI层次的定义,业界并没有一个统一的标准。
针对不同的企业,同样叫"企业应用整合",其内容和层次可能就会存在一定的差异;对于各家EAI厂商,基于EAI理解的侧重点不同,也可以说出不同的答案。
当前从最普遍的意义上来说,比较宽泛的对EAI概念的理解是认为EAI可以包括数据集成、应用集成和业务流程集成等多个方面。
具体到技术层面上的划分,我们认为一套完整的EAI技术层次体系应该包括应用接口层,应用整合层,流程整合层和用户交互层四个大的层面。
U开发之EAI接口
U开发之E A I接口集团标准化工作小组 [Q8QX9QT-X8QQB8Q8-NQ8QJ8-M8QMN]U8E A I接口摘要U8企业应用集成(EAI)产品是U8ERP与第三方系统进行业务数据交换的平台级工具产品,是U8ERP统一的对外开放接口。
EAI产品包括一整套U8ERP的标准业务数据交换接口,这些接口涵盖基础档案、财务、供应链、生产制造、客户关系管理、HR等ERP业务模块,具备统一的入口、一致的业务外观和相对完整的业务功能,能完成U8基础数据、凭证、业务单据的导入导出及增、删、改查等操作,是U8与外部系统进行应用集成和业务整合的基本资源。
在技术上,EAI数据交换接口采用符合业界标准的XML作为数据交换接口规范(协议)描述,充分利用了XML跨平台和低耦合的特性。
基于XML的交换协议描述了数据交换过程中Request/Response消息数据格式及元数据规范(Schema),外部系统只要遵循此标准和规范即可以方便的与U8ERP进行Talking。
为解决数据交换中系统之间数据格式和数据语义差异问题,EAI产品提供了可扩展的数据适配器和数据映射机制用来进行内外数据的翻译和转换;为方便用户的应用和体验,EAI产品还提供了能直接进行U8数据导入导出的基本用户界面工具,此工具支持手工和自动导入导出。
目标本文主要介绍如何通过EAI接口实现U8与其他业务系统之间的数据交互。
EAI接口规范EAI接口本地COM接口类库:ProgID:方法:String Process(String RequestXml)参数:数据交换请求消息,详见下文请求消息格式。
返回:数据交换响应消息,详见下文回执消息格式。
这种方式可根据开发者的需要批量处理或者实时处理。
接口调用非常简单,简化了编程。
开发者只需将标准数据传入接口,如下:1)VB调用代码2).NET调用代码3)JAVA代码采用JNI、JCOM、JACOB技术调用EAI服务代理COM组件,下面以JACOB为例:ET 调用代码2) JAVA 调用代码满足现有U8EAI做不到的业务单据操作,如销售报价单增删改,以及业务操作,如审核、弃审,将现有U8API的功能整合进U8EAI,将两者糅合在一起,形成功能互补,为企业应用集成和二次开发提供更强大的支持。
U8开发之EAI接口
U8 EAI接口摘要U8企业应用集成(EAI)产品是U8ERP与第三方系统进行业务数据交换的平台级工具产品,是U8ERP统一的对外开放接口。
EAI产品包括一整套U8ERP的标准业务数据交换接口,这些接口涵盖基础档案、财务、供应链、生产制造、客户关系管理、HR等ERP业务模块,具备统一的入口、一致的业务外观和相对完整的业务功能,能完成U8基础数据、凭证、业务单据的导入导出及增、删、改查等操作,是U8与外部系统进行应用集成和业务整合的基本资源。
在技术上,EAI数据交换接口采用符合业界标准的XML作为数据交换接口规范(协议)描述,充分利用了XML跨平台和低耦合的特性。
基于XML的交换协议描述了数据交换过程中Request/Response消息数据格式及元数据规范(Schema),外部系统只要遵循此标准和规范即可以方便的与U8ERP进行Talking。
为解决数据交换中系统之间数据格式和数据语义差异问题,EAI产品提供了可扩展的数据适配器和数据映射机制用来进行内外数据的翻译和转换;为方便用户的应用和体验,EAI 产品还提供了能直接进行U8数据导入导出的基本用户界面工具,此工具支持手工和自动导入导出。
目标本文主要介绍如何通过EAI接口实现U8与其他业务系统之间的数据交互。
EAI接口规范EAI接口本地COM接口类库:U8Distribute.DLLProgID:U8Distribute.iDistribute方法:String Process(String RequestXml)参数:数据交换请求消息,详见下文请求消息格式。
返回:数据交换响应消息,详见下文回执消息格式。
这种方式可根据开发者的需要批量处理或者实时处理。
接口调用非常简单,简化了编程。
开发者只需将标准数据传入接口,如下:1)VB调用代码Dim eaiBroker As ObjectSet eaiBroker = CreateObject(“U8Distribute.iDistribute”) ’创建EAI服务代理接口对象Dim responseXml As StringresponseXml = eaiBroker.Process(requestXml) ’调用EAI服务代理的数据交换方法Process,传入‘Request交换消息,并获取EAI返回的Response消息。
EAI操作说明
EAI操作说明:
菜单:
1、“开始”——“所有程序”——“用友U810.1”——“企业应用集成EAI”——“企业应用集成”;
2、然后,登录到服务器,用账套主管登录,选择需要输出的账套号,及年份;
3、进入EAI后,点“数据交换”——“导入导出设设置”,选择注册编码(账套号),选择具体要导出的资料,如“基础档案”——“供应商档案”“会计科目”等,然后设计“导出文件默认路径”;(每种档案都要选路径);然后按“保存”;
4、数据导出:“数据交换”——“数据交换”,将需要导出的项目如“凭证”选到已选项目里,然后,选择注册编码(账套号),再选U8导出,然后点击“执行”,导出时最好一个一个项目导出,不然会混淆;
5、导出后,将文件拷贝回总公司服务器上,然后,登录EAI;
进入EAI后,点“数据交换”——“导入导出设设置”,选择注册编码(账套号,需要导入的账套),选择具体要导出的资料,如“基础档案”——“供应商档案”“会计科目”等,然
后设计“导入文件默认路径”;(每种档案都要选路径);然后按“保存”;
号”数据出入U8;,点击“执行”;。
关于EAI
关于EAI的基本流程
关于EAI的基本使用,现将心得体会简述如下:EAI是U8和外界数据交换的一个接口,通过标准的XML语言来实现数据的导入导出,包括基础档案和日常单据的导入导出。
、首先这是EAI的界面:包括菜单上所展示的内容!必须先进行系统的注册,一个注册号标志着一个帐套,通过该注册号来进行连接账套!
这里的外部是指该服务器上的其他账套,内部编码指的是当前登陆的账套。
同一个账套的导出再导入,只需要把导出的XML文件原样导入到账套中即可,如果对应的某些档案编码发生了变化,就必须设置数据映射来做转换,这样才能确保导入数据的可用性!
例如下图:
先将注册号为sss的部门档案导出*(首先设置导出的注册编码以及对应导出的路径)
上图中还要注意对应的档案以及过滤条件(可以默认全部导出)
设置好导出条件后,保存,切换到导入导出界面,点执行,即可把部门档案导出。
导出到某路径后,设置数据映射的条件,即对应关系设置:
另外还有一个替换设置,用来设置在导入导出中某些单据涉及到的替换项目,例如将001账套的凭证导入到002账套里,对应人员编码都是1001,但对应的名称却不一样,可以在此进行替换设置,如图:
然后进行数据交换,如下图:
按照既设的对应关系进行转换(选择根据数据映射转换即可)导入即可!
另外还可以设置数据交换计划,进行单据的自动传输(相当于热备份,执行频率最小可到按时来执行)
配置即可,如下图:
然后远程登陆即可:
进入远程登陆界面,和本地的EAI设置基本一样:
小结:一己之见,时间仓促,难免肤浅,不足之处,望指正,谢谢!。
用友TurboCRM_U8_EAI数据接口常见问题..
CRM&U8接口FAQ目录1.CRM与U8接口,如何控制只从U8导入当前时间以后的数据? (4)2.U8针对订单做出库单,出库单同步到CRM的交付记录,此时订单明细的“已交付数量”未发生变化,如何处理? (4)3.从U8导入交付、发票、收款信息时,为什么报“交付明细: 错误的数据: {[订单明细]必须填写;}这样的错误? (4)4.U8适配器导入操作报错“错误的数据:UF INTERFACE EMPTY”如何处理? (4)5.当U8中间表 TC_UFINTERFACEUPDATE 数据量较大,通过接口程序无法同步数据,或者想指定传递某些数据怎么办? (4)6.U8多帐套存货接口传递CRM的问题。
(5)7.在CRM系统中建立的ERP-U8适配器无法使用? (5)8.建立的ERP-U8适配器采用远程HTTP连接方式时,其网址字段该如何填写? (5)9.ERP-U8的启用后台任务有何作用? (5)10.订单从U8系统中导入CRM系统后,再向CRM系统导入该订单对应的收款、交付单时为什么总不成功? (5)11.从U8系统导入订单到CRM系统时,操作为什么总不成功? (5)12.U8系统中什么类型的收款单才能通过U8-EAI适配器导入到CRM中? (6)13.如何处理U8年结后的数据? (6)14.如何设置部门的对应关系? (6)15.U8年结对CRM适配器有什么影响? (6)16.为什么不能用客户编号取代识别码?或者识别码可以实现自动编号? (7)17.U8EAI返回错误:“未设置对象变量或WITH BLOCK变量,ERRNUMBER:91 SOURCEU8LOGIN”或“拒绝访问” (7)18.客户新增接口,返回错误:“未设置对象变量或 WITH BLOCK 变量” (8)19.EAI的SQLEXEC方式,返回错误: (9)20.新增销售订单的接口,返回错误:“导入失败本单据已被他人修改或修改不成功或网络冲突”。
U开发之EAI接口
U8E A I接口摘要U8企业应用集成(EAI)产品是U8ERP与第三方系统进行业务数据交换的平台级工具产品,是U8ERP统一的对外开放接口。
EAI本地COM接口类库:U8Distribute.DLLProgID:U8Distribute.iDistribute方法:String Process(String RequestXml)参数:数据交换请求消息,详见下文请求消息格式。
返回:数据交换响应消息,详见下文回执消息格式。
这种方式可根据开发者的需要批量处理或者实时处理。
接口调用非常简单,简化了编程。
开发者只需将标准数据传入接口,如下:1)VB调用代码注意:URL:http://u8appsrv/u8eai/import.asp 中的u8appsrv应填U8应用服务器IP调用U8API接口满足现有U8EAI做不到的业务单据操作,如销售报价单增删改,以及业务操作,如审核、弃审,将现有U8API的功能整合进U8EAI,将两者糅合在一起,形成功能互补,为企业应用集成和二次开发提供更强大的支持。
通过参照U8API 请求XML 模板,填入相应的API 参数值,即可实现通过U8EAI 统一接口调用U8API 服务。
详细内容请参见文档《 U8API 和U8EAI 整合》。
1、 请求XML 格式其中,proc 填入操作类型,添加:add ;编辑:edit ;删除:delete ;查询:query ;审核:verify ;弃审:unverify 。
2、 返回XML 格式以上为查询返回XML 格式,新增成功后,还会返回新增单据或档案的ID 。
<?xml version="1.0" encoding="utf-8" ?> <ufinterface roottag ="u8api " receiver ="u8" sender ="001" proc ="add "> <u8apiservice > <apiurl value ="U8API/PurchaseOrder/VoucherSave " /> <apiParams > <param name ="VoucherState " value ="2" datatype ="int " /> <param name ="CurDom " datatype ="IXMLDOMDocument2" /> <param name ="UserMode " value ="0" datatype ="int " /> </apiParams ><bo > <head type ="bo "/><body type ="bo “/> </bo > <returnParams > <param name ="curID " /> </returnParams > </u8apiservice > </ufinterface >3、返回错误信息按传入顺序返回批量操作的执行结果,调用一次API的过程中若出现错误,不影响其他调用的执行。
基于用友U81F的EAI决方案
系统数据通过 U I 8F平 台协 同到 用 友 U 8系统 。U I 8F作 为 U 8平 台 的 一 部 分 ,担 负着 探 索 和 验 证 企 业 信 息 系统 集 成 的模 式 、方 法 、思 路 的 任 务 。U I 8F平 台 采 用 自动 生 成 触 发 器 的方 式 实 现
数 据 变 化 捕 捉 服 务 ( h n e D t C pu eS r c ) 然 后 利 用 C a g a a tr ev e , a i XM 0 技 术 将 捕 捉 到 的数 据 生 成 XM LD M L文件 。
图 1 生 成 XM L文 件 流 程 图
种 方 法 和技 术 。E I 过 建 立 底 层 结 构 ,来 联 系横 贯 整 个 企 业 A 通 的 异 构 系 统 、应 用 、数 据 源 等 ,完 成 在 企 业 内 部 的 E P R 、
C M、S M、数 据 库 、数 据 仓 库 , 以及 其 他 重 要 的 内部 系统 之 R C 间 无 缝 地 共 享 和 交 换 数 据 的需 要 。E I 决 方 案 呈 现 出 多 种 形 A 解 式 ,不 同 的企 业 有 不 同 的 解 决 方 案 ,从 而 使 E I 现 多 种 类 A 呈 型 。从 E S本 身 层 次 结 构 来 划 分 ,E I 以 分 为 表 示 层 集 成 、 I A 可 数 据 层集 成 、功 能 层 集 成 3种 类 型 。
关 键 词 :E ;UBF;XM L;协 同 处 理 ; 触 发 器 AI I
当 今 全 球化 时代 ,企 业 业 务 流 程 日益 复 杂 .信 息 化 子 系统 不 断增 加 ,形 成 一 个 个 的 “信 息 孤 岛 ” 。如 何 打 通 “ 息 孤 信
岛” ,实 现 企 业 内部 各 系 统 之 间 互 连 互 通 、 信 息 共 享 融 合 和 业
U开发之EAI接口
U8E A I接口摘要U8企业应用集成(EAI)产品是U8ERP与第三方系统进行业务数据交换的平台级工具产品,是U8ERP统一的对外开放接口。
EAI产品包括一整套U8ERP的标准业务数据交换接口,这些接口涵盖基础档案、财务、供应链、生产制造、客户关系管理、HR等ERP业务模块,具备统一的入口、一致的业务外观和相对完整的业务功能,能完成U8基础数据、凭证、业务单据的导入导出及增、删、改查等操作,是U8与外部系统进行应用集成和业务整合的基本资源。
在技术上,EAI数据交换接口采用符合业界标准的XML作为数据交换接口规范(协议)描述,充分利用了XML跨平台和低耦合的特性。
基于XML的交换协议描述了数据交换过程中Request/Response消息数据格式及元数据规范(Schema),外部系统只要遵循此标准和规范即可以方便的与U8ERP进行Talking。
为解决数据交换中系统之间数据格式和数据语义差异问题,EAI产品提供了可扩展的数据适配器和数据映射机制用来进行内外数据的翻译和转换;为方便用户的应用和体验,EAI产品还提供了能直接进行U8数据导入导出的基本用户界面工具,此工具支持手工和自动导入导出。
目标本文主要介绍如何通过EAI接口实现U8与其他业务系统之间的数据交互。
EAI接口规范EAI接口本地COM接口类库:ProgID:方法:String Process(String RequestXml)参数:数据交换请求消息,详见下文请求消息格式。
返回:数据交换响应消息,详见下文回执消息格式。
这种方式可根据开发者的需要批量处理或者实时处理。
接口调用非常简单,简化了编程。
开发者只需将标准数据传入接口,如下:1)VB调用代码NET 调用代码3)JAVA代码采用JNI、JCOM、JACOB技术调用EAI服务代理COM组件,下面以JACOB为例:EAI远程数据交换采用Http POST的方式。
1)访问网址: ET调用代码2)JAVA调用代码满足现有U8EAI做不到的业务单据操作,如销售报价单增删改,以及业务操作,如审核、弃审,将现有U8API的功能整合进U8EAI,将两者糅合在一起,形成功能互补,为企业应用集成和二次开发提供更强大的支持。
主流系统EAI接口技术剖析
ALE 定义于SAP 应用层,与 SAP 作为目前ERP 市场上最为领先的应用系统之一, 一直以来,SAP R/3在提供API 应用编程接口和接口 工具方面也同样领先于其它 ERP 厂商。
ALE/IDocs 是SAP 公司为SAP R/3 R4.6C 版本所提供的接口机制, 目前应用最为广泛。
在 R4.0以后的版本中,又添加了技术上先进的 BAPI 。
本文作为系列介绍之一,对ALE/IDocs , BAPI 以及其它可用的整合方式进行介绍。
1、ALE/IDocs 是什么?ALE 是Application Link and Enabling 的缩写,是 SAP 专门为SAP 与SAP 之间所设计的整合中间件。
IDocs 是中介文本(Intermediate DOCument)的缩写,是SAP 提供的系统整合专用的数据 /消息格式。
ALE 在SAP 3.0版本开始就作为SAP 整个应用体系的一部分,为分布式数据交换提供了可靠安全的通讯机制。
ALE 的设计,原本作为两个 SAP 流程之间的一种消息传递服务 (Messaging Service),使SAP 与SAP 的业 务流程之间企业数据能够有效的交换,为两个独立的 SAP 之间提供了的系统整合服务。
不过,随着应用的 发展,ALE/IDocs 接口机制也已然成为与其它非SAP 系统的标准的整合方式。
ALE 的设计结构可以分为三层,即 应用层,数据/消息分配层和通讯层。
图1, ALE 设计结构』通讯层:SAP 整合机制的基础,它利用远程功能呼叫 RFC(Remote Function Call)调用SAP 系统的功能模块。
数据/消息分配层:主要提供三个关键服务:按数据分配模型决定数据接收者。
消息的过滤和转换。
数据/消息的压缩,以提高传递效率。
应用层:直接与SAP 系统接口,生成或从其它系统接收含有路由信息的消息文本IDocs ,包括消息接收者的姓名,要求发送的类型以及对消息进行处理的规则。
EAI从接口走向服务
EAI从接口走向服务EAI在近两年成为企业信息化建设的热点。
应该说EAI建设是企业对他的信息系统建设的一个总结。
从EAI建设的驱动力来说,EAI是为了解决企业内的"蜘蛛网"、"信息孤岛"等问题而产生的。
企业通过建设EAI系统,有效地降低了接口数量,并且在各个信息系统之间架起了沟通的桥梁。
EAI为许多企业疏通了脉络,提高了信息系统的整合能力。
随着技术的发展,EAI的核心理念在近年来又有新的突破。
随着WebService的兴起,EAI面向服务的特征越来越明显。
可以说,下一个阶段的EAI系统,是建立在"面向服务"的理念上的整合体系,比现在大部分企业的"面向接口"的整合体系又向前迈进了一大步。
首先让我们来看一下目前企业在实施EAI系统时候采用的一些技术手段。
一、传统的EAI思路和发展过程企业建立各种信息系统是为了能够提高业务处理的效率、增强企业的竞争能力。
由于各种原因,很多企业都存在着一个个信息孤岛:信息系统往往为不同的部门而设计开发,不同的应用之间不能共享业务处理流程和信息、不能有效的协同工作,这大大降低了信息系统的作用。
随着竞争的日益加剧,企业迫切需要消除信息孤岛,使各个应用间既相互独立又能有效协同工作,将不同的应用集成一个完整的企业级信息化环境中,并能够实现与其他企业间的集成。
这就是所谓的EAI,企业应用集成。
企业应用集成就是通过相应的软件技术将企业已有的和新建的各种业务系统集成起来,共同完成企业的各种商务活动,并能够灵活快速地适应企业的发展和市场的变化。
从企业应用集成的架构来看,比较有代表性的有两种:总线型的集成架构和星型的集成架构。
总线型的集成架构的原理是:各个应用系统的接口都面向于信息总线。
信息在总线中流动、传递。
他的优点是应用系统只需要编写面向总线的接口,从而避免n*n个接口的编写。
tibco等公司的集成产品是这种架构的代表之作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
U8E A I接口摘要U8企业应用集成(EAI)产品是U8ERP与第三方系统进行业务数据交换的平台级工具产品,是U8ERP 统一的对外开放接口。
EAI产品包括一整套U8ERP的标准业务数据交换接口,这些接口涵盖基础档案、财务、供应链、生产制造、客户关系管理、HR等ERP业务模块,具备统一的入口、一致的业务外观和相对完整的业务功能,能完成U8基础数据、凭证、业务单据的导入导出及增、删、改查等操作,是U8与外部系统进行应用集成和业务整合的基本资源。
在技术上,EAI数据交换接口采用符合业界标准的XML作为数据交换接口规范(协议)描述,充分利用了XML跨平台和低耦合的特性。
基于XML的交换协议描述了数据交换过程中Request/Response消息数据格式及元数据规范(Schema),外部系统只要遵循此标准和规范即可以方便的与U8ERP进行Talking。
为解决数据交换中系统之间数据格式和数据语义差异问题,EAI产品提供了可扩展的数据适配器和数据映射机制用来进行内外数据的翻译和转换;为方便用户的应用和体验,EAI产品还提供了能直接进行U8数据导入导出的基本用户界面工具,此工具支持手工和自动导入导出。
目标本文主要介绍如何通过EAI接口实现U8与其他业务系统之间的数据交互。
EAI接口规范EAI接口本地COM接口类库:ProgID:方法:String Process(String RequestXml)参数:数据交换请求消息,详见下文请求消息格式。
返回:数据交换响应消息,详见下文回执消息格式。
这种方式可根据开发者的需要批量处理或者实时处理。
接口调用非常简单,简化了编程。
开发者只需将标准数据传入接口,如下:1)VB调用代码2) .NET 调用代码 3) JAVA 代码采用JNI 、JCOM 、JACOB技术调用EAI 服务代理COM 组件,下面以JACOB 为例:2) JAVA 调用代码U8API接口满足现有U8EAI做不到的业务单据操作,如销售报价单增删改,以及业务操作,如审核、弃审,将现有U8API的功能整合进U8EAI,将两者糅合在一起,形成功能互补,为企业应用集成和二次开发提供更强大的支持。
通过参照U8API请求XML模板,填入相应的API参数值,即可实现通过U8EAI统一接口调用U8API 服务。
详细内容请参见文档《 U8API和U8EAI整合》。
1、请求XML格式;按传入顺序返回批量操作的执行结果,调用一次API的过程中若出现错误,不影响其他调用的执行。
通用SQL查询接口由于EAI接口返回的数据格式是固定的标准格式,很有可能返回的数据中没有用户所需要的字段;另外,对于U8中的业务数据,EAI接口也不是100%覆盖的。
针对以上情况,EAI提供了一个灵活的数据查询通用接口--EAI通用SQL查询接口,该接口支持向EAI数据交换代理传递SQL语句进行查询操作,可以查询当前U8帐套的所有数据,用户不用直接访问U8帐套库。
查询返回的结果为.NET中的Dataset的XML格式的数据。
调用该接口只需给EAI数据交换服务代理传递特殊的Request消息即可。
1、请求Request消息格式框架部分包含数据交换的控制信息,其中主要包括:1)billtype系统用,可填空;2)docid:唯一编号,可空;3)sender: 发送方,填外部系统注册码(必填);4)receiver: 接收方,可填U8;5)roottag: 档案或单据模版名,填档案或单据的唯一标识,如:客商档案:customer,客商分类:customerclass ,具体名称由总体确定,在数据交换中该名称要经常使用;6)proc:操作类型,分为“增删改查”,对应填Add / Delete /Edit /Query(必填),该字段导入操作,请填写Add / Delete /Edit,导出操作,请填写Query;7)dynamicdate:业务账套登录日期,如果不填,则取U8应用服务器所在操作系统的当前日期,否则取指定的登录日期进行业务账套登录;8)codeexchanged:编码是否已转换,该字段在导入的时候使用,如果已转换即已和U8基础数据编码一致填Y,将不会通过对照表的转换,如果没有转换即和U8基础数据编码不一致填N,将会自动通过对照表转换之后,进行相应的操作;9)exportneedexch:导出是否需要根据对照表进行转换,需要填“Y”,不需要填“N”,导出的时候使用;10)timestamp:时间戳标志,在导出数据时,导出此时间戳的所有以后的数据,若为空,则导出只有过滤条件的数据。
内容部分:指数据请求或响应消息中携带的档案或单据等业务数据,如:档案用XML存储时的格式。
目前放在5)proc:操作码;6)u8key:成功后U8系统对应的关键字。
凭证的add操作的Response格式比较特殊,返回格式如下:5)u8vouch_id:U8凭证号6)u8acc_period:U8凭证会计期间7)succeed:成功标识:0:成功;非0:失败;EAI接口设置在使用EAI之前的第一步必须进行一个接口配置。
检查有没有进行EAI接口配置(“开始”->“程序”->“用友U8V*”->“企业应用集成(EAI)”->“EAI接口设置”),如果没有则需要进行配置。
一般配置好后就不要动了,除非出现服务器迁移或重新安装的情况。
基本设置需要指定U8服务器、EAI登录身份验证、EAI数据源。
如果进行数据交换的数据包比较大,则需要点“自动设置IIS”更改IIS的大数据限制。
建议: EAI的登录身份验证和U8业务帐套的身份验证分开使用。
在此将EAI登录用户配置成一个独立用户,不要与其他人使用的账号相同,如demo,并赋予该用户适当的权限以进行EAI数据交换,如帐套主管,配置完后重启IIS。
外部系统注册在“EAI接口设置”中切换到外部系统注册页签进行外部系统注册。
可以注册多个外部系统注册码。
在数据交换中,需要明确指定外部系统与U8的某个业务账套的对应关系,该对应关系由一个唯一的注册码标识。
可以注册多个外部系统注册码。
数据交换时需要在请求消息的头指定一个注册码:<ufinterface sender="注册码" …>。
数据导入基础导入EAI的数据导入,传入的参数为根据XML模板制作的XML数据。
比如,要导入部门档案,传入的sXml凭证导入由于凭证导入的特殊性,凭证导入时单据头中增加了renewproofno 、import 、newadd 三个属性,含义如下:proc=”add ”receiver=“u8” roottag=“customer” proc=“add“ … (示例详见SAMPLES\客户档案.xml )。
1、 将转换后的客户档案使用U8EAI 接口导入U8。
调用代码如下: 2、 将业务系统结算凭证转换为U8记账凭证。
凭证的模板为,在此文件中描述了凭证所包含的表头字段以及表体的分录字段、辅助核算字段等,对字段的数据类型、大小、取值规则也做了规定。
要将外部系统的销售发票格式转换成U8凭证的格式,一般采用二次开发编程的方式进行,也可以采用比较通用的XSLT进行转换。
由于凭证内容应该是带客户辅助核算的应收款凭证,其中客户为前两个步骤导入U8的新客户。
首先,通过应收款系统录入一张收款单:随后,制单生成凭证。
接着,使用EAI将其导出,注意要用刚才建的凭证号设置导出过滤条件。
1.登录EAI:“开始”->“程序”->“用友ERP-U8”->“企业应用集成(EAI)”->“企业应用集成”;2.左树“系统菜单”->“设置”-> “系统注册”,为U8的某个帐套注册一个数据交换编码,表明与外部系统的对应关系;3.左树“系统菜单”->“数据交换”-> “数据交换”,先设置凭证过滤条件,然后导出为一个XML文件:4.设置凭证过滤条件:点“保存”后“退出”回到上一个界面,点“执行”即可。
假设导出的凭证文件为“简单凭证.xml ”,用编辑工具(比如:记事本)打开此文件,将根节点修改一下:<ufinterface proc="add" enewproofno="y">根节点ufinterface的两个属性含义如下:proc="add" :表示操作类型,add表示新增。
renewproofno="y":表示凭证导入U8后是否重新编码,应该填y。
修改完后保存。
这样,带辅助核算项的凭证数据准备好后,随后就可以使用EAI数据交换接口将其导入U8并记账。
注:这里导出的凭证分录中就包含客户辅助核算项:<auxiliary_accounting><item name="dept_id">1</item><item name="cust_id">C007</item>…<auxiliary_accounting>4、调用U8EAI接口将凭证传递给U8并记账。
返回凭证号。
第二种情况的开发步骤:1、在U8EAI中配置客户档案编码映射。
•登录EAI:“开始”->“程序”->“用友ERP-U8”->“企业应用集成(EAI)”->“企业应用集成”;•左树“系统菜单”->“设置”-> “系统注册”,为U8的某个帐套注册一个数据交换编码,建立与外部系统的对应关系;•左树“系统菜单”->“数据交换”-> “数据映射”,为U8客户档案与业务系统客户档案设置编码映射关系:2、将业务系统结算凭证转换为U8记账凭证同第一种情况的第3步,主要目的是为了制作导入U8的凭证数据。
另外要注意凭证Xml数据的ufinterface节点的控制属性设置:<ufinterface proc="add" enewproofno="y" codeexchanged="y">根节点ufinterface的三个属性含义如下:proc="add" :表示操作类型,add表示新增。
renewproofno="y":表示凭证导入U8后是否重新编码,应该填y。
codeexchanged="y" :表示辅助核算项进行编码转换,应该填y。
凭证数据准备好后,就可以调用EAI接口导入了。
3、调用U8EAI接口将凭证传递给U8并记账,在此过程中自动进行客户档案编码转换。