首页 > SAP > ABAP > SAP与农业银行做银企直联(完善进行中)
2019
08-29

SAP与农业银行做银企直联(完善进行中)

由于一个项目上,需要在SAP与农银的银行前置机上进行连接,并从中取银行的交易记录,需求只是取交易记录(但最后发现其它可以做到所有与银行的接口操作)。

其实以前也都做个多个SAP与银行的银企业直联,包换工行,建行等多家银行的,但以前做的都是直接调用PI,然后PI,如何连接的银行前置机一直没关注,而这一次的项目上连接农业银行的前置机需要自己想办法,在网上找了几天的资料才发现农业银行的前置机,使用的连接协议是TCP/IP,的SOCKET,而不是以前理解的HTTP方式,但SAP的ABAP当前没办法使用SOCKET连接(据说可以使用JSOCKET,WSF方式连接,但测试了一下没成功)。所以需要在连接银行前置机前面现做一个WEB服务,提供线ABAP调用。

以下是我做的步骤,记录以下

所以设计如下,

银行前置机上提供如下服务:

一、安装农业银行前置机服务软件

测试时我使用的是银行提供的:中国农业银行银企通平台(4.6版).msi,此软件可以让农业银相关人员提供。

由于后期我使用TOMCAT虚拟一个目录连接到此软件的\detail目录,但发现TOMCAT目录设置成中文目录总是出错,修改TOMCAT编码也不行,

1.所以在此把农业银行前置机软件安装到自己的非中文目录   C:\abcBANK  中;

2.前置机软件安装好后在etc/loginset.xml里1改为

0

3.打开前置机软件,设置,并选择“ERP接入”

在系统设置里修改本地服务器地址127.0.0.1为219.142.79.145

交易端口15028

文件端口14029

ERp接口:15999

4.使用银行提供的,客户号(账号),操作员,密码进行登陆。

SAP与农业银行做银企直联(完善进行中) - 第1张  | 优通SAP

二、在此前置机上安用JDK1.7,TOMCAT,安装步骤参看

三、JAVA开发WEB Service,并部署WEB 服务。

由于SAP没找到办法通过SOCKET连接农业银行前置机,所在使用JAVA做了一个WEB 服务,与银行前置机放到同一机器上,ABAP调用此WEB服务,JAVA 的WEB 服务通过SOCKET连接农业银行前置机软件来得到数据。

1.JAVA开发连接农业银行的前置机的WEB服务

2.部署WEB 服务到TOMCAT.


abcAP.war
把此软件COPY到TOMCAT的WEBAPPS目录下,系统会自动完成发布,生成一个abcAP目录,此目录就是生成的服务了。

这时,打开:http://localhost:8080/abcAP/services/SendAndReceive_CQRA10?wsdl,测试自己的WEBSERVICE,应该能正常出现WSDL内容.

四、部署文件下载服务

由于我此次要做的是接口是查询交易明细的接口(CQRA10交易),而此接口提供的查询结果是返回的一个文件,农行的文件放到了前置机的\detail目录下(可参看农行提供的文档),所以需要在TOMCAT中配置一个虚拟目录,当ABAP调用此接口后,得到文件名,再从此虚拟目录读取文件内容。,

写字板打开TOMCAT目录下的\conf\server.xml文件,在前面加入:

这里表示虚拟了目录abcBANK,到指定目录C:\abcBANK\detail.

修改完成后重启TOMCAT,后,IE中打开,http://locathost:8080/abcBANK/****,就能打开C:\abcBANK\detail目录下的文件了。

八、ABAP代码实现,更多细节

1.创建维护表,用于保存需要从银行读取数据的银行卡号。

2.创建程序,读取步骤1中的银行卡号,

3.对每一个银行卡号调用函数ZFM_**从WEB服务中读取数

最后编辑:
作者:yangsen
有需要可在文章留言或者邮件yan252@163.com给我。

留下一个回复

你的email不会被公开。

6 + 8 =