SAP 银企直连 通过 Http Get 方式下载交易明细文件
前言
SAP 银企直连,农业银行查询接口交易明细会生成固定格式的文本文件到前置机上面。
可以通过Http Get 方式下载。
提示:以下是本篇文章正文内容,下面案例可供参考
一、接口说明与核心代码
<?xml version="1.0" encoding="utf-8"?>
<ap><CCTransCode>CQRA10</CCTransCode><Corp><StartDate>起始日期</StartDate><EndDate>终止日期</EndDate></Corp><Channel><LastJrnNo>0</LastJrnNo></Channel><Cmp><DbAccNo>借方账号</DbAccNo><DbProv>借方省市代码</DbProv><DbCur>借方货币号</DbCur><StartTime>末笔时间戳</StartTime></Cmp>
</ap>
<?xml version="1.0" encoding="utf-8"?>
<ap><Cme><RecordNum>记录总数</RecordNum><FieldNum>字段数</FieldNum></Cme><Cmp><DbAccNo>借方账号</DbAccNo><DbProv>借方省市代码</DbProv><DbCur>借方货币号</DbCur><BatchFileName>文件名</BatchFileName></Cmp>
</ap>
下载文件:
账户明细文件信息 (文件名如上BatchFileName所示)
格式如下(MFS):
Prov|AccNo|Cur|TrDate|TimeStab|TrJrn|TrType|TrBankNo|AccName|AmtIndex|OppProv|OppAccNo|OppCur|OppName|OppBkName|CshIndex|ErrDate|ErrVchNo|Amt|Bal|PreAmt|TotChg|VoucherType|VoucherProv|VoucherBat|VoucherNo|CustRef|TransCode|Teller|VchNo|Abs|PostScript|TrFrom|
中文含义(附字典翻译):
省市代码|账号|货币码|交易日期|交易时间|日志号|交易类型|交易行号|户名|发生额标志|对方账号省市代码|对方账号|对方账号货币码|对方账号户名|对方账号开户行|现转标志|错账日期|错账传票号|交易金额|账户余额|上笔余额|手续费总额|凭证种类|凭证省市代号|凭证批次号|凭证号|客户参考号|交易码|柜员号|传票号|摘要|附言|交易来源|
注:返回的账户明细文件中不包含以上字段名。
METHOD GET_FILE.DATA lv_rfc_name TYPE string.DATA lv_rfc_option TYPE string.DATA lv_host TYPE string.DATA lv_port TYPE string.DATA lv_uri TYPE string.DATA lv_file_xstring TYPE xstring.DATA lv_http_status TYPE i.mo_abc_ghtd_serv_cntr->get_rfc_name(EXPORTINGis_bank_comm_key = is_bank_comm_keyIMPORTINGev_rfc_name = lv_rfc_name).IF lv_rfc_name is INITIAL.DATA lt_message type STANDARD TABLE OF bal_s_msg.DATA ls_message TYPE bal_s_msg.DATA lv_message_dummy TYPE string.MESSAGE e026(epic_example_cn_impl) INTO lv_message_dummy.CLEAR ls_message.MOVE-CORRESPONDING sy TO ls_message.APPEND ls_message TO lt_message.RAISE EXCEPTION TYPE cx_epic_bank_comm_implEXPORTINGimpl_messages = lt_message.ENDIF.mo_abc_ghtd_serv_cntr->get_connection_option(EXPORTINGiv_rfc_name = lv_rfc_nameIMPORTINGev_connection_option = lv_rfc_option).resolve_host_port_from_option(EXPORTINGiv_rfc_option = lv_rfc_optionIMPORTINGev_host = lv_hostev_port = lv_port).CONCATENATE gc_file_server_prefix iv_file_name INTO lv_uri.mo_abc_ghtd_serv_cntr->download_file(EXPORTINGiv_host = lv_hostiv_port = lv_portiv_uri = lv_uriiv_protocol = 'HTTP/1.0'IMPORTINGev_file_xstring = lv_file_xstringev_http_status = lv_http_status).IF lv_http_status <> 200.CLEAR lt_message.CLEAR ls_message.CLEAR lv_message_dummy.MESSAGE e025(epic_example_cn_impl) INTO lv_message_dummy.CLEAR ls_message.MOVE-CORRESPONDING sy TO ls_message.APPEND ls_message TO lt_message.RAISE EXCEPTION TYPE cx_epic_bank_comm_implEXPORTINGimpl_messages = lt_message.ENDIF.cl_abap_codepage=>convert_from(EXPORTINGsource = lv_file_xstringcodepage = `GBK`RECEIVINGresult = ev_file).REPLACE ALL OCCURRENCES OF cl_abap_char_utilities=>cr_lf(1) IN ev_file WITH ''.REPLACE ALL OCCURRENCES OF cl_abap_char_utilities=>cr_lf+1(1) IN ev_file WITH ''.ENDMETHOD.
METHOD if_epic_abc_http_service~download_file_through_get.DATA: lo_client TYPE REF TO if_http_client.DATA lv_xstring TYPE xstring.DATA: errortext TYPE string.DATA lv_file_string TYPE string.DATA lv_file_xstring TYPE xstring.create_http_client(EXPORTINGiv_host = iv_hostiv_service = iv_serviceIMPORTINGeo_client = lo_client).CALL METHOD lo_client->request->set_methodEXPORTINGmethod = if_http_request=>co_request_method_get.CALL METHOD set_version_uriEXPORTINGiv_protocol = iv_protocoliv_uri = iv_uriCHANGINGco_client = lo_client.IF iv_request_body IS NOT INITIAL.CALL METHOD set_request_bodyEXPORTINGiv_body_xstring = iv_request_bodychangingco_client = lo_client.ENDIF.CALL METHOD http_sendEXPORTINGiv_timeout = 2000changingco_client = lo_client.CALL METHOD receive_dataIMPORTINGev_file_xstring = ev_file_xstringev_file_string = ev_file_stringev_http_status = ev_http_statusCHANGINGco_client = lo_client.CALL METHOD http_closeCHANGINGco_client = lo_client.ENDMETHOD.
总结
另外也可以在前置机安装FTP服务器,通过FTP读取文件也很方便。
SAP 银企直连 通过 Http Get 方式下载交易明细文件相关推荐
- SAP 银企直连基本开发过程及常用增强总结
一.银企直连介绍 银企直联是一种新的网上银行系统与企业的财务软件系统在线直接联接的接入方式.银企直联通过因特网或专线连接方式,实现了银行和企业计算机系统的有机融合和平滑对接.企业通过财务系统的界面就可 ...
- SAP 银企直连付款 DMEEX 格式树维护工具
SAP 银企直连付款通过 DMEE 格式树维护工具生成付款报文. 描述 注意:这只是一个示例,不在生产系统中使用.应将此示例"付款媒介工作台"(PMW)格式复制到自有命名空间,并按 ...
- SAP 银企直连 电子回单
SAP 银企直连 电子回单是 EPIC_PROC 的标准功能,与常用的财务凭证类似.后续操作有辨识 ,认领,过账等. 有2种通过调用银行接口的创建方式: EPIC_EBR_SOURCE Source ...
- SAP 银企直连交易明细查询的分页与FTP读取
前言 SAP 银企直连交易明细查询常见的有 分页多次查询 和 返回前置机文件名,下面详细介绍: 一.分页多次查询 分页多次查询可以参考建设银行的示例类:CL_EPIC_EXAMPLE_CN_CCB_G ...
- SAP 银企直连 维护与安全登录用户的银行通讯
EPIC_PROC - 会计核算 -> 财务会计 -> 银行 -> 国家特定 -> 中国 -> 电子支付集成 SAP 银企直连中安全用户的密码保存在安全存储中,并不是普通 ...
- SAP 银企直连 付款报文签名与长度限制处理
前言 银企直连经常会遇到需要对报文签名,加密验证,比如齐商银行,工商银行等. 齐商银行签名字符串很长,而SAP DMEE 中付款报文字段最大长度只有 1500字符,这要怎么处理? 其实只要在发送报文之 ...
- SAP银企直连系列-1
1.业务背景 为了减轻财务工作量,实现付款及相关查询和银行直接对接,在SAP系统中实现了与招商银行得银企直连业务. 2.业务场景 涉及到下述四类业务场景: 2-1 支付结算:直接支付(N02031). ...
- SAP 银企直连付款流程
使用电子支付集成的付款流程 EPIC_PROC - 会计核算 -> 财务会计 -> 银行 -> 国家特定 -> 中国 -> 电子支付集成 使用此中国特定的流程可以简化待支 ...
- SAP 银企直连 常用事务代码,表名,类名
EPIC_PROC - 会计核算 -> 财务会计 -> 银行 -> 国家特定 -> 中国 -> 电子支付集成 事务代码 短文本 EPIC_BAL 银行余额管理 EPIC_ ...
最新文章
- day22 案例 发送邮箱激活码 购物车 分析
- Bluetooth4.0
- SIGIR 2021 | 推荐系统中的自监督图表征学习
- Nginx负载均衡策略之fair介绍
- 避免许多if块进行验证检查
- 西安交大计算机考研分数线2020院线,西安交通大学2020考研复试分数线已公布
- java线程一定是thread_深入理解Java多线程(multiThread)
- Linux rm 删除指定文件外的其他文件 方法汇总
- Oracle开发专题之:分析函数(OVER)
- 基于腾讯云的Discuz论坛搭建
- POJ 3250:Bad Hair Day 好玩的单调栈
- xp系统wep服务器,iis 6.0 完整安装包 适用xp
- 【图形学实验】Loop Subdivision与Modified Butterfly Subdivision
- hysys动态模拟教程_泄压过程的HYSYS动态模拟.pdf
- 一份spyglass做lint的lint.prj
- java 修改pdf_使用Java编辑PDF文本
- “FCoE全解系列”之网络融合交换机类型
- 一個“語言”引發的血案
- uniapp 图片生成
- 优质的石材 石头VRay材质球素材推荐,不容错过
热门文章
- 分享一个简单粗暴的网赚项目:怎么利用音频赚钱?
- 抖音参与福袋显示服务器异常,抖音dou福袋怎么提现 抖音dou福袋提现方法
- UE设置打开的文件默认高亮语言
- 基于java+ssm的校园自行车租赁买卖系统-计算机毕业设计
- 在C语言中使用Esc退出的程序,C如何使用ESC按钮终止我的程序
- Day10 (代码块,继承,Math,类Test,面试题)
- springMVC的controller的ModelAndView设定的值,无法在jsp显示问题
- Spring5知识点综合笔记
- 咸关日影正鸿蒙,鸿蒙的诗词,鸿蒙古诗大全,鸿蒙全诗,关于鸿蒙的诗句全集...
- CCD与CMOS区别