用友U8产品技术介绍_第1页
用友U8产品技术介绍_第2页
用友U8产品技术介绍_第3页
用友U8产品技术介绍_第4页
用友U8产品技术介绍_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、用友U8产品技术介绍EAI目录产品简介产品结构产品特性应用领域EAI接口配置基础设置外部系统注册目录(续)EAI数据交换导入导出设置数据映射数据导入数据导出EAI数据交换计划数据交换计划设置数据交换计划执行目录(续)EAI二次开发接口规范接口调用通用SQL查询EAI日志业务日志调试日志常见问题与解决U8EAI产品简介产品结构U8EAI产品结构EAI导入导出工具手动导入导出工具XML导入导出EXCEL导入导出其他格式导入导出导入导出设置条件过滤规则增量规则导入导出目标地址定时计划导入导出任务计划规划设计器任务计划执行引擎U8ERP数据交换业务接口基本档案接口财务接口供应链接口生产制造接口其它接口

2、EAI数据交换框架EAI数据交换代理服务-EAI Broker(支持多种协议)EAI数据交换目录EAI数据交换元数据数据映射规则EAI日志适配器框架专用适配器EXCELEDI通用适配器(XML)格式和数据适配规则EAI数据交换管理器外部系统管理数据映射管理适配器管理EAI日志管理解决方案管理产品特性应用特性内容完整:涵盖了U8ERP的大部分基本档案和业务单据(含凭证),是U8ERP目前最完整、规范的对外接口。功能丰富:支持手动、自动、远程和本地接口等多种数据交换方式;支持数据映射、增量、过滤条件等多种数据交换规则。接口统一:对外提供了一个统一的服务代理接口,由此接口负责所有数据交换请求(调用)

3、的分发处理,使外部系统对U8的接口依赖减小到最少,降低的系统耦合性。技术特性XML数据交换格式: XML提供了跨平台和低耦合特性,支持COM、.NET、JAVA三种平台。Request/Response数据交换模式:数据交换的交互模式采用Request/Response方式,并通过标准的Request和Response消息来承载交互数据信息。支持本地和HTTP远程调用:本地调用采用COM方式;远程调用采用XMLHTTP POST的方式。应用领域企业内部第三方业务系统与U8的整合财务整合:凭证上传典型案例:U8网络分销系统通过U8EAI接口向U8财务系统上传结算凭证。业务整合:单据协同典型案例:

4、U8连锁零售系统通过U8EAI接口与U8销售和库存系统进行业务协同。包括:零售部门下载公司U8系统中的商品、客户档案、库存信息等;往U8系统上传每日结算的零售日报;库存不够了往U8发调拨申请单进行要货调拨等等业务。企业之间的B2B业务协作供应链协同典型案例:供应商远程接收订单。伙伴客户的采购系统通过供应商U8EAI远程接口往供应商U8销售系统提交订单。U8EAI接口配置U8EAI接口配置包括两项内容:EAI基本设置、外部系统注册。基本设置目的:指定EAI默认登录信息,包括指定U8应用服务器名或IP、EAI登录身份验证、EAI数据源。如果进行数据交换的数据包比较大,则需要点“自动设置IIS”更改

5、IIS的最大数据上传或下载限制。外部系统注册目的:为了建立外部系统与U8业务帐套之间的数据交换关系。在数据交换中,需要明确指定外部系统与U8某个业务账套的对应关系,该对应关系由一个唯一的注册码标识。数据交换时需要在请求消息的头部指定一个注册码: ,表示请求方需要与该注册码对应的U8业务帐套进行数据交换。U8EAI接口配置基本设置“开始”-“程序”-“用友ERP-U8V10.0”-“企业应用集成(EAI)”-“EAI接口设置”U8EAI接口配置外部系统注册在“EAI接口设置”中切换到外部系统注册页签进行外部系统注册。可以注册多个外部系统注册码。U8EAI接口配置外部系统注册在进行外部系统注册时,

6、还可以同时指定U8业务帐套的连接身份,默认“使用EAI的连接身份”。U8EAI数据交换导入导出设置在数据交换之前,用户可设置每个具体项目的导入或导出文件的存放路径及导出数据的过滤条件,在以后的数据交换时系统按照预设的条件进行操作。U8EAI数据交换数据映射在进行数据交换时,外部系统与内部系统的基础档案可能存在不一致的情况,这时需要建立外部数据、内部数据之间的对应关系。U8EAI数据交换数据导入数据导入功能:将档案或单据数据(可批量)导入到外部系统注册码对应的U8业务帐套中,同时支持多种导入文件格式,如常见的XML和Excel格式。U8EAI数据交换数据导出数据导出功能:根据所选外部系统注册码,

7、导出对应U8业务帐套中保存的一个或多个档案或单据项目的全部或部分数据。U8EAI数据交换计划应用场景实现在无人值守的情况下,U8EAI能按预先设置的计划自动的进行数据交换。典型应用场景:多个U8业务帐套之间的档案或单据数据同步。操作步骤首先进行数据交换计划的参数设置。一个注册编码可以设置一个定时计划,一个定时计划中可以设置多个自动导入导出项目的执行规则,包括:执行频率、执行期间和是否按照数据映射关系执行。然后执行数据交换计划。单击【数据交换计划执行】菜单,当到达预置的计划时间,U8EAI就会自动执行已定义的数据交换任务。U8EAI数据交换计划数据交换计划设置指定数据交换执行的时间和频率,并设置

8、导入导出的条件和路径以及是否按照数据映射关系执行。U8EAI数据交换计划数据交换计划执行单击【数据交换计划执行】菜单,在windows的状态栏中显示一小图标 ,即【用友U8EAI计划监控程序】。U8EAI二次开发U8应用服务器外部系统二次开发工作EAI 数据交换COM接口IIS调用EAI接口数据转换或处理本地调用远程调用U8EAI接口规范接口定义本地COM接口类库:U8Distribute.DLLProgID:U8Distribute.iDistribute方法:String Process(String RequestXml)参数:数据交换请求消息,详见数据交换格式定义。返回:数据交换响应消

9、息,详见数据交换格式定义。远程HTTP接口EAI远程数据交换采用Http POST的方式。访问网址: http:/U8应用服务器IP或机器名/U8EAI/import.aspPOST上传:数据交换请求消息与本地调用一样。 Response接收:数据交换响应消息与本地调用一样。 U8EAI接口规范数据交换格式总体格式EAI数据交换消息格式分为框架和内容两部分: 框架部分 内容部分 框架部分包含数据交换的控制信息,其中:sender: 发送方,填外部系统注册码receiver: 接收方,填u8即可roottag: 档案或单据,填档案或单据的唯一标识proc:操作类型,分为“增删改查”,对应填add

10、/delete/edit/querydynamicdate: 业务账套登录日期,如果不填,则取U8应用服务器所在操作系统的当前日期U8EAI接口规范数据交换格式总体格式内容部分:指数据请求或响应消息中携带的档案或单据等业务数据,如:U8EAI提供了一整套完整的基本档案和单据的数据交换模版(在EAIXMLTemplate目录下),模板中定义了消息内容部分的格式和字段。10综合处1管理兼技术U8EAI接口规范数据交换格式Request-请求消息格式对于add/edit操作,Request消息的内容就是档案和单据内容,举例如下,具体格式请详见EAI提供的数据模板。0011基建投资部22011-01-

11、26部常见问题与解决数据交换格式条件过滤对于delete/query操作, Request消息的内容包含过滤条件。查询单条数据的时候往往需要带上条件,可以采用U8EAI通用SQL查询,也可以采用U8EAI标准的条件查询格式,如:注意:field节点中的name过滤字段名需和数据库中字段名一致。 U8EAI接口规范数据交换格式Response-响应消息格式Response消息是EAI接口执行Request消息之后的返回结果,不同的操作有所不同:对于query操作, 返回的结果就是查询的数据,格式详见EAI数据模板。对于add/edit/delete操作,返回的结果包括单据体每一行数据的详细执行结

12、果(由Item节点描述),如下:U8EAI接口规范数据交换格式Response-响应消息格式凭证的add操作的Response格式比较特殊,如下:返回字段含义如下:accounting_period:会计期间,0为期初往来明细帐,21为期初待核银行帐,20为银行帐科目调整前余额,1-12为凭证及明细帐;voucher_type:凭证类别字;voucher_id:外部系统原始凭证号(期初时可为空);u8voucher_id:U8生成的凭证号;u8accounting_period :U8凭证会计期间succeed:是否成功,0为成功,非零为失败。U8EAI接口调用本地COM调用VB代码: Dim

13、 eaiBroker As Object Set eaiBroker = CreateObject(“U8Distribute.iDistribute”) 创建EAI服务代理接口对象 Dim responseXml As String responseXml = eaiBroker.Process(requestXml) 调用EAI服务代理的数据交换方法Process,传入 Request交换消息, 并获取EAI返回的Response消息。 . 处理返回结果 Set eaiBroker = Nothing 释放EAI服务代理接口对象.NET代码: /引用U8SOFTEAIU8Distribut

14、e.dll U8Distribute.iDistributeClass eaiBroker = new U8Distribute.iDistributeClass(); /创建EAI服务代理接口对象 String responseXml = eaiBroker.Process(requestXml); /调用EAI服务代理的数据交换方法Process,传入 / Request交换消息, 并获取EAI返回的Response消息。 /处理返回结果 System.Runtime.InteropServices.Marshal.FinalReleaseComObject(eaiBroker); /释放

15、EAI服务代理接口对象U8EAI接口调用本地COM调用JAVA代码: 采用JNI、JCOM、JACOB技术调用EAI服务代理COM组件,下面以JACOB为例: import .Dispatch; import .Variant; class Test public static void main(String args) /创建EAI服务代理接口对象 Dispatch eaiBroker = new Dispatch(U8Distribute.iDistribute); /调用EAI服务代理的数据交换方法Process,传入Request交换消息, 并获取EAI /返回的Response消息

16、。 String responseXml = Dispatch.call(eaiBroker, Process, new Variant(requestXml); /处理返回结果 U8EAI接口调用Http远程调用VB代码: Dim xmlhttp As Object Set xmlhttp = CreateObject(“MSXML2.XMLHTTP”) 创建XMLHTTP对象 Call xmlhttp.open(“POST”, “http:/u8appsrv/u8eai/import.asp”, False) 使用XMLHTTP对象打开网络连接 xmlhttp.send requestXm

17、l 发送Request消息 Dim responseXml As String responseXml = xmlhttp.responseText 获取返回Response消息. 处理返回结果.NET代码: /引用U8SOFTInteropInterop.MSXML2.dll MSXML2.XMLHTTPClass xmlHttp = new MSXML2.XMLHTTPClass(); /创建XMLHTTP对象 xmlHttp.open(“POST”, “http:/u8appsrv/u8eai/import.asp”, false, null, null);/打开网络连接 xmlHttp

18、.send(dom.OuterXml);/发送Request消息 String responseXml = xmlHttp.responseText;/获取返回Response消息 /处理返回结果 System.Runtime.InteropServices.Marshal.FinalReleaseComObject(xmlHttp); /COM释放注意: URL: http:/u8appsrv/u8eai/import.asp 中的u8appsrv应填U8应用服务器IP或机器名。U8EAI接口调用Http远程调用JAVA代码: class Test public static void ma

19、in(String args) URL url = new URL(“http:/u8appsrv/u8eai/import.asp”); HttpURLConnection con = (HttpURLConnection)url.openConnection(); con.setConnectTimeout(3000000); con.setReadTimeout(3000000); con.setDoInput(true); con.setDoOutput(true); con.setAllowUserInteraction(false); con.setUseCaches(false)

20、; con.setRequestMethod(POST); con.setRequestProperty(Content-type,application/x-www-form-urlencoded); /发送Request消息 OutputStream out = con.getOutputStream(); DataOutputStream dos = new DataOutputStream(this.out); dos.write(requestXml.getBytes(UTF-8); /获取Response消息 InputStream in = con.getInputStream(

21、); BufferedReader br = new BufferedReader(new InputStreamReader(in); StringBuilder sb = new StringBuilder(); String s = null; while (s = br.readLine() != null) sb.append(s); String responseXml = sb.toString(); U8EAI接口调用U8EAI接口调用调用U8API接口请求XML格式其中,proc填入操作类型,添加:add;编辑:edit;删除:delete;查询:query;审核:verif

22、y;弃审:unverify。 U8EAI接口调用调用U8API接口返回XML格式以上为查询返回XML格式,新增成功后,还会返回新增单据或档案的ID。U8EAI接口调用调用U8API接口返回错误信息按传入顺序返回批量操作的执行结果,调用一次API的过程中若出现错误,不影响其他调用的执行。通用SQL查询接口由于EAI接口返回的数据格式是固定的标准格式,很有可能返回的数据中没有用户所需要的字段;另外,对于U8中的业务数据,EAI接口也不是100%覆盖的。针对以上情况,EAI提供了一个灵活的数据查询通用接口-EAI通用SQL查询接口,该接口支持向EAI数据交换代理传递SQL语句进行查询操作,可以查询当

23、前U8帐套的所有数据,用户不用直接访问U8帐套库。查询返回的结果为.NET中的Dataset的XML格式的数据。调用该接口只需给EAI数据交换服务代理传递特殊的Request消息即可。通用SQL查询接口 通用SQL查询接口Response消息格式其中,根节点的proc的值用来标识Dataset的行节点,一般为表名。 1true采购1部2true销售1部U8EAI日志U8EAI业务日志日志设置“开始程序用友ERP-U8V10.0企业应用集成(EAI) U8EAI接口设置”进入配置界面,切换到第三个页签“日志设置”,可以启用和关闭日志,并可以配置日志清除策略。默认的日志清除策略是:日志清除周期为1

24、周。用户可以根据实际数据交换业务量的情况修改此策略。U8EAI业务日志日志查看查看功能路径从企业门户功能菜单或直接登录“企业应用集成”,可以打开日志查看界面,查看业务日志项和日志内容。具体功能菜单为:企业应用集成数据交换日志查看数据交换日志。U8EAI业务日志日志查看查看界面日志查看界面总体分为左树日志分类目录和右边的日志项列表。日志的分类体系采用U8的产品模块结构进行多级分类,末级为数据交换业务数据(档案和单据);可以区分不同外部系统与U8进行数据交换的日志。U8EAI业务日志日志查看日志内容每进行一次数据交换会产生一条日志项。日志的主要内容包括:数据交换时间、数据(单据或档案)类型、操作类

25、型(增删改)、数据交换状态(成功/失败)、最后执行任务信息。U8EAI业务日志日志查看日志详细信息双击日志项可以查看日志详细信息。对于导入操作,日志详细信息显示如下界面:对于导出操作,日志详细信息显示如下界面:U8EAI调试日志日志启用EAI调试日志的启用可以通过手动修改配置文件来设置,调试日志配置文件的路径为:%U8SOFT%EAI ConfigLogConfig.ini。日志文件中有三行内容:重要提示:修改日志开关后需要重启IIS。 U8EAI调试日志日志查看EAI调试日志以文件的方式存储,日志文件系统根目录为:%U8SOFT%EAILogs,在此目录下,EAI会按“外部系统注册码单据类型

26、日志项”的层次结构对日志进行分类存储:每一次数据交换会生成一个调试日志项目录,日志项目录名包含日期时间后缀,目录中包含三个文件:Request.xml:记录数据交换的请求消息;Response.xml:记录数据交换的响应消息(即返回结果);EaiDistributeLog.txt:记录数据交换详细执行过程和步骤。常见问题与解决常见问题与解决通用SQL查询问题U8EAI返回错误:调用业务组件UFIDA.U8.IEAISqlExecutor.SQLExecutor发生异常,原因:执行查询出错:无法打开登录UFDATA_001_2010中请求的数据库。登录失败。(错误号:-2146233088)调用业务组件UFIDA.U8.IEAISqlExecutor.SQLExecutor发生异常,原因:创建只读用户出错: No error message available, result code: DB_E_ERRORSOCCURRED(0 x80040E21).(错误号:-2146233088)问题原因:创建数据库用户“reader”或通过“reader”用户查询帐套数据库无权限。解决:手动在SQL SERVER中创建登录用户“reade

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论