SAP EPIC 银企直连大部分银行用的是Http 接口,可以直接在SM59中创建 到外部服务器的HTTP连接即可与银行前置机通信,快速进行银企直连接口开发。
少部分银行用的是Socket (农业银行,南京银行等),这时有2种方式:
- JAVA 把Socket 封装成Http,然后ABAP调用;
- ABAP直接调用Socket;
可根据项目实际情况灵活选择。一般情况建议采用SAP标准的EPIC 银企直连解决方案,稳定可靠,开发工作量少,大大降低实施成本。
1.3.1关于通讯方式
ERP与ICT之间的交易数据包都采用TCP/IP协议的Socket同步短连接方式。
Socket 方式中报文结构为“包头+数据包”。包头固定为7个字节长,第1字节为是否加密标志(0-不加密,1-加密)。后6个字节是数据包的长度,即将报文长度直接转为字符串存储,长度不足6位则右边用空格补足,比如:“1234 ”。比如汇兑的长度为1234字节的数据包,其包头为“01234 ”共7位,其中数据包长度包含加密包标志位。由于加密需要双方约定专门的加密算法,因此一般ERP送的加密标志都为0-不加密。
WebSocket Communication with ABAP Push Channel using Text Messages
Open WebSocket
Send message to APC
Close WebSocket
If the form field amc of the URL contains "x", an opened WebSocket receives text messages from the ABAP Messaging Channel DEMO_AMC.
Such messages are then sent in the APC handler class but can also be sent by program DEMO_SEND_AMC.
The program DEMO_RECEIVE_AMC can receive text messages sent by the APC handler class.
If you send the message get handle, you will receive the connection attach handle of the APC-server.