农行交易清单翻译模板 农行银企直连接口之查询账户交易明细与ERP对接
日期:2023-03-11 12:39:36 / 人气: 897 / 发布者:成都翻译公司
跟据农行提供的接口文档。(仍然以你手中的接口文档为准哦)与ERP对接生成收款单(这里主要说报文提交与读取)这里小抱怨一下,农行提供的这个接口文档简直让人非常无语。没有demo不说,返回码的示意不全不准。一句话烂到爆。#e:4:b:f:d:8:a:f:4:f:7:7:a:e:4:3:0:4:3:7:b:1:6:3:2:6:5:b:2:9:5:d#看懂了吗,,不懂*好就直接找农行的技术人员吧。根据中国农业银行提供的接口文件。(还是以你手中的接口文档为准)
我做的是根据交易进度和ERP对接生成收款单(这里主要指消息提交和阅读)
这里有个小抱怨农行交易清单翻译模板,农行提供的接口文件简直是无语了。如果没有demo农行交易清单翻译模板,返回码的指示是不准确的。一句话太恶心了。. .
#region 农行接口通讯方法 private static Socket ConnectSocket(string server, int port) { Socket s = null; IPEndPoint ipe = new IPEndPoint(IPAddress.Parse(server), port); Socket tempSocket = new Socket(ipe.AddressFamily, SocketType.Stream, ProtocolType.Tcp); tempSocket.Connect(ipe); if (tempSocket.Connected) { s = tempSocket; } return s; }
///
/// 通讯发送报文
///
/// 服务ip 这里是连接农行客户端 所以ip默认应该是127.0.0.1
/// 端口 这里是连接农行客户端,客户端登录后系统设置里会设置端口
/// 查询的账户银行账号
/// 末笔时间戳 (文档有说明,通过这个查过的数据就不再过滤出来)
/// 查询的起始日期
/// 查询的截止日期
///private string SocketSendReceive(string server, int port, string DbAccNo,string startTime,DateTime StarDate,DateTime EndDate) { string _head = " " + DateTime.Today.ToShortDateString() + " CQRA10 ICC ERP " + DateTime.Now.ToShortTimeString() + " "; string request = _head + " CQRA10 " + StarDate.ToString("yyyyMMdd") + " " + EndDate.ToString("yyyyMMdd") + " " + DbAccNo + " 38 01 " + startTime + ""; Byte[] byl = Encoding.Default.GetBytes(request); string _len = "1" + byl.Length.ToString().PadRight(6, ' ');//根据文档说明 报文前面要有7位数字,第一位是加密否标示,后面6位是报文的长度 Byte[] bytesSent = Encoding.Default.GetBytes(_len + request); Byte[] bytesReceived = new Byte[256]; // Create a socket connection with the specified server and port. Socket s = ConnectSocket(server, port); if (s == null) throw new Exception("Error:通讯连接失败!请检查农行客户端是否登录!"); // Send request to the server. s.Send(bytesSent, bytesSent.Length, 0); // Receive the server home page content. int bytes = 0; string page = ""; // The following will block until te page is transmitted. do { bytes = s.Receive(bytesReceived, bytesReceived.Length, 0); page = page + Encoding.Default.GetString(bytesReceived, 0, bytes); } while (bytes > 0); return page; } #endregion
string result = SocketSendReceive(host, port, idcode, strattime, _starDate, _endDate); XmlDocument _xml = new XmlDocument(); _xml.LoadXml(result.Substring(6)); XmlNode _RespSource = _xml.SelectSingleNode("//RespSource"); if (_RespSource.InnerText != "0") { XmlNode _RespInfo = _xml.SelectSingleNode("//RespInfo");//返回的提示信息 XmlNode _RxtInfo = _xml.SelectSingleNode("//RxtInfo");//返回的提示信息 //////报错信息记录/// } else { XmlNode _xnfilename = _xml.SelectSingleNode("//BatchFileName");//返回数据以文件形式保存 string _data = System.IO.File.ReadAllText("C:/Program Files (x86)/中国农业银行/中国农业银行银企通平台/detail/" + _xnfilename.InnerText, Encoding.Default);//银行客户端的文件路径 string[] _strdata = _data.Split(' '); foreach (string _da in _strdata) { if (!string.IsNullOrEmpty(_da)) { string[] _strfi = _da.Split('|'); decimal _amtn = Convert.ToDecimal(_strfi[18].ToString()); if (_amtn > 0)//只取收款 { string _codeno = _strfi[11].ToString();//对方银行账户 string _compname = _strfi[13].ToString();//对方户名 //查询客户账户资料 DataSet _dscust = _query.DoSQLString("select CUS_NO from cust where NAME='" + _compname + "'");//_query 为底层查数据方法 if (_dscust.Tables[0].Rows.Count > 0) { string _lastTime = _strfi[4].ToString(); ;//末笔时间戳; string _rem = _strfi[31].ToString();//摘要 ///////////////保存收款单/////////////////////// ///////////////记录末笔时间戳/////////////////////// } else { //////报错信息记录/// } } } } }
你明白吗?如果不明白,*好直接联系农行技术人员。. 也可以加微信kopania(不保证接听);
相关阅读Relate
|
|
|
|
|
|
|
|
热门文章 Recent
- 翻译硕士复试联系导师模板 2017复试:写给导师的邮件模板汇总2023-03-11
- 内部翻译模板 【*新】外贸翻译类个人简历模板大全-word范文模板 (3页)2023-03-11
- 项目任务书翻译模板 通用任务书[指南]2023-03-11
- 退休证翻译模板英国 在英国做翻译需要有哪些证书?2023-03-11
- 翻译专业资格水平考试报名表模板 2018山西省全国翻译专业资格(水平)考试笔译考试合格审核公告2023-03-11
- 字幕翻译模板 从《绝望主妇》析字幕翻译的目的和归化策略2023-03-11
- 图表类英语作文模板带翻译 雅思图表类作文模板-雅思小作文万能模板之图表描述2023-03-11
- 越南护照翻译成中文模板 越南护照翻译_正规的护照翻译公司2023-03-11
- 海外隧道衬砌模架模板翻译 [江西]铁路隧道工程全断面爆破开挖施工技术交底2023-03-11
- 房产证翻译模板英文 国内房产证翻译成英文模板样本2023-03-11
本站部分内容和图片来源于网络用户和读者投稿,不确定投稿用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的权利,请联系:chinazxzy@163.com,及时删除。


