U811.1接口EAI系列之一-通用访问EAI方法--统一调用EAI公共方法--VB语言
1.现在做的项目是关于业务系统与U811.1的接口项目。
2.那么就需要调整通过EAI调用生成U8业务单据。
3.下面就一个通用的向U8-EAI传递XML的通用方法
4.肯定有人会问怎么还用VB调用呢?为什么不用C#等? 这是因为现在客户的老系统用的是VB6.0开发的,所以要结合老系统开发新业务再与U8业务一起动作。
5.还有朋友会有疑问全用U8不就行了,U8是标准产品又不是“神”,在企业管理上不是所有的U8业务流程都是最好的、最优的、最先进的。所以有些业务必须要客开。并用U8二开还是会被限制的。
6.下面的代码是我们在实际项目中用到的,是经过测试的。如下步骤:
第一步:需要配置一下U8服务器上的EAI接口配置环境:

1.u8服务器:是安装u8那台服务器的名或IP。
2.用户名和密码、还有EAI的数据库源帐套。

1.增加一个外部系统注册码。这个系统编码在业务系统中调用EAI时会用到。
2.这个选择的数据源要与EAI基本设置的数据源一致。也就是U8账套选择的是一个账套。

注:要确保安装的服务器上有EAI服务。因为没有这个服务的话是传不上去的。会利用U8EAI的import.asp这个服务。
第二步:直接把一面的代码放到项目当中
ls_http:参数是上面U8配置的。规则:http://u8服务器名/IIS服务的访问名/import.asp
'向EAI传递的Xml数据///////////////////////////////////////////////////////////////////////
Public Function SendToEAI(ls_xml As String, ByRef as_dsc As String) As Boolean
Dim obj As Object
Dim strRet As String ' //EAI返回的Xml数据
Dim domAll As New DOMDocument
Dim strTemp As String
Dim ls_http As String
ls_http = "http://u8/u8eai/import.asp"
SendToEAI = True Dim xmlhttp As Object
Set xmlhttp = CreateObject("MSXML2.XMLHTTP") '创建XMLHTTP对象
Call xmlhttp.Open("POST", ls_http, False) '使用XMLHTTP对象打开 网络连接,URL中的u8appsrv填U8应用服务器
Dim requestXml As String
requestXml = ls_xml 'domAll.xml
xmlhttp.send (requestXml) '发送Request消息
Dim responseXml As String
responseXml = xmlhttp.responseText '获取返回Response消息
domAll.loadXML responseXml
Dim ls_temp As String
Dim ls_succeed As String '成功失败标识
Dim ls_dsc As String '出错时描述 ls_succeed = Trim(domAll.selectSingleNode("ufinterface").childNodes().Attributes.getNamedItem("succeed").Text)
If ls_succeed = "" Then '成功
ls_temp = Trim(domAll.selectSingleNode("ufinterface").Attributes.getNamedItem("request-roottag").Text)
If ls_temp = "voucher" Then '凭证获取凭证号
as_dsc = Trim(domAll.selectSingleNode("ufinterface").childNodes().Attributes.getNamedItem("u8voucher_id").Text)
Else '其它获取U8 KEY
as_dsc = Trim(domAll.selectSingleNode("ufinterface").childNodes().Attributes.getNamedItem("key").Text)
End If
Else '失败
SendToEAI = False
as_dsc = Trim(domAll.selectSingleNode("ufinterface").childNodes().Attributes.getNamedItem("dsc").Text) '出错时错误信息
End If
Set xmlhttp = Nothing '释放资源
End Function
其它关于具体如何调用EAI接口请看各个业务单据具体实现。
作者:王春天 2013-10-28
地址:http://www.cnblogs.com/spring_wang/p/3393147.html
U811.1接口EAI系列之一-通用访问EAI方法--统一调用EAI公共方法--VB语言的更多相关文章
- U811.1接口EAI系列之一--通用把XML传送给EAI处理方法--PowerBuilder语言
1.前面配置参考:http://www.cnblogs.com/spring_wang/p/3393147.html 2.pb通用调EAI方法代码如下: //===================== ...
- C#找出接口的所有实现类并遍历执行这些类的公共方法
//这里找出了实现IOutputArray接口的所有类 private void FindAllClass() { var types = AppDomain.CurrentDomain.GetAss ...
- U811.1接口EAI系列之二-BOM构成-委外BOM构成--VB语言
1.下面代码实现了VB6.0中调用U8EAI-BOM构成服务,以下代码均为项目实际代码,可直接复制应用. 2.在u811.1版本中委外BOM构成与正常的BOM构成是同系列表,不单独存储. 3.是以存货 ...
- RobotFrameWork接口项目分层及通用控制方式
1. 前言 上一篇文章介绍了在设计接口用例之前应遵守的设计规范,详见<RobotFramework接口设计规范>,当然读者公司的内部规范也不一定非得完全遵循笔者所提到的,适合自己公司内部的 ...
- 通用访问 - 用“反射”来设计通用的通信协议,以及配套的SDK、工具
1. 效果演示 2. 通信协议 功能介绍 特点 TCP协议 WebApi协议 3. SDK与工具 4. 应用示例 迷你网管 通用GIS 系统管理 5. 设计初衷与演化 1. 效果演示 服务 ...
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(2)-数据库访问层的设计Demo
原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(2)-数据库访问层的设计Demo ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1)框架搭建 前言:这 ...
- BLE 5协议栈-通用访问规范层(GAP)
文章转载自:http://www.sunyouqun.com/2017/04/ 通用访问规范GAP(Generic Access Profile)是BLE设备内部功能对外的接口层,它规定了三个方面:G ...
- 【转】24Cxx 系列EEPROM通用程序及应用
关于I2C 学习的时候介绍得最多的就是24C02 这里存储EEPROM了,但学的时候基本只是讲讲简单的I2C 的总线数据传输而已,即使先gooogle上搜索也绝大部分这这样的文章,很少有说到如何在实际 ...
- .Net程序员学用Oracle系列(16):访问数据库(ODP.NET)
1..Net for Oracle 常见数据库驱动 1.1.微软提供的驱动 1.2.甲骨文提供的驱动 1.3.其它厂商提供的驱动 2.ODP.NET 常见问题分析 2.1.参数化问题 2.2.方法调用 ...
随机推荐
- Go语言类型转换库【github.com/demdxx/gocast】的用法
一.导入库: go get github.com/demdxx/gocast 二.测试代码: // main.go package main import ( "fmt" &quo ...
- TCP三次握手详解
当两台主机采用 TCP 协议进行通信时,在交换数据前将建立连接.通信完成后,将关闭会话并终止连接.连接和会话机制保障了TCP 的可靠性功能. 请参见图中建立并终止 TCP 连接的步骤. 主机将跟踪会话 ...
- Customize Web Sessions List
To customize Fiddler's Web Sessions List, add rules using FiddlerScript to the OnBeforeRequest funct ...
- PPT里面的背景音乐找不到?
ppt,找不到播放器,却有音乐播放!如何实现? 原来是在幻灯片切换处的音效添加的音乐~ 文章来源:刘俊涛的博客 欢迎关注,有问题一起学习欢迎留言.评论
- 【leetcode】solution in java——Easy3
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6412505.html 心得:看到一道题,优先往栈,队列,map,list这些工具的使用上面想.不要来去都是暴搜 ...
- VIM设置代码折叠
今天看了一下别人写的程序的源代码,发现是用vim写的,代码中有趣是用vim来折叠代码,一开始我以为是用插件的,后来上网查了查,得出以下使用方面的技巧. 1. 折叠方式 可用选项来设定折叠方式: 可在V ...
- HTML注释标签
CreateTime--2016年11月4日08:46:25Author:Marydon参考链接--http://www.cnblogs.com/KeepMovingblog/archive/20 ...
- Echarts柱状图的点击事件
最近在做一些图表统计的功能,用到了百度的开源图表软件Echatrs,不得不提的是:不但上手简单而且扩展功能也是十分强大.在使用的过程中也遇到了不少问题,可能由于有关Echatrs的资料并不是很齐全,所 ...
- 早前阅读live555源码做的笔记
早前阅读live555源码的时候做了一些简单的笔记.现在看来那个时候对C++的理解还是不够,还有很多不足.当时对很多名词也不是很熟悉,对一些类的描述也很生硬,所以笔记中有一些不通畅之处. 阅读live ...
- 读书笔记——spring cloud 中 HystrixCommand的四种执行方式简述
读了<Spring Cloud 微服务实战>第151-154页, 总结如下: Hystrix存在两种Command,一种是HystrixCommand,另一种是HystrixObserva ...