资源描述
G6财务管理系统医院专版能够经过集成应用GAI实现和HIS系统衔接
1、 松耦合衔接(导入导出)
集成应用GAI提供了标准导入模板(xml格式),HIS系统业务数据经过财务核实口径处理(对照)后,经过GAI导入到财务系统中,批量生成会计凭证。
2、 紧耦合衔接(系统级)
集成应用GAI也提供了第三方标准数据接口,HIS系统能够调用GAI数据接口,依据核实业务口径组织XML文件或数据串,GAI取到数据后自动生成会计凭证。
HIS厂商调用接口具体方法以下:
企业应用集成工具(EAI)二次开发
1. 1. 概述
U6企业应用集成工具(EAI)是U6和外部系统数据接口,EAI提供了部分组件,能够在这些组件基础上进行二次开发(以下简称“EAI二次开发”),实现和外部系统集成。
不一样系统集成关键是遵照共同数据标准,U6依据自己系统提出了一套数据标准,包含多种单据和基础档案,外部系统假如要和U6集成则必需遵照这一标准。这套标准用XML描述,所以数据流全部为XML格式。
EAI二次开发可分为两种模式:
注意:文中全部编程全部以VB为例
一、直接利用EAI管理工具。在开始菜单中选择企业应用集成工具,登录企业应用集成主界面。在这里能够将U6数据以标准XML文件形式导出U6数据库或将标准XML数据文件导入U6系统。二次开发程序员只需编写一个工具将标准XML数据文件进行合适转换写入外部系统或取出外部系统数据写成标准XML数据文件。(参看EAI安装目录\xml\Samples\下例子)
数据步骤以下:
EAI工具导出数据
Xml文件
数据写入外部系统
U6
Xml文件
从外部系统读出数据
EAI工具写入数据
外部系统
EAI工具完成
EAI二次开发工作
这种开发模式比较简单,优点是:充足利用EAI工具提供功效,编程简单;缺点是:只能提供批量导入导出功效。
二、利用EAI提供组件,进行灵活二次开发。
包含两种方法:当地COM方法、Internet方法。
1)当地COM方法:
U6
数据处理
外部系统
EAI组件
调用接口
二次开发出软件
二次开发工作
这种方法可依据开发者需要批量处理或实时处理。
接口调用很简单,简化了编程。开发者只需将标准数据传入接口,以下:
Set Obj=CreateObject(U8Distribute.iDistribute)
Str = obj. Process(sXml)
sXml为标准数据串,具体格式后面会说明。
2)Internet方法:
U6
外部系统
IIS服务器
二次开发模块
SOAP
协议
二次开发工作
http.Open "Post",http_name & “import.asp", True //指定服务器ASP
http.send dom.xml //把xml数据发送到服务器端
strRet= http.responseText //strRet :返回xml格式回执信息
2. 2. 数据格式标准
EAI能够导入导出数据范围包含:
Ø总帐
§凭证
§银行对账单
Ø工资管理
§人员档案
§工资项目数据
Ø固定资产
§固定资产卡片
Ø成本管理
§材料消耗数据
Ø资金管理
§资金内部结算单
Ø应收管理
§应收单
§收款单
Ø应付管理
§应付单
§付款单
Ø采购管理
§采购订单
§采购到货单
§采购发票
Ø销售管理
§销售订单
§发货单
§销售发票
§销售发票_导入到内部结算单
Ø库存管理
§入库单
§出库单
§库存量
Ø基础档案
§部门档案 §职员档案 §地域分类 §用户分类
§用户档案 §供给商分类 §供给商档案 §存货分类
§存货档案 §结算方法 §付款条件 §开户银行
§仓库档案 §收发类别 §销售类型 §计量单位
§计量单位组 §产品结构 §采购类型 §成套件
§费用项目 §发运方法 §货位档案 §自定义项档案
§项目 §会计科目 §外币 §凭证类别
§常见摘要
提醒:EAI安装目录\xml\Operation\dir.xml保留了相关定义
下面一个例子是从U6导出部门档案片断:
<?xml version="1.0" encoding="gb2312" ?>
<ufinterface sender="001" receiver="U6" 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再有若干个子元素组成,不一样应用子元素有不一样格式。
注意:XML是对大小写敏感,在EAI标准中全部元素名全部为小写字母。
注意:EAI标准数据中有些元素能够为空元素,有些则不得为空,依据具体业务不一样而不一样。但所要求元素一个也不能多,一个也不能少。
Ufinterface元素定义以下:
<ufinterface roottag=’’ billtype=’’ docid=’’ receiver=’’ sender=’’ proc=’’ codeexchanged=’’ exportneedexch=’’ display=‘’ family=‘’/>
roottag:类型;
billtype:系统用;
docid:唯一编号;
receiver:接收方(系统用);
sender:注册外部系统号;
proc:操作码:Add,Edit,Delete,Query
codeexchanged:外部系统导入时是否转换 :
y:需要经过对照表;n:不需要经过对照表
exportneedexch:导出时是否需要转换:
y:需要经过对照表;n:不需要经过对照表
display:单据汉字名;
family:单据汉字大类名。
全部xml标准头文件格式全部是一样,经过roottag区分单据类型,proc区分操作类型。
l l 从U6导出数据格式
操作码为Query,可加入导出条件。格式例子(以导出收款单为例):
<?xml version='1.0' encoding='gb2312'?>
<ufinterface sender="001" receiver="U6" roottag="department" docid=".533424" proc="Query" codeexchanged="n" exportneedexch="n" display="部门档案" family="基础档案">
<department name="部门档案" importfile="" exportfile="" code="001">
<field display="部门编码" name="cDepCode" operation="=" value="办公室" logic=""/>
</department>
</ufinterface>
元素department表示为部门档案:
属性name:单据名称;
属性importfile:保留是导入文件路径;
属性exportfile:保留是导出文件路径;
属性code:外部系统注册号。
元素Field表示每个条件:
属性display:汉字含义;
属性name:字段名;
属性operation:是比较运算符;
属性value:比较值;
属性logic:是连接逻辑运算符。and:而且;or:或。
每次导出一个单据,这里为部门档案,假如需要导出收款单则需要再一次导出。条件Field能够有多条。这个调用返回XML回执为U6标准数据。
注意:并不是导出数据会自动保留到Importfile exportfile指定路径,这两个参数是EAI工具保留数据使用。
提醒:EAI安装目录\xml\Operation\Condition.xml 保留了EAI条件,能够经过EAI管理界面设定条件,改变保留在Condition.xml中。
l l 导入数据到U6中时操作码为Add
可将数据填到Ufinterface元素中作为子元素。
形式为:
<?xml version='1.0' encoding='gb2312'?>
<ufinterface sender="" receiver="" roottag="" docid="" proc="Add" codeexchanged="" exportneedexch="" display="" family="">
<table_name>
<a1>
<a2>
……
</table_name>
<table_name>
<a1>
<a2>
……
</table_name>
……
</ufinterface>
元素table_name代表一张单据,元素a1、a2…等为单据中元素。元素ufinterface则包含若干个table_name元素。
注意:sender属性值必需为EAI系统注册过注册号一致,因为EAI系统依据这个注册号和具体账套相连接;Receiver为”U6”; docid取随机数;family、roottag、display能够参考EAI安装目录\xml\Operation\dir.xml,总帐,基础档案等为family,它们下级元素汉字名为display,其属性name 为roottag。可将dir.xml和数据文件例子参考,方便了解其意义。
l l 调用接口返回XML回执
从U6导出数据成功回执就是数据。
其它情况回执为:
<?xml version='1.0' encoding='gb2312'?>
<ufinterface roottag='return' docid='' proc=''>
<item key='' succeed='' dsc='' u8key=''></item>
</ufinterface>
描述:
key:为一条统计关键字;
succeed:成功标识:0:成功;非0:失败;
dsc:失败描述;
docid:消息号;
proc:操作码;
u8key:成功后U6系统对应关键字
凭证返回格式以下:
<?xml version='1.0' encoding='gb2312'?>
<ufinterface roottag='voucheraddreturn' docid='' proc=''>
<item acc_period='' voucher_type='' voucher_id='001' row_id='' succeed='' dsc='' u8vouch_id ='' u8acc_period=''></item>
<!--succeed 0 or 非0-->
</ufinterface>
描述:
acc_period:会计期间,0为期初往来明细帐,21为期初待核银行帐,20为银行帐科目调整前余额,1-12为凭证及明细帐
vouch_type:凭证类别字
vouch_id:凭证号(由系统分配凭证号,期初时可为空)
row_id:行号(由系统赋值,期初时为1)
u8vouch_id:U6凭证号
u8acc_period:U6凭证会计期间
3. 3. 二次开发程序接口
l l COM接口调用(当地方法)
EAI提供一个统一标准接口,参数是定义好标准xml格式,只要符合标准格式,即能够很轻松和EAI挂接。
引用U8Distribute.Dll方法以下(VB):
Dim obj as Object
Dim Str as string //返回Xml数据
Set Obj=CreateObject(U8Distribute.iDistribute)
Str=Obj.Login(sxml) //测试数据库连接是否正常
Str=obj. Process(sXml) //sXml为传入Xml数据 sXml为String型。
能够依据str回执进行对应操作。
全部操作只需调用这个接口能够完成。
注意:当地方法接口调用之前必需利用EAI工具提供默认操作员界面设置U6服务器、用户、密码和登录日期,以经过U6权限认证。
l l Internet方法(SOAP协议)
开发者能够用SOAP协议向装有U6-EAIIIS服务器发送XML数据,类似当地调用分析返回XML回执。
Dim dom As New DOMDocument
Dim http As New XMLHTTP
Dim strRet as string
dom.loadXML "<?xml version='1.0' encoding='gb2312'?><login/>"
With dom.documentElement
.setAttribute "uid", 用户名
.setAttribute "pwd", 密码
.setAttribute "date", 登录日期
.setAttribute "sender", 注册号
End With
'url = 服务器名 + "login.asp"
http.Open "post", url, True
http.send dom.xml
If not Dom.load(“c:\voucher.xml”) then msgbox “xml error” // c:\voucher.xml是一个例子
http.Open "Post", http_name & “import.asp", True //指定服务器ASP
http.send dom.xml //把xml数据发送大服务器端
strRet= http.responseText //strRet :返回xml格式回执信息
4.U6-EAI标准数据模版
提醒:EAI安装目录\xml\Template\下为全部EAI2.0标准模版文件。
凭证 Voucher.xml
对账单 BankAccount.xml
工资人员档案 SalaryPerson.xml
工资项目数据 SalaryItem.xml
固定资产卡片 CapitalAsserts.xml
成本材料及外购半成品耗用表 material.xml
资金内部结算单 InternalBalance.xml
应收应付单 OughtReceivePay.Xml
收付款单 AcceptPay.xml
采购订单 PurchaseOrder.Xml
采购到货单 ArrivedGoods.xml
采购发票 PurchaseInvoice.Xml
销售订单 SaleOrder.Xml
销售发货单 Consignment.Xml
销售发票 SaleInvoice.Xml
库存出入库单 StoreInOut.Xml
用户档案 Customer.xml
用户分类 Customerclass.xml
供给商档案 vendor
供给商分类 vendercalss.xml
存货 inventory.xml
存货分类 inventorycalss.xml
部门 department.xml
人员 person.xml
科目目录 code.xml
凭证分类 dsign.xml
币种 currency.xml
汇率 currencyrate.xml
结算方法 balancetype.xml
项目 item.xml
开户银行 bank.xml
地域分类 districtclass.xml
销售费用项目 expenseitem.xml
付款条件 paycondiction.xml
收发类别 receivesendtype.xml
发运方法 shippingchoice.xml
仓库档案 warehouse.xml
销售类型 saletype.xml
提醒:EAI安装目录\Xml\RsXml\下描述了xml标准和数据库字段对应关系。
展开阅读全文