61阅读

财政局国库支付中心-支付宝的“大野心”:中国金融“搅局者”

发布时间:2018-01-08 所属栏目:电商

一 : 支付宝的“大野心”:中国金融“搅局者”

  曹金玲

  [ “新技术出现往往会为金融服务提供突破,互联网金融有可能给银行体系带来颠覆性影响。”一位业内资深人士对本报记者说,不可忽视的是,技术革命后,个人行为将变得更有影响力,可以预见阿里巴巴会对金融服务带来突破,并在发展过程中演变出一些全新的模式,而这也将对监管提出新的要求 ]

  阿里巴巴身上所映射出的“金融梦”越来越明显,或许正如马云自己所言,中国金融需要“搅局者”。

  从现在开始,“放在”支付宝账户里的钱可以有收益了。支付宝正式上线“余额宝”,把资金转入余额宝的过程即是向基金公司等机构购买相应理财产品。注意,其中所说的是“基金公司等机构”,很显然,天弘基金“增利宝”货币基金只是第一步。

  “短期内仍会以基金公司为主,现在已经有其他基金公司正在寻求与支付宝的类似合作。”一名接近支付宝人士对《第一财经日报》透露。

  搅局银行?

  存银行还是存支付宝?人们的第一反应,是把余额宝的投资收益和银行的活期利息拿来比较。

  余额宝的亮点之一则在于:对于用户的最低购买金额没有限制,一块钱就能起买。支付宝的用户绝大部分都是没有太多理财经验的年轻人,这些人群才是支付宝的目标。这也符合阿里巴巴一直以来坚持服务二八定律中那沉默的八成人的思路。

  继而,这一新产品将吸引更多闲散资金涌向支付宝。因为余额内的资金能随时用于网上购物、支付宝转账、缴费等支付,其所获收益又比银行活期存款更高。据支付宝介绍,同样一万元,通过活期存款一年的收益只有35元,而如果通过余额增值服务一年的收益可以达到380元至400元以上,收益比活期高出十倍。

  对于风险,支付宝的解释是:货币基金主要用于投资国债、银行存款等安全性高、收益稳定的有价证券,2012年国内货币基金7日年化收益率平均约为3.8%;总体来看,货币基金作为基金产品的一种,理论上存在亏损可能,但从历史数据来看收益稳定风险极小。

  一直以来,用户在支付宝账户内的沉淀资金没有收益,而阿里巴巴却从庞大备付金中获得利息而使其备受质疑。支付宝方面却多少觉得有些“冤”。

  “支付宝没有不愿意发放利息,但是支付机构发放‘利息’的形式是现有政策所不允许的。”上述接近支付宝人士如是说,而这也是支付宝此次通过基金“收益”来提供“类利息”的原因所在,但这势必带来备付金规模的大幅下降,从而影响其利息收入,即便是天弘基金会支付一定销售服务费,也不足以抵充利息收入的下降。

  但若说会在短期内“包抄”银行不免为时过早;可预见的是,当这种平民理财、懒人理财的方式成为足够多人支付、理财、生活的核心产品,则或对商业银行带来影响。

  “新技术出现往往会为金融服务提供突破,互联网金融有可能给银行体系带来颠覆性影响。”一位业内资深人士对本报记者说,很多人认为成熟金融市场的机构投资者会占比很高,但不可忽视的是,技术革命后,个人行为将变得更有影响力,可以预见阿里巴巴会对金融服务带来突破,并在发展过程中演变出一些全新的模式,而这也将对监管提出新的要求。

  阿里金融梦

  姑且不谈阿里的金融业务是想“推翻”还是“摇一摇”传统金融机构,“马云式金融”正逐步变为现实,并着实正在酝酿或即将成为一场“革命”。

  对集团内部版块的分工角色,马云曾打过一个非常形象的比方:“B2B是大哥,弟弟妹妹们上学都靠他来供;淘宝是妹妹,可以拿着大哥给的钱买花裙子;老三是支付宝,才上小学,但它最有志气,要在未来扛起养家的重担。”

  那么现在,以支付宝为端点,以海量的交易数据和消费信息为支柱,马云的金融触角飞速外延,已遍及贷款、担保、保险、理财等领域,尤其去年底以来,其在金融板块业务上的动作掷地有声。

  在集团2012年网商大会上,马云明确提出要将业务分为“平台、金融、数据”三步走的计划。组织架构的整合梳理接踵而来,今年2月,阿里巴巴宣布将原先的支付宝拆分成共享平台事业群、国内事业群及国际事业群,并与原阿里金融业务一道合并,“小微金融”板块至此尘埃落定。

  随之2月22日,马云在“2013亚布力中国企业家论坛”上作了关键词为“革命、危机和行动”的演讲,指出“电子商务不是一个技术,不是一个商业模式,它是一场革命,它是一个生活方式的变革”。

  在2月26日阿里新的金融团队的开年会议上,马云再续“革命论”,提出阿里的金融业务要回归金融本质,即金融是为了解决贸易和生活过程中的问题。他并称“阿里做的金融业务不是改革,而是一场革命,一场金融的革命”。

  而在本月初的上海首届外滩国际金融峰会上,马云再次畅谈“金融梦”,直言现有金融体制难以支撑今后30年中国经济的发展,中国金融需要“搅局者”,更需要那些外行人进行变革。他提出,未来金融有两大机会:一个是金融互联网,金融行业走向互联网;二是互联网金融,纯粹的外行领导。

  公开数据显示,截至2012年12月,支付宝注册账户逾8亿,日交易额峰值超过200亿元人民币,日交易笔数峰值达到10580万笔。

二 : 市财政副局长在预算单位实施国库集中支付改革培训会上的讲话

同志们:
为推进县级国库集中支付制度改革,前不久,市财政局下发了《关于推进县级财政国库管理制度改革的指导意见》。今天,请大家来参加这个培训班,就是对国库集中支付改革业务进行培训,提高大家指导国库集中支付改革的业务水平,同时,对近几年的财政国库工作情况进行总结交流,部署今后一个时期财政国库管理和国库集中支付改革的工作任务。下面,我先讲几点意见,供大家参考。
一、近几年财政国库工作的简要回顾
自XX年机构改革成立国库科以来,我市的财政国库工作,在市财政局党组的正确领导下,在省厅国库处的关心指导下,全市各级财政国库部门按照建立现代财政国库管理制度发展方向,在夯实财政国库工作基础、加强银行账户规范管理、提高预算执行分析水平、推进国库集中支付改革,增强干部队伍素质等方面做了大量卓有成效的工作,初步构建了新型的财政国库管理体系。
(一)夯实基础,财政国库管理工作日益规范。
近几年,市、县两级财政国库部门立足本职,加强管理,不断夯实财政国库管理工作。一是强化了会计基础工作。完善了内部岗位职责和运行规程,健全了内部分工与制约机制,实行财政资金拨付印鉴分管复核机制。同时,对财政预算内、外等各类资金实行了电脑拨款记账,进行了软件升级,增强了会计核算、网络查询和票证打印功能,提高了会计电算化水平,保证了财政资金运行的安全、高效。二是规范资金拨付流程。制定了《赣州市财政局财政资金拨付流程》,及时对财政内部科室的业务流程进行了规范完善,进一步优化了资金支付管理流程,简化了审核事项,缩短了审核时间,规范了工作流程,提高了工作效率。三是加强了预算执行情况的分析和调研。围绕财政经济工作重点,紧扣经济运行态势,及时对工业园区、国库集中支付改革、资源性行业发展、部门决算等进行了专题调研,形成了专题调查报告,提出了许多好的政策建议,为领导决策提供了主要依据。同时,实现了旬、月报表汇总、审核的自动化,在全省率先使用国库执行信息系统上报旬月报数据,加快了预算执行信息的报送速度。XX年,我市的预算执行分析工作在全省评比中荣获一等奖。
(二)加强管理,银行账户管理工作进一步规范。
按照财政部、省财政厅的要求,进一步规范了银行账户的管理工作。一是加强了财政内部银行账户的归口管理工作。从XX年4月开始,市本级就把各项财政性资金及其账户归并到国库科实行统一开户、统一支付、统一核算。在此基础上,制定了《市级财政资金帐户管理暂行办法》。二是加大了对预算单位银行账户的清理力度。XX年,与人民银行、市监察局、市审计局联合对市级预算单位的银行账户进行了一次全面清理,共撤销486个不符合政策规定开设的银行账户。在清理整顿的基础上,制定下发了《赣州市市级预算单位银行账户管理暂行办法》,有效地控制行政事业单位多头开户的混乱现象。
(三)不断创新,财政决算工作实现了新的突破。
通过不断探索和创新,初步建立了职责明确、奖罚分明的良好机制。一是协调沟通机制。对内,明确了各业务科和具体经办人员在每个阶段的职责分工和时间要求,并将决算报表审核工作列入科室年终目标考评内容,强化了内部决算编制的衔接配合;对外,由财政牵头定期召开财税库协调会,就决算编报口径、账务核对、收入报解退付、报表分送等进行协调分工和责任落实。二是评比考核机制。先后制定了《赣州市财政总决算编报工作评比暂行办法》和《赣州市部门决算编报工作评比办法》,每年对财政总决算和部门决算报表进行考核评比,大大地提高了决算报表编审人员的责任心。三是学习培训机制。每年除了把决算编报的有关政策、编审办法、填报口径、审核公式在网上提前公告之外,还要对编审人员进行一次全面的技能培训,大大地提高了编审人员的业务水平。四是严格把关机制。对决算报表严把决算初审、决算正审、决算终审“三审”关和决算数据政策性、逻辑性、合理性“三性”关,保证了决算数据的真实、准确,提高了决算的编审质量。近两年我市的财政总决算编审工作在全省评比连续获得一等奖,创造了八连冠的佳绩,部门决算编审工作在全省评比获得第二名,获得了迄今为止部门决算的最好成绩。
(四)积极探索,国库集中支付改革初显成效
根据财政部、省财政厅的统一部署和要求,我市的财政国库管理制度改革是从财政统发工资、财政性基建、城建资金和政府采购资金实施财政直接支付为突破口,XX年1月1日开始,按照市政府批准的《财政国库管理制度改革方案》,市财政局首先选择了财政局、民政局、水利局、审计局、粮食局、统计局、计生委、规划建设局等8个主管部门及其25个下属预算单位进行国库集中支付改革试点。今年6月1日起,又将27个部门及其13个下属单位纳入国库集中支付改革试点,使改革试点部门扩大到35个,基层单位增至38个,涉及预算内、外资金1.7亿元。从运行情况来看,目前整个改革运行平稳,进展顺利,效果良好。
1、建立了比较完善的制度体系。逐步形成了以改革方案为基础,支付管理办法、资金清算办法、会计核算办法为主体,其他配套办法为补充的覆盖面广、操作性强,内容比较完善的财政国库管理制度体系。
2、提高了资金的支付和使用效率。实行国库集中支付后,资金从财政部门账户到用款单位由原来的4-7天缩到1天以内,单位用款更加及时方便。同时,改革增强了财政调控资金的能力,资金效率明显提高,XX年,33个试点单位结存国库资金1069万元,结存率达17%。
3、探索了创新的改革模式。在把23个会计集中核算单位纳入改革试点范围的基础上,对人员少、资金渠道单一且集中在市政中心办公的单位实行会计代理。同时,在市文化局、房产局等资金量大、内部财务关系相对复杂的部门成立财政支付分中心,对主管部门和下属单位的所有资金实行“统一管理、集中支付、分户核算”的管理模式。既调动了主管部门理财积极性、减少了改革阻力,又降低了改革成本,实现了会计集中核算与国库集中支付的有效结合。
4、加快了预算执行信息反馈速度。实行改革后,财政部门获取预算支出信息不需要通过部门单位层层汇总,而是直接通过支付网络系统获取,为预算执行及时提供了准确的信息。
在全面推进市本级国库集中支付改革试点的同时,各县(市、区)也结合实际,进行了内容多样的改革试点。目前,全市有13个县(市)开展了会计集中核算制度改革,大部分县(市、区)对工资、政府采购、基建城建、粮食直补等专项资金实行了财政直接支付。为加快县级国库集中支付改革的步伐,今年,市财政局在对县级财政国库管理制度改革进行调研的基础上,制定下发了《关于推进县级财政国库管理制度改革的指导意见》,明确了县级改革的基本原则和主要模式,确定了龙南、赣县作为第一批改革试点县,目前,各县(市、区)都在按照要求做好改革的前期准备工作,已有10个县(市、区)制定上报了改革试点方案。

过去几年,财政国库管理与改革工作虽然取得了一定成绩,但工作中也还存在不少问题。一是改革进展工作不平衡。市级改革尚未实施到所有部门,大部分县也没启动这项改革工作。特别是有不少同志对国库管理制度改革的认识还有偏差,对改革发展的趋势把握不够,工作较为被动;二是财政国库管理机构设置不到位。目前,仍有5个县(市、区)未成立国库管理机构,有11个县(市)没有把财政内部的银行账户纳入国库部门归口管理;三是信息系统建设不到位。目前县级会计核算电算化水平程度低,有相当一部分县(市)仍然处于手工拨款和记帐现状,还没有一套成熟的适合县级使用的会计核算和支付系统软件;四是对国库资金收支、预算执行情况的分析预测水平还不高等等。这些问题对建立和完善现代财政国库管理体系有很大影响,需要在今后的工作中认真研究解决。
二、深化改革,加快推进国库集中支付改革步伐
按照省财政厅的总体部署和市惩防体系建设的要求,在加快市级改革步伐的同时,要积极推进县级国库集中支付改革的进程。大家务必要有一个清醒的认识,以强烈的事业心和责任感来做好这项工作。
(一)统一思想,充分认识改革的必要性和紧迫性
推行财政国库管理制度改革既是与国际通行做法的接轨,也是预算执行制度的创新,是一项“财政的革命”。近年来,党中央、国务院和省委、省政府对这项改革高度重视,提出了改革的具体目标和总体要求。把其作为“八个坚持”和廉政建设的重要内容来抓。市委、市政府对这项改革也寄以厚望,在今年召开的市人大二届三次会议王昭悠市长所做的《政府工作报告》和《赣州市XX年惩治和预防腐败体系建设工作意见》都对国库集中支付改革提出了明确的要求。从目前来看,全国已有36个省市、200多个地市、500多个县实行了财政国库管理制度改革;江西省省本级也对所有部门实行了国库集中支付改革。全省11个设区市全面启动了改革试点,其中:南昌、宜春等改革已经全面铺开。目前,我市只有市本级实施了这项改革,县级还没有一个县(市、区)开展了这项改革试点工作,与中央、省的要求相比,还有一定的差距,改革步伐相对滞后。所以说财政国库集中支付改革是大势所趋,势在必行,我们的任务还很艰巨,希望大家提高认识,把思想统一到中央、省的改革决定上来,统一到市委、市政府对我市改革的工作部署上来。
(二)深刻领会,认真把握改革的精神实质
实行财政国库管理制度改革就是要建立国库集中收付制度(也称国库单一账户制度),它包括国库集中收入制度和国库集中支付制度两个方面。考虑到改革的复杂性和实施过程中的艰巨性,当前我市以国库集中支付制度作为切入点,先进行改革试点,然后再逐步扩面,等国库集中支付制度改革基本成功,再集中精力推进收入制度改革,最终实现国库集中收付制度。
考虑到县级改革的复杂性和艰巨性,县级在实施改革的过程中应着重把握好以下几个方面:
1、把握改革的方向。中央的改革方向就是建立以国库单一账户体系为基础,资金缴拨以国库集中收付为主要形式的现代国库管理制度。各个县(市、区)在坚持这个大方向的前提下,可根据各地的实际情况,因地制宜的选择改革模式。具体地说,对条件成熟且尚未实行会计集中核算的县,应一步到位走规范化改革道路;对条件成熟且已实施会计集中核算的县,可以在保留现有的模式下,融入国库集中支付改革的基本内容,实现两者的有效结合;对条件不具备的县,应扩大财政直接拨付的项目和总量,待条件成熟后再推行国库集中支付改革。为防止改革偏离轨道,避免因政策理解不当而使改革走弯路,各地在实施方案正式出台前要事先征求市财政局的意见,从目前各地上报的改革方案来看,多数流于形式,没有体现当地特色,操作性和前瞻性不强,需要进一步修改完善,正式出台后的实施方案应报市财政局。
2、注意改革的节奏。财政国库管理制度改革是一项新生事物,也是预算执行制度的创新,改革的过程中肯定会遇到各种问题和阻力。大家必须充分估计到改革的艰巨性和复杂性,把握好改革的节奏,能慢则慢,能快则快,做到有计划有步骤的实施改革,尽量减少改革带来的风险,力争实现单位满意、政府满意、社会满意的理想效果。
3、明确改革的内容。对国库集中支付的具体要求和做法,国库科将在培训中作详细介绍。根据去年的改革情况和今年改革的扩面要求,各地国库集中支付改革的内容主要是:
①坚持一个原则。即坚持“两个改变、三个不变”的原则。“两个改变”:一是改变资金管理方式。即财政部门由层层下拨资金给预算单位,改为依据部门预算批复下达用款计划,根据用款计划支付资金,在资金支付到商品和劳务供应者帐户之前,始终保留在国库单一帐户或预算外资金专户。二是改变资金支付方式。即预算资金由原来的分散支付改为直接支付。预算单位有财政支出时,由国库支付中心直接支付或授权预算单位开具支付令,支付给商品和劳务供应者。 “三个不变”:一是不改变预算单位的预算执行主体地位。人大通过的预算所确定的事项仍由各部门执行和组织实施,财政部门主要是为预算单位搞好预算执行提供服务,各单位预算执行主体地位不会降低。二是不改变预算单位的资金使用权限。资金的支配权和使用权仍由各单位掌握,财政部门主要是保证部门预算什么,部门执行的就是什么。三是不改变预算单位财务管理和会计核算权限。改革前,预算单位在财务管理和会计核算方面履行哪些责任和权限,行使哪些职权,改革后依然不变。
②建立一个体系。即建立国库单一账户体系。就是改变预算单位自行开设银行账户存储财政资金的办法,由财政部门统一开设国库单一账户体系,全面反映财政资金的收入和支出。撤销预算单位的所有账户,由财政部门在代理银行开设零余额账户,包括财政零余额账户和预算单位零余额账户。
③实行两种支付。即对财政性资金分别实行财政直接支付和财政授权支付两种方式。财政直接支付就是预算单位用款时,按照批复的部门预算和季度分月用款计划,向市财政局提出支付申请,国库支付中心向代理银行发出支付令,通过财政零余额账户将资金直接划拨到供应商或收款人的账户。财政直接支付主要适用于工资、大宗物品和服务采购、大型修缮、大中型基本建设项目、转移支出等。财政授权支付就是预算单位经财政授权,按照批复的部门预算和季度分月用款计划,自行向代理银行发出支付令,通过单位零余额账户将资金直接划拨到供应商或收款人的账户。财政授权支付主要适用于单位零星、经常性的小额支出和分散采购支出。
④实现两个提高。即提高资金支付效率和单位财务管理水平。实行国库集中支付改革后,从根本上解决了过去财政资金层层收缴、层层拨付、流经环节多的问题,加快了资金的流转速度,提高了资金收缴、拨付效率,方便了单位及时用款。同时,支付方式的变化,改变了以往先拿到钱再考虑怎么用的传统做法,要求单位必须加强用款的计划性、科学性。在申请用款的同时,就要将怎么用、何时花的问题作为先决条件做好,对单位的财务管理提出了更高的要求,促进了预算单位财务管理水平的提高。
(三)加强领导,确保改革各项工作落实到位
实行国库集中支付改革不仅技术性强、要求高,而涉及面广,难度大。要完成好这项改革任务,还需要大家的共同努力。对此,就改革落实工作提几点要求:
1、加强对改革的组织领导。各地要按照赣州市财政局《关于推进县级财政国库管理制度改革的指导意见》和《赣州市XX年惩治和预防腐败体系建设的工作意见》的要求,将推行财政国库管理制度改革工作作为落实科学发展观、提高党的执政能力建设和构建和谐社会的重要举措来抓,切实加强对改革工作的组织领导,将改革工作摆到重要位置,积极做好各项准备工作,以确保改革的顺利实施。
2、抓好改革的宣传和业务培训。财政国库管理制度改革作为财政资金缴拨制度的创新,与我们已经习惯的分散收付管理方式有着本质区别,在业务操作上存在重新认识的过程。这项改革包含的新制度、新知识、新业务比较丰富,必须大力做好政策宣传和操作业务培训。通过业务培训,使从事这项工作的同志全面熟悉掌握新知识、新业务,并在具体操作中熟练运用,减少失误。通过宣传,使大家更加了解、关心、支持改革,使改革实施工作更加顺畅。同时,也希望大家在这次培训班结束后,抓紧组织财政系统内部和各单位的业务培训工作,保证相关业务人员在改革试点实施之前能尽快掌握改革的有关制度规定、业务流程、账务处理和软件操作。
3、建立完善的组织机构。就国库机构的设置问题上,市财政局多次明文要求,大家一定要高度重视,抓好落实。未成立国库管理机构的要在年底以前落实到位,且人员及职能要一并到位。至于支付执行机构的设置,能整合到国库科(股)的尽量整合一个机构,不要分设。有特殊情况的,可以进行优化整合,如:已经实行会计集中核算的,可将会计核算中心改组为国库支付中心,延用原来的人员和设备,节约改革成本;实行国库集中支付与会计集中核算相结合模式的,支付、核算部门要相对分离,分别行使财政资金支付和会计核算职能。
4、规范银行账户管理。要认真抓好财政内部各类银行账户归口管理工作,将各类财政性资金账户归口到国库部门统一管理、支付和核算。同时,要全面清理预算单位的银行账户,为建立国库单一账户体系打好基础。
三、今后一个时期财政国库管理工作的主要任务
根据全市财政工作会议的要求和国库机构职能的定位,今后一个时期财政国库工作,重点要在以下方面下功夫:
(一)继续推进和深化财政国库管理制度改革。
各地要将深化财政国库管理制度改革摆在突出位置,进一步加大改革,力求取得明显成效。一是市级要在广度和深度上扩大改革范围。在全面推进改革进程的同时,要继续深化和完善改革措施,扩大资金范围,提高资金支付效率,力争在XX年前将改革逐步实施到所有基层预算单位。二是要加大推进县级国库集中支付的改革力度。按照国库集中支付改革的规范要求,结合县级财政管理特点和财政管理体制改革的要求,积极推进国库集中支付改革工作,要有明确的工作时间表。要按改革方向,重点规划好改革的进程,制定相关配套的制度办法。三是要着手研究和思考非税收入的改革,使国库集中支付改革尽量与非税收入改革相衔接。
(二)扎实做好政府收支分类改革的实施工作
进行政府收支分类改革,可以从财政收支方面清晰地反映政府职能活动,有利于全面促进部门预算、收支两条线、国库集中收付、政府采购等其他方面的改革,对进一步提高财政管理水平和财政资金使用效益,构建公共财政体制框架,都具有十分重要的意义。这项改革工作是一项技术性和基础性的变革,政策性强,牵涉面广,不仅对财政部门的各项改革和管理工作,而且对各行政事业单位的财务管理工作都提出了新的、更高的要求。现在离XX年全面实施政府收支分类改革不到半年,时间紧,任务重,具体的数据转换工作落在国库、预算两个部门,工作量很大。希望大家高度重视,吃透改革的精神,抓好人员的业务培训,做细做实数据转换工作,确保XX年政府收支分类改革的全面实施。
(三)立足探索做好决算工作的新思路。
要按照适应改革需要,统筹考虑实用性和前瞻性的原则,充分利用丰富的决算数据,改进完善决算报表体系,深入分析决算收支结构变化,及时发现财政管理存在的问题和薄弱环节,提出有针对性的分析意见,为预算编制管理工作提供参考依据。
(四)加强预算执行情况的分析预测。
在做好日常预算执行分析的基础上,要拓展预算执行分析的深度和广度,加强对财政收支前瞻性分析和预测,运用财政收支运行的基础性数据,围绕财政经济工作的重点和重大社会经济政策措施对财政收支的影响,全面分析经济运行态势、财政变化情况,深入剖析影响财政运行乃至国民经济和社会发展的深层次问题,发现预算执行中存在的问题,提出有针对性的政策建议。结合财政运行中出现的新情况、新问题,深化开展专题调研工作,为领导决策提供重要参考依据。
(五)进一步加强财政国库队伍建设。
各级财政部门要高度重视国库机构队伍建设,不断适应现代财政国库管理制度改革的需要。一是要健全机构。未成立机构的,一定要在年底以前落实到位,要选拔一批作风精良、业务精通、善于管理的人员充实到国库部门;二是要落实职能。已成立的要进一步理顺职能,机构的职能尽量与市财政局国库科对应;三是要加强学习。财政国库工作涉及诸多方面,政策性、业务性、操作性都很强,而且随着改革的深化,新知识、新业务将不断涌现,这就要求各级财政国库系统的干部要勤于学习、善于学习,不断更新知识;四是要加强制度建设。要健全内部运行规程,完善内部监督制约机制,形成一套科学、合理、高效的国库管理制度体系;五是要廉洁理财。认真落实“八项服务承诺”,进一步增强服务意识,廉洁高效、依法理财。
同志们,财政国库管理是一项具有开拓性和挑战性的工作,我们所从事的工作任重而道远。各级财政部门要牢固树立以人为本、全面协调可持续的科学发展观,立足现实、着眼长远、开拓创新,为开创我市财政国库工作新局面作出应有的贡献。
谢谢大家!

三 : 县财政局支付中心2013年工作汇报

各位领导:

  大家好!

  在县委、县政府的正确领导下,按照局里的统一部署,结合本股室工作实际,年初制定了我中心工作计划。按照市县“三提升”工作要求,牢固树立科学发展观,坚持依法行政,科学理财,加强自身建设,以求真务实的态度,开展各项工作。我们在实际操作中,按照我中心工作上的八点要求(微笑露一点,脾气小一点,姿态高一点,态度好一点,理由少一点,行动快一点,业务精一点,效率高一点),积极配合相关股室,强化服务意识,树立良好的窗口形象。具体汇报如下。

  一、支付中心工作职责

  (一)、管理支付中心账户、负责集中支付业务。统一办理各单位的现金、转账等资金结算和经费、往来款项等收付业务。

  (二)、负责工资性支出,对未实行工资银行化的单位及时支付工资。

  (三)、负责专项资金的支付业务。根据主管业务股室审核后的实际支出金额,直接支付给用款单位或商品、劳务、服务提供者。

  (四)、负责日常单位报账的审核。根据有关政策、法规及财经制度,对单位报帐的合法性、合规性进行审核,并及时办理提款报帐手续。

  (五)、办理领导交办的其他工作。

  二、工作方面

  支付中心是财政局的窗口股室,共有57个报账单位,我们要求每位同志业务上要精益求精,服务态度上要和蔼可亲,树立良好的财政形象。

  (一)、加强学习,筑牢廉洁自律的道德防线。

  作为一名财政干部,我始终把加强学习,不断提高自身素质放在首位,在学习、工作、生活中能宽以待人、严以律己、严格要求自己,始终把加强学习作为廉洁自律的有效途径。积极参加局里组织各类学习,通过系统理论学习,不断提高自身的理论水平、政策水平和办事效率。在本人的带动下,我中心全体人员积极参加政治、业务学习,努力提高自身素质,增强服务意识,并将之贯穿于实际工作中,优化服务环境,注重自身形象,高效地为服务单位办理各项业务,树立良好的窗口形象。同时,由于我中心业务性强,因此我们在办公之余,经常自觉学习,集体讨论,从而不断提高自身业务素质,为更好地胜任本职工作打下了良好的基础。

  (二)、增强服务意识,提高服务质量

  支付中心是财政部门的窗口股室,支付中心的服务水平直接体现财政部门形象。增强服务意识,提高服务质量尤为重要,按照市、县“三提升”工作要求,提高工作能力,增强服务意识,牢固树立为人民服务思想,提高办事效率,提高服务水平。保持良好的行风、行貌。做到文明办公、热忱服务,热情接待来局办事人员,高效地为他们办理各项业务,树立良好的窗口形象,曾多次得到有关部门的好评。

  (三)、严格支付程序,确保资金安全

  我们本着“严格、快捷、优质、高效”的原则,为了使会计工作做的更扎实、更准确,对手续不全的及时补充,对不符合会计制度规定的及时给予更正,保证会计工作在账务处理上做到账账相符,清晰规范,符合有关会计制度规定;同时严把资金支出关,严格单位票据的审查、报销程序,监督单位的收入是否及时上缴收费局及支出走向的合理、合法、合规性,每笔支出严格按照《财政支付中心资金拨付、提现程序》审批支付,堵塞了漏洞,节约了开支,杜绝了违纪违法现象的发生。为全力做好全县离休干部医药费审核工作,5月份我们集中时间,集中人力,对全县300多名离休干部10月至XX年3月医药费进行审核,共收集报销药费298.9万元。

  (四)、加强软件建设,完善各项制度

  按省、市财政工作会议要求,在预算股及信息中心的大力支持下,加强了县级版软件的应用,按照规定时间完成了县级版软件的数据录入工作。通过县级版软件的推广应用,既提高了工作效率,又规范了支付程序,保障了资金安全。在资金拨付方面,根据自身工作特点,认真总结过去集中支付工作中取得的成绩和不足,完善各项规章制度和集中支付相关工作,进一步将集中支付工作做实、做细、做好,同时,强化岗位责任制,做到分工明确,责任分明。

  三、存在问题

  今年刚启用的县级版软件操作的不够熟练,要加强学习,提高计算机操作水平。服务意识还有待于进一步提高,廉洁自律方面认识不到位,理论学习深度仍然不够,学习的自觉性不够,特别是理论联系实际还存在一些差距。

  在今后的工作中,我们更应自觉树立公仆意识,坚持科学理财,依法行政和勤政廉政,努力学习提高个人素质。努力增强学习的自觉性,不断提高自己政治理论水平。加强党性修养锻炼,牢记党的宗旨,时时处处以党员的标准要求自己,以身作则。要进一步加强廉洁自律的修养。努力工作、团结同志、发扬优点、脚踏实地的做好财政支付工作,为我县的经济发展贡献力量。

四 : 财政国库电子支付电子凭证库接口说明【2014.04.30.00】74

财政国库电子支付

电子凭证库接口说明

广州江南科友科技股份有限公司

2013年03月

修订版历史

目 录

1 电子凭证库接口说明 ..................................................... 1

2 电子凭证库客户端接口 ................................................... 1

2.1 设置电子凭证服务地址 ....................................................... 1

2.1.1 功能说明 ................................................................................................................. 1

2.1.2 函数名..................................................................................................................... 2

2.1.3 输入参数 ................................................................................................................. 2

2.1.4 输出......................................................................................................................... 3

2.1.5 代码示例 ................................................................................................................. 3

2.2 设置电子印章服务地址 ....................................................... 3

2.2.1 功能说明 ................................................................................................................. 3

2.2.2 函数名..................................................................................................................... 4

2.2.3 输入参数 ................................................................................................................. 4

2.2.4 输出......................................................................................................................... 4

2.3 生成签章报文(读取UKEY印章) .............................................. 4

2.3.1 功能说明 ................................................................................................................. 4

2.3.2 函数名..................................................................................................................... 4

2.3.3 输入参数 ................................................................................................................. 5

2.3.4 输出参数 ................................................................................................................. 5

2.4 生成签名报文(带签名位置) ................................................. 5

2.4.1 功能说明 ................................................................................................................. 5

2.4.2 函数名..................................................................................................................... 5

2.4.3 输入参数 ................................................................................................................. 5

2.4.4 输出参数 ................................................................................................................. 6

2.5 生成签名报文(不带签名位置) .............................. 错误!未定义书签。

2.5.1 功能说明 ............................................................................... 错误!未定义书签。

2.5.2 函数名................................................................................... 错误!未定义书签。

2.5.3 输入参数 ............................................................................... 错误!未定义书签。

2.5.4 输出参数 ............................................................................... 错误!未定义书签。

2.6 凭证显示控件(OCX) ........................................................ 6

2.6.1 初始化..................................................................................................................... 6

2.6.2 加载电子凭证 ......................................................................................................... 7

2.6.3 指定凭证号加载电子凭证 ..................................................................................... 8

2.6.4 指定原文加载电子凭证 ......................................................................................... 8

2.6.5 显示指定的凭证(凭证编号) ............................................................................. 9

2.6.6 显示指定的凭证(凭证索引) ........................................................................... 10

2.6.7 打印凭证(凭证号) ........................................................................................... 10

2.6.8 打印凭证(按凭证索引号) ............................................................................... 11

2.6.9 打印凭证(按索引范围批量打印) ................................................................... 12

2.6.10 打印当前显示的凭证 ......................................................................................... 13

2.6.11 清空凭证列表 ..................................................................................................... 13

2.6.12 移除指定凭证(凭证编号) ............................................................................. 14

2.6.13 移除指定凭证(凭证索引) ............................................................................. 14

2.6.14 查看凭证的上一联 ............................................................................................. 15

2.6.15 查看凭证下一联 ................................................................................................. 15

2.6.16 获取凭证联数 ..................................................................................................... 16

2.6.17 获取加载的凭证总数 ......................................................................................... 16

2.6.18 显示下一条凭证 ................................................................................................. 17

2.6.19 显示上一条凭证 ................................................................................................. 18

2.6.20 获取当前显示凭证的凭证编号 ......................................................................... 18

2.6.21 获取当前的显示的凭证索引 ............................................................................. 19

2.6.22 获取当前显示的凭证联号 ................................................................................. 19

2.6.23 显示任意联号凭证 ............................................................................................. 20

2.6.24 放大显示凭证 ..................................................................................................... 20

2.6.25 缩小显示凭证 ..................................................................................................... 21

2.6.26 自动适应显示凭证 ............................................................................................. 21

2.6.27 刷新显示凭证 ..................................................................................................... 21

2.6.28 设定显示指定索引凭证 ..................................................................................... 22

2.6.29 设置显示指定凭证号凭证 ................................................................................. 23

2.6.30 设置凭证显示模式 ............................................................................................. 23

2.7 不显示控件打印(后台批量打印) ............................................ 24

2.7.1 功能说明 ............................................................................................................... 24

2.7.2 函数名................................................................................................................... 24

2.7.3 输入参数 ............................................................................................................... 24

2.7.4 输出参数 ............................................................................................................... 24

2.8 打印预览接口 .............................................................. 25

2.8.1 功能说明 ............................................................................................................... 25

2.8.2 函数名................................................................................................................... 25

2.8.3 输入参数 ............................................................................................................... 25

2.8.4 输出参数 ............................................................................................................... 25

2.9 设置当前用户名 ............................................................ 25

2.9.1 功能说明 ............................................................................................................... 25

2.9.2 函数名................................................................................................................... 25

2.9.3 输入参数 ............................................................................................................... 26

2.9.4 输出参数 ............................................................................................................... 26

2.10 清除U-KEY缓存 ........................................................... 26

2.10.1 功能说明 ............................................................................................................. 26

2.10.2 函数名................................................................................................................. 26

2.10.3 输出参数 ............................................................................................................. 26

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

2.11 修改U-KEY PIN码 ......................................................... 26

2.11.1 功能说明 ............................................................................................................. 26

2.11.2 函数名................................................................................................................. 26

2.11.3 输入参数 ............................................................................................................. 27

2.11.4 输出参数 ............................................................................................................. 27

2.12 查看操作日志和签章信息 ................................................... 27

2.12.1 功能说明 ............................................................................................................. 27

2.12.2 函数名................................................................................................................. 27

2.12.3 输入参数 ............................................................................................................. 27

2.12.4 输出参数 ............................................................................................................. 27

2.13 显示操作日志 ............................................................. 28

2.14 获取印章ID接口 .......................................................... 28

2.14.1 功能说明 ............................................................................................................. 28

2.14.2 函数名................................................................................................................. 29

2.14.3 输入参数 ............................................................................................................. 29

2.14.4 输出参数 ............................................................................................................. 29

2.15 获取证书ID接口 .......................................................... 29

2.15.1 功能说明 ............................................................................................................. 29

2.15.2 函数名................................................................................................................. 29

2.15.3 输入参数 ............................................................................................................. 29

2.15.4 输出参数 ............................................................................................................. 29

2.16 获取OCX调用过程异常信息 ................................................. 30

2.16.1 功能说明 ............................................................................................................. 30

2.16.2 函数名................................................................................................................. 30

2.16.3 输入参数 ............................................................................................................. 30

2.16.4 输出参数 ............................................................................................................. 30

2.17 验证UKEY PIN码接口 ....................................................... 30

2.17.1 功能说明 ............................................................................................................. 30

2.17.2 函数名 ................................................................................................................. 30

2.17.3 输入参数 ............................................................................................................. 30

2.17.4 输出参数 ............................................................................................................. 30

2.18 获取当前选择证书的CN接口 ................................................ 31

2.18.1 功能说明 ............................................................................................................. 31

2.18.2 函数名................................................................................................................. 31

2.18.3 输入参数 ............................................................................................................. 31

2.18.4 输出参数 ............................................................................................................. 31

2.19 获取操作人证书列表 ....................................................... 31

2.19.1 功能说明 ............................................................................................................. 31

2.19.3 输入参数 ............................................................................................................. 31

2.19.4 输出参数 ............................................................................................................. 32

3 电子凭证库服务端接口 .................................................. 32

3.1 电子凭证写入接口 .......................................................... 32

3.1.1 写入客户端签章的凭证 ....................................................................................... 32

3.1.2 写入客户端签名的凭证 ....................................................................................... 33

3.1.3 写入并发送服务器签章的凭证 (不建议使用) ............................................. 39

3.1.4 写入并发送服务器签名的凭证 ........................................................................... 40

3.1.5 写入指定位置服务器签章的凭证 ....................................................................... 34

3.1.6 写入指定位置服务器签名的凭证 ....................................................................... 35

3.1.7 写入并发送指定位置服务器签章的凭证 ........................................................... 36

3.1.8 写入并发送指定位置服务器签名的凭证 ........................................................... 37

3.1.9 写入不带位置服务器签名的凭证 ....................................... 错误!未定义书签。

3.2 电子凭证查询接口 .......................................................... 41

3.2.1 查询未读取的凭证 ............................................................................................... 53

3.2.2 查询未签收的凭证 ............................................................................................... 41

3.2.3 指定凭证号查询凭证 ........................................................................................... 47

3.2.4 指定日期查询凭证 ............................................................... 错误!未定义书签。

3.2.5 查询已发送凭证状态 ........................................................................................... 56

3.2.6 查询凭证打印次数 ............................................................................................... 48

3.2.7 查询凭证类型 ....................................................................................................... 49

3.2.8 指定凭证类型查询盖章位置 ............................................................................... 58

3.2.9 指定凭证类型查询盖章位置及名称 ................................................................... 46

3.2.10 查询凭证盖章列表 ............................................................................................. 50

3.2.11 读取机构印章列表 ............................................................................................. 51

3.2.12 查询日志信息接口 ............................................................................................. 54

3.2.13 批量查询发送凭证状态 ..................................................................................... 57

3.2.14 指定机构查询凭证状态接口 ............................................. 错误!未定义书签。

3.2.15 批量查询凭证状态 ............................................................................................. 42

3.2.16 批量查询被退回的凭证号(接收失败、签收失败、签收退回) ................. 44

3.2.17 验证不带位置的签名 ......................................................... 错误!未定义书签。

3.2.18 查询被篡改的凭证号 ......................................................... 错误!未定义书签。

3.2.19 获取签名、签章证书SN ................................................................................... 52

3.3 电子凭证状态更新接口 ...................................................... 59

3.3.1 确认凭证签收成功 ............................................................................................... 60

3.3.2 确认凭证签收失败 ............................................................................................... 61

3.3.3 退回凭证 ............................................................................................................... 62

3.3.4 作废凭证 ............................................................................................................... 63

3.3.5 发送凭证 ............................................................................................................... 64

3.3.6 发送全版本凭证 ................................................................................................... 65

3.3.8 指定位置撤销凭证 ............................................................................................... 66

3.3.9 撤销凭证不带位置签名 ....................................................... 错误!未定义书签。

3.4 电子凭证库对账接口 ........................................ 错误!未定义书签。

3.4.1 电子凭证库与业务系统对账 .............................................. 错误!未定义书签。

3.4.2 电子凭证库之间对账 ........................................................... 错误!未定义书签。

3.5 电子凭证库回调接口 ........................................................ 68

3.6 电子凭证库绿色通道接口 .................................................... 69

3.6.1 数据请求 ............................................................................................................... 69

3.6.2 数据发送 ............................................................................................................... 70

3.6.3 获取数据 ............................................................................................................... 71

3.6.4 数据请求回调(业务系统提供) ....................................................................... 72

3.6.5 数据发送到达通知(业务系统提供) ............................................................... 73

4 电子凭证业务报文格式 .................................................. 73

4.1 客户端待签名 (章)凭证报文 ................................................. 73

4.2 服务端待签名 (章)凭证报文 ................................................. 74

4.3 电子凭证报文 .............................................................. 74

4.4 凭证签名(章)位置报文 ...................................................... 74

4.5 凭证签名(章)结果报文 ...................................................... 74

4.6 业务系统与凭证库之间对账报文 .............................................. 75

4.7 业务系统与凭证库之间对账返回报文 .......................................... 76

4.8 不带位置凭证服务端签名报文 ................................................ 76

4.9 不带位置凭证服务端签名结果报文 ............................................ 76

4.10 不带位置凭证服务端验签报文 ............................................... 77

4.11 查询日志信息服务端返回报文 ............................................... 77

4.12 消息对账单报文 ........................................................... 78

4.13 操作人证书列表 ........................................................... 78

5 电子凭证库异常 ........................................................ 79

5.1 客户端接口异常 ............................................................ 79

5.2 服务端接口异常 ............................................................ 80

5.2.1 系统级异常 ........................................................................................................... 80

5.2.2 参数异常 ............................................................................................................... 80

5.2.3 报文异常 ............................................................................................................... 80

5.2.4 数据库访问异常 ................................................................................................... 81

5.2.5 业务逻辑异常 ....................................................................................................... 81

5.2.6 签名服务异常 ....................................................................................................... 81

5.2.8 消息中间件异常 ................................................................................................... 82

5.2.9 接收凭证异常 ....................................................................................................... 82

5.2.10 回调异常 ............................................................................................................. 82

6 业务场景举例 .......................................................... 83

6.1 直接支付业务 .............................................................. 83

6.1.1 业务流程图 ........................................................................................................... 83

6.1.2 流程说明 ............................................................................................................... 85

6.2 授权支付业务 .............................................................. 87

6.2.1 业务流程图 ........................................................................................................... 87

6.2.2 流程说明 ............................................................................................................... 89

6.3 拨款业务 .................................................................. 91

6.3.1 业务流程图 ........................................................................................................... 91

6.3.2 流程说明 ............................................................................................................... 93

7 调用示例代码 .......................................................... 95

7.1 客户端接口 ................................................................ 95

7.1.1 JAVA调用 ............................................................................................................... 95

7.1.2 C++调用.................................................................................................................. 96

7.1.3 C#调用.................................................................................................................... 99

7.2 服务端接口 ............................................................... 101

7.2.1 JAVA调用 ............................................................................................................. 101

7.2.2 C/C++调用 ............................................................................................................ 102

7.2.3 C#调用.................................................................................................................. 103

1 电子凭证库接口说明

财政国库无纸化支撑系统(简称:无纸化支撑系统)需要支持财政与人行(商

业银行)交互电子凭证数据全流程管理,主要包括:

1、对全流程电子凭证进行凭证分类、签名、验签、签章及验章操作,并支

持全流程电子数据版本化管理。

2、实现财政与人行和商业银行系统间进行电子凭证数据的安全传输。

为了简化业务系统实现以上需求,无纸化支撑系统将业务系统对电子凭证的

管理进行分析整理后,归纳出对电子凭证库的接口需求,分为电子凭证库客户端接口和电子凭证库服务端接口两大类:

1、 电子凭证库客户端接口主要提供凭证盖章、查看及打印可视化的操作。

2、 电子服务端接口主要提供凭证保存及发送等后台操作。

以下分客户端接口和服务端接口分别阐述相关接口,并提供部分调用示例供

财政、人行、商业银行业务系统参考开发。

2 电子凭证库客户端接口

本章节描述了电子凭证库客户端的接口,调用方式采用ocx调用。调用接口

异常时,需要调用GetLastErr接口获取异常信息并反馈给前端用户。

2.1 设置电子凭证服务地址

2.1.1 功能说明

设置电子凭证服务地址,用于与电子凭证服务器通讯。

电子凭证库客户端为简化业务系统调用的步骤,封装了如获取电子凭证模

板、根据凭证号读取凭证等共用的查询操作,而此类操作需要电子凭证库客户端根据业务系统设置的地址访问电子凭证库服务。

业务系统调用电子凭证库客户端时,第一步应设置电子凭证库与电子印章的服务地址。

由于业务系统的客户端所处的网段不同,在设置电子凭证库与电子印章服务地址时需要根据

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

IP地址适配。

若业务系统客户端IP地址为外网网段,应设置电子凭证库与电子印章服务的外网地址;

若业务系统客户端IP地址为内网网段,应设置电子凭证库与电子印章服务的内网地址;

2.1.2 函数名

int SetEvoucherServiceUrl (String url);

2.1.3 输入参数

2.1.4 输出

2.1.5 代码示例

String evoucherUrl =null;//电子凭证库服务地址 String estampUrl =null;//电子印章服务地址 Int a=0;//返回结果

//读取业务系统客户端IP地址,并根据网段判断IP地址是内外网 boolean isInner=this. decisionNetwork(客户端IP); If(isInner){

//客户端为内网地址,获取电子凭证库与电子印章内网地址

evoucherUrl =this.getInnerEVoucherUrl(); estampUrl =this. getInnerEStampUrl(); }else{

//客户端为外网地址,获取电子凭证库与电子印章外网地址

evoucherUrl =this.getOuterEVoucherUrl(); estampUrl =this. getOuterEStampUrl(); }

//设置电子凭证库服务地址

a=OCX. SetEvoucherServiceUrl(evoucherUrl); if(a!=0)

throw new RuntimeException(“初始化电子凭证库服务地址失败,”+ OCX. GetLastErr()); //设置电子印章服务地址

a= OCX. SetEstampServiceUrl (estampUrl); if(a!=0)

throw new RuntimeException(“初始化电子印章库服务地址失败,”+ OCX. GetLastErr()); // OCX初始化 // OCX其他操作

2.2 设置电子印章服务地址 2.2.1 功能说明

设置电子印章服务器地址,用于与电子印章服务器通讯。

电子凭证库客户端签章与验章操作都需要访问电子印章服务,若通过电子凭

证库服务访问电子印章,大大的降低了客户端签章与验章的性能。采用电子凭证库客户端直连电子印章服务的模式使签章、验章更加的高效。

2.2.2 函数名

int SetEstampServiceUrl (String url);

2.2.3 输入参数

2.2.4 输出

2.3 生成电子签章报文 2.3.1 功能说明

业务系统客户端调用此接口生成电子签章结果报文传至服务端,再由业务系统服务端调用电子凭证服务接口“写入客户端签章的凭证”保存电子凭证,完成客户端电子签章操作。

客户端签章依赖UKEY,电子印章类型分为公章与私章两类。 私章烧制入UKEY,公章需要与UKEY的证书绑定。

2.3.2 函数名

String GetVoucherStamp(String certID, String admDivCode, int stYear, String

vtCode, String stamp, String voucherXML)

2.3.3 输入参数

2.3.4 输出参数

2.4 生成电子签名报文 2.4.1 功能说明

业务系统客户端调用此接口获取电子签名结果报文传至服务端,再由业务系统服务端调用电子凭证服务接口“写入客户端签名的凭证”保存电子凭证,完成客户端电子签名操作。

2.4.2 函数名

String GetVoucherSign(string certID, string admDivCode, int stYear, string vtCode, string certInfo,string voucherXML );

2.4.3 输入参数

2.4.4 输出参数

2.5 凭证显示控件(OCX)

查询打印控件用于实现对电子凭证的可视化显示打印。

包括控件初始化、加载凭证和设置需要显示的凭证3个主要接口; 加载凭证:增加不带报文的接口。 辅助接口包括凭证打印接口。

2.5.1 初始化

2.5.1.1 功能说明

用于初始化显示控件,从电子凭证服务端加载电子凭证的模板。

2.5.1.2 函数名

int Initialize(String certID, String admDivCode, int stYear, String vtCode, String reserver1, int displayMode, int ParamValue, int defaultPage);

2.5.1.3 输入参数:

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

2.5.1.4 输出参数:

2.5.2

加载电子凭证

2.5.2.1 功能说明

添加要显示凭证信息用于客户端程序,调用此方法添加需要显示的签章凭证信息,逐笔添加。

2.5.2.2 函数名

int AddVoucher( String voucherNo, String xmlBody);

2.5.2.3 输入参数

2.5.2.4 输出参数

2.5.3 指定凭证号加载电子凭证

2.5.3.1 功能说明

不带报文的接口,接口自动从服务器加载凭证

对于回单不做全版本验证(只验证最新数据的完整性),显示时加载回单的原文进行展现。

2.5.3.2 函数名

int AddVoucherfromServer(String voucherNo);

2.5.3.3 输入参数

2.5.3.4 输出参数

2.5.4 指定原文加载电子凭证

2.5.4.1 功能说明

可将从后台下载的凭证(调用后台readVoucherAgain得到的报文)直接加载到OCX中。

int AddVoucherXmls(String XmlVouchers, int bUpdatefromVoucher);

2.5.4.3 输入参数

2.5.4.4 输出参数

2.5.5 显示指定的凭证(凭证编号)

2.5.5.1 功能说明

定位到显示的凭证,OCX自动验签(章),取章显示。

2.5.5.2 函数名

int SetCurrentVoucher (String voucherNo);

2.5.5.3 输入参数

2.5.6 显示指定的凭证(凭证索引)

2.5.6.1 功能说明:

本接口已不推荐使用。

定位到显示的凭证,OCX自动验签(章),取章显示。

2.5.6.2 函数名

int displayVoucherByIndex(int voucherIndex);

2.5.6.3 输入参数

2.5.6.4 输出参数

2.5.7 打印凭证(凭证号)

2.5.7.1 功能说明

打印加载到显示控件的凭证。

int PrintVoucherByNo(String voucherNo, int pageNo);

2.5.7.3 输入参数

2.5.7.4 输出参数

2.5.8 打印凭证(按凭证索引号)

2.5.8.1 功能说明

打印加载到显示控件的凭证。

2.5.8.2 函数名

Int PrintVoucherByIndex(int voucherIndex, int pageNo);

2.5.8.3 输入参数

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

2.5.8.4 输出参数

2.5.9 打印凭证(按索引范围批量打印)

2.5.9.1 功能说明

打印加载到显示控件的凭证。

2.5.9.2 函数名

int PrintVoucherByIndexRange(int beginIndex, int endIndex int pageNo);

2.5.9.3 输入参数

2.5.9.4 输出参数

2.5.10 打印当前显示的凭证

2.5.10.1 功能说明

打印当前ocx中显示的凭证

2.5.10.2 函数名

int PrintCurrentVoucher(int bShowPrintSettingDialog)

2.5.10.3 输入参数

2.5.10.4 输出参数

2.5.11 清空凭证列表

2.5.11.1 功能说明

清除控件中的数据,保留模板。

2.5.11.2 函数名

void ResetContent();

2.5.12 移除指定凭证(凭证编号)

2.5.12.1 功能说明

删除控件中某笔凭证数据。

2.5.12.2 函数名

int removeVoucherByNo(String VoucherNo );

2.5.12.3 输入参数

2.5.12.4 输出参数

2.5.13 移除指定凭证(凭证索引)

2.5.13.1 功能说明

删除控件中某笔凭证数据。

2.5.13.2 函数名

int removeVoucherByIndex(int voucherIndex );

2.5.13.4 输出参数

2.5.14 查看凭证的上一联

2.5.14.1 功能说明

实现查看凭证的上一联。

2.5.14.2 函数名

int PageUp (void);

2.5.14.3 输出参数

2.5.15 查看凭证下一联

2.5.15.1 功能说明

实现查看凭证下一联

int PageDown (void);

2.5.15.3 输出参数

2.5.16 获取凭证联数

2.5.16.1 功能说明

获取凭证总联数

2.5.16.2 函数名

int GetPageCount (void);

2.5.16.3 输出参数

2.5.17 获取加载的凭证总数

2.5.17.1 功能说明

获取当前OCX已加载的凭证总数

2.5.17.2 函数名

int GetVoucherCount(void)

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

2.5.17.3 输入参数

2.5.17.4 输出参数

2.5.18 显示下一条凭证

2.5.18.1 功能说明

跳转显示OCX缓存中的下一条凭证

2.5.18.2 函数名

int GotoNextVoucher(void)

2.5.18.3 输入参数

2.5.18.4 输出参数

2.5.19 显示上一条凭证

2.5.19.1 功能说明

跳转显示OCX缓存中的上一条凭证

2.5.19.2 函数名

int GotoPrevVoucher(void)

2.5.19.3 输入参数

2.5.19.4 输出参数

2.5.20 获取当前显示凭证的凭证编号

2.5.20.1 功能说明

获取当前显示凭证的凭证编号

2.5.20.2 函数名

int GetCurrentVoucherNo(void)

2.5.20.3 输入参数

2.5.21 获取当前的显示的凭证索引

2.5.21.1 功能说明

获取当前显示的凭证索引

2.5.21.2 函数名

int GetCurrentVoucherIndex(void)

2.5.21.3 输入参数

2.5.21.4 输出参数

2.5.22 获取当前显示的凭证联号

2.5.22.1 功能说明

获取当前显示的凭证联号

2.5.22.2 函数名

int GetCurrentPageNo(void)

2.5.22.4 输出参数

2.5.23 显示任意联号凭证

2.5.23.1 功能说明

显示凭证时,可跳转到任意联显示

2.5.23.2 函数名

int GotoPage (int PageNo);

2.5.23.3 输入参数

2.5.23.4 输出参数

2.5.24 放大显示凭证

2.5.24.1 功能说明

放大显示当前正在显示的凭证

void ZoomIn (void);

2.5.25 缩小显示凭证

2.5.25.1 功能说明

缩小显示当前正在显示的凭证

2.5.25.2 函数名

void ZoomOut(void);

2.5.26 自动适应显示凭证

2.5.26.1 功能说明

缩放页面显示比例到刚好在查看区域中完整显示出来。

2.5.26.2 函数名

void ZoomToFit(void);

2.5.27 刷新显示凭证

2.5.27.1 功能说明

实现动态显示签章效果(即显示凭证时进行签章操作,签章后调用此接口可刷新凭证显示印章)

2.5.27.2 函数名

int Refresh (String voucherNo)

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

2.5.27.3 输入参数

2.5.27.4 输出参数

2.5.28 设定显示指定索引凭证

2.5.28.1 功能说明

设置显示指定索引的凭证

2.5.28.2 函数名

int SelectVoucherIndex(int Index)

2.5.28.3 输入参数

2.5.28.4 输出参数

2.5.29 设置显示指定凭证号凭证

2.5.29.1 功能说明

设置显示指定凭证号的凭证

2.5.29.2 函数名

int SelectVoucherNo(String voucherNo)

2.5.29.3 输入参数

2.5.29.4 输出参数

2.5.30 设置凭证显示模式

2.5.30.1 功能说明

设置凭证的显示模式,支持单页模式和列表模式

2.5.30.2 函数名

int SetDisplayMode(int nDisPlayMode, int ParamValue)

2.5.30.3 输入参数

2.5.30.4 输出参数

2.6 不显示控件打印(后台批量打印) 2.6.1 功能说明

实现凭证不显示控件后台批量打印。

2.6.2 函数名

int PrintAllVoucher (String certID, String admDivCode, int stYear, String vtCode, int defaultPage,String voucherNo);

2.6.3 输入参数

2.6.4 输出参数

2.7 打印预览接口 2.7.1 功能说明

实现凭证打印预览。

2.7.2 函数名

int PrintPreview (String certID, String admDivCode, int stYear, String vtCode, int PageNo,String voucherNo);

2.7.3 输入参数

2.7.4 输出参数

2.8 设置当前用户名 2.8.1 功能说明

设置当前用户名,用于打印凭证时在凭证中显示。

2.8.2 函数名

int SetCurrentUser(String UserName);

2.8.3 输入参数

2.8.4 输出参数

2.9 清除U-key缓存 2.9.1 功能说明

清除U-Key对于pin码的缓存

2.9.2 函数名

int ClearPinCache(void);

2.9.3 输出参数

2.10 修改U-key PIN码 2.10.1 功能说明

修改UKEY的pin码

2.10.2 函数名

int ChangeUserPin(String oldPin, String newPin);

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

2.10.3 输入参数

2.10.4 输出参数

2.11 查看操作日志和签章信息 2.11.1 功能说明

实现查看指定凭证号的操作日志以及签章信息

2.11.2 函数名

int GetLogInfo (String certID, String admDivCode, int stYear, String vtCode, String voucherNo);

2.11.3 输入参数

2.11.4 输出参数

2.12 显示操作日志

2.12.1.1 功能说明

实现查看指定凭证号的操作日志以及签章信息

2.12.1.2 函数名

int DlgShowLogInfo(String certID, String admDivCode, int stYear, String vtCode, String voucherNo)

2.12.1.3 输入参数

2.12.1.4 输出参数

2.13 获取印章id接口 2.13.1 功能说明

弹出选章界面,获取选章印章的id。

此接口只封装了针对科友自身的印章系统,其他公司印章接口不能通过此接口获取印章id。

2.13.2 函数名

String DlgSelectStampId(void) ;

2.13.3 输入参数

无。

2.13.4 输出参数

2.14 获取证书id接口 2.14.1 功能说明

弹出选证书界面,获取所选证书的证书id。

此接口只封装了针对科友自身的印章系统,其他公司印章接口不能通过此接口获取印章id。

2.14.2 函数名

String DlgSelectCertId (void)

2.14.3 输入参数

2.14.4 输出参数

2.15 获取ocx调用过程异常信息 2.15.1 功能说明

ocx调用接口异常时,通过该接口获取错误信息。

2.15.2 函数名

String GetLastErr ();

2.15.3 输入参数

无。

2.15.4 输出参数

2.16 验证Ukey Pin码接口 2.16.1 功能说明

用户可调用此接口选择证书并验证Ukey Pin码,若UKEY中含有多个证书则会弹出提示框选择证书。

2.16.2 函数名

int VerifyPin(void);

2.16.3 输入参数

2.16.4 输出参数

2.17 获取当前选择证书的CN接口 2.17.1 功能说明

用户调用此接口返回当前用户选择证书的CN。

2.17.2 函数名

String GetCurCertCN(void);

2.17.3 输入参数

2.17.4 输出参数

2.18 获取操作人证书列表 2.18.1 功能说明

用户调用此接口返回当前Ukey中所有操作人证书列表。

2.18.2 函数名

String GetOperatorCertsList (String StampID);

2.18.3 输入参数

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

2.18.4 输出参数

3 电子凭证库服务端接口

本章节描述了电子凭证库服务端的接口,调用方式采用WebService。调用异

常见服务端接口异常。

3.1 电子凭证写入接口

本章节描述了与电子凭证保存相关的接口。

3.1.1 写入客户端签章的凭证

3.1.1.1 功能说明

客户端对业务数据签章完毕后,调用此接口保存签章及凭证信息入电子凭证

库,对同一凭证同一盖章位置不允许重复保存。

3.1.1.2 函数名

Public Map<String,String> saveStampVoucher(String certID, String

admDivCode, int stYear, String vtCode, byte[] signedVoucher) throws Exception;

3.1.1.3 输入参数

32

3.1.1.5 异常

3.1.2 写入客户端签名的凭证

3.1.2.1 功能说明

客户端对业务数据签名后,调用此接口保存签名及凭证信息入电子凭证库。

3.1.2.2 函数名

public Map<String,String> saveSignVoucher(string certID, string

admDivCode, int stYear, string vtCode, byte[] signedVoucher) throws Exception;

3.1.2.3 输入参数

33

3.1.2.5 异常

3.1.3 写入指定位置服务器签章的凭证

3.1.3.1 功能说明

使用业务系统指定的印章编号对电子凭证进行服务器端签章并保存入库。

3.1.3.2 函数名

Map<String,String> signStampByNos (string certID ,String admDivCode, int

setYear, String vtCode, byte[] vouchers, String Stamp) throw Exception;

3.1.3.3 输入参数

34

3.1.3.5 异常

3.1.4 写入指定位置服务器签名的凭证

3.1.4.1 功能说明

将业务系统指定的印章编号进行服务器端签名并保存入库

3.1.4.2 函数名

Map<String,String> signByNos (string certID ,String admDivCode, int setYear,

String vtCode, byte[] vouchers, String Stamp) throw Exception;

3.1.4.3 输入参数

35

3.1.4.4 输入参数

3.1.4.5 异常

3.1.5 写入并发送指定位置服务器签章的凭证

3.1.5.1 功能说明

指定的印章编号进行服务器端签章并保存入电子凭证库并发送

3.1.5.2 函数名

Map<String,String> signStampByNosAndSend (string certID ,String admDivCode, int setYear, String vtCode, byte[] vouchers, String Stamp, String srcOrgType, String decOrgType) throw Exception;

36

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

3.1.5.4 输入参数

3.1.5.5 异常

3.1.6 写入并发送指定位置服务器签名的凭证

3.1.6.1 功能说明

指定的印章编号进行服务器端签名保存入电子凭证库并发送。

Map<String,String> signByNosAndSend (string certID ,String admDivCode, int setYear, String vtCode, byte[] vouchers, String Stamp, String srcOrgType, String decOrgType) throw Exception;

3.1.6.3 输入参数

3.1.6.4 输出参数

3.1.6.5 异常

3.1.7

3.1.7.1 功能说明

此接口依赖电子凭证库系统管理功能“服务器端签章设置”功能。

此接口根据“服务器端签章设置”功能中设置的签章位置及印章ID对电子凭证采用服务器电子签章并发送。

此接口已不建议使用,建议使用替代接口“写入指定位置服务器签章的凭证”。

3.1.7.2 函数名

Public Map<string,string> writeVoucher (string certID ,String admDivCode, int stYear, String vtCode, byte[] voucher, String srcOrgType, String decOrgType) throw Exception;

3.1.7.3 输入参数

3.1.7.4 输出参数

3.1.7.5 异常

3.1.8

3.1.8.1 功能说明

此接口依赖电子凭证库系统管理功能“服务器端签章设置”功能。

此接口根据“服务器端签章设置”功能中设置的签名位置及证书SN对电子凭证采用服务器电子签名并发送。

此接口已不建议使用,建议使用替代接口“写入指定位置服务器签名的凭证”

3.1.8.2 函数名

public Map<String,String> saveAndSendVoucher(string certID, string admDivCode, int stYear, string vtCode, byte[] voucher, String srcOrgType, String decOrgType) throws Exception;

3.1.8.3 输入参数

3.1.8.4 输出参数

3.1.8.5 异常

3.2 电子凭证查询接口 3.2.1 查询未签收的凭证

3.2.1.1 功能说明

用于指定凭证数目读取电子凭证库中未签收的外部系统电子凭证数据,若传入凭证读取数过大,则按电子凭证库设置的凭证读取数上限返回电子凭证数据。

未读取和未签收都可以重复读取,未读取的凭证读取后凭证状态为已读取。 此接口读取的电子凭证应在业务系统入库后调用签收接口确认凭证状态,避免造成电子凭证重复读取。

业务系统调用此接口可采用轮询线程,或者使用其配套的通知接口“电子凭证到达通知”。

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

3.2.1.2 函数名

public byte[]readVoucherAgain(String certID, String admDivCode, int stYear, Strin readVoucherAgain g vtCode, int voucherCount) throws Exception;

3.2.1.3 输入参数

3.2.1.4 输出参数

3.2.1.5 异常

3.2.2 批量查询凭证状态

3.2.2.1 功能说明

用于批量查询发送单或回单的凭证状态及失败状态下的错误原因。 电子凭证在此接口中分为我方机构发起以及外部机构发起两类,

若电子凭证由我方机构发起,查询的状态结果参照输出参数中的“发送单状态”部分。

若电子凭证由对方机构发起,我方机构接收并发送回单,查询的状态结果参照输出参数中的“回单状态”部分。

3.2.2.2 函数名

public Map<String,Object[]> String admDivCode, int stYear, String vtCode, String[] voucherNo);

3.2.2.3 输入参数

3.2.2.4 输出参数

3.2.2.5 异常

3.2.3 批量查询被退回的凭证号(接收失败、签收失败、签收退回)

3.2.3.1 功能说明

业务系统调用电子凭证库接口发送电子凭证后,需及时获取被退回的电子凭证并进行后续的业务处理,避免延缓资金的支出。

此接口可按指定的日期段查询被退回的电子凭证,电子凭证被退回包含对方电子凭证库接收失败、对方业务系统签收失败、对方业务系统签收退回三种情况:

被对方电子凭证库退回,对方电子凭证库在接收到电子凭证解析失败会发送接收失败回执,如原文被篡改导致的验章失败,业务系统根据退回原因可选择重发或撤销电子凭证,从而修改对应电子凭证的状态;

被对方业务系统程序退回,对方电子凭证库接收电子凭证入库后,业务系统读取电子凭证时发生异常无法入库,此时业务系统会调用签收失败接口退回凭证,如发送授权支付额度给代理银行,而账户并非本行, 业务系统根据退回原因可选择重发或撤销电子凭证,从而修改对应电子凭证的状态;

被对方业务系统人工退回,对方业务系统对电子凭证签收成功后,人工对电子凭证进行审核或支付操作时,发现凭证有问题或无法转账支付,业务系统调用签收退回接口退回凭证,如’非我行代理预算单位’,’该账户已在我行销户’,’归属网点行号或行名错误’, 业务系统需作废或撤销凭证后重新生成凭证,从而修改对应电子凭证的状态;

业务系统在使用此接口时可根据业务需求选择查询全部退回类型的电子凭证,或者选择查询部分退回类型的电子凭证。

3.2.3.2 函数名

public Map<String,Object[]> batchQueryVoucherNosByBackStatus(String certID, String admDivCode,int stYear, String vtCode, String startDate, String endDate, String[] backStatus) throws Exception;

3.2.3.3 输入参数

3.2.3.4 输出参数

3.2.3.5 异常

3.2.4 指定凭证类型查询盖章位置及名称

3.2.4.1 功能说明

用于查询电子凭证库的盖章位置及名称。

3.2.4.2 函数名

public Map<String,String> queryStampPositionWithName (String certID, String admDivCode, int stYear, String vtCode);

3.2.4.3 输入参数

3.2.4.4 输出参数

3.2.4.5 异常

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

3.2.5 指定凭证号查询凭证

3.2.5.1 功能说明

指定电子凭证号查询有效的电子凭证,不过滤电子凭证的发送、签收、退回

等状态。

3.2.5.2 函数名

public byte[] readVoucherByNo(String certID, String admDivCode, int stYear,

String vtCode, String[] voucherNo) throws Exception;

3.2.5.3 输入参数

3.2.5.4 输出参数

3.2.5.5 异常

3.2.6 查询凭证打印次数

3.2.6.1 功能说明

用于查询指定凭证的打印次数,只支持单笔查询。

3.2.6.2 函数名

public int queryVoucherPrintCount(string certID, string admDivCode, int stYear,

string vtCode, String VoucherNo) throws Exception;

3.2.6.3 输入参数

3.2.6.4 输出参数

3.2.6.5 异常

3.2.7 查询凭证类型

3.2.7.1 功能说明

用于查询电子支付库中已配置的电子凭证类型。

3.2.7.2 函数名

public Map<String,String>

admDivCode, int stYear); queryVoucherType(string certID, string

3.2.7.3 输入参数

3.2.7.4 输出参数

3.2.7.5 异常

3.2.8.1 功能说明

指定凭证号查询电子凭证的已盖章列表。

3.2.8.2 函数名

public Map<String, String> queryVoucherSignStampPositions(String certID,

String admDivCode, int stYear, String vtCode, String voucherNo)

3.2.8.3 输入参数

3.2.8.4 输出参数

3.2.8.5 异常

3.2.9.1 功能说明

根据传入机构读取电子印章服务器中对应的印章列表,此接口仅适用于江南

科友的电子印章系统。

3.2.9.2 函数名

public List<Map<String,String>> getStampInfo

admDivCode, int stYear, String orgType); (String certID,String

3.2.9.3 输入参数

3.2.9.4 输出参数

3.2.9.5 异常

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

3.2.10 获取签名、签章证书SN

3.2.10.1 功能说明

根据凭证类型、区划码、年度、凭证号、凭证位置获取电子凭证的签名人或签章人证书

的SN。

3.2.10.2 函数名

public String getSnInfo(String certID, String admDivCode, int stYear,

String vtCode, String[] voucherNos, String stampNo)

3.2.10.3 输入参数

3.2.10.4 输出参数

3.2.10.5 异常

3.2.11 指定机构查询凭证状态接口

3.2.11.1 功能说明

指定目标机构查询电子凭证状态。适用与一对多的电子凭证转发,无此业务

不建议使用。

电子凭证在此接口中分为我方机构发起以及外部机构发起两类,

若电子凭证由我方机构发起,查询的状态结果参照输出参数中的“发送单状态”部分。

若电子凭证由对方机构发起,我方机构接收并发送回单,查询的状态结果参照输出参数中的“回单状态”部分。

3.2.11.2 函数名

public Map<String,Object[]> queryVoucherStatusByOrgType (String certID,String

admDivCode, int stYear, String vtCode, String[] voucherNo,String decOrgType);

3.2.11.3 输入参数

3.2.11.4 输出参数

3.2.11.5 异常

3.2.12 查询日志信息接口

3.2.12.1 功能说明

用于查询电子凭证库日志、盖章/签名信息。

3.2.12.2 函数名

public byte[] queryVoucherLogs (String certID,String admDivCode, int stYear,

String vtCode, String[] voucherNos);

3.2.12.3 输入参数

3.2.12.4 输出参数

3.2.12.5 异常

3.2.13

3.2.13.1 功能说明

凭证读取功能用于指定凭证数目读取电子凭证库中未读取的外部系统电子

凭证数据,若传入凭证读取数过大,则按电子凭证库设置的凭证读取数上限返回电子凭证数据。

业务系统调用此接口获取电子凭证时,电子凭证状态已修改为已读取。此时

业务系统若入库失败,将导致电子凭证丢失。

此接口需要 “查询未签收凭证”接口配合处理上述数据丢失的情况,处理

较为复杂,已不建议使用,请直接使用替代接口“查询未签收凭证”。

3.2.13.2 函数名

public byte[] readVoucher(String certID, String admDivCode, int stYear, String

vtCode, int voucherCount) throws Exception;

3.2.13.3 输入参数

3.2.13.4 输出参数

3.2.13.5 异常

3.2.14

3.2.14.1 功能说明

用于查询由本方机构发起的电子凭证发送后的状态。

此接口已不建议使用,请使用替代接口“批量查询凭证状态”。

3.2.14.2 函数名

public int querySentVoucherStatus(string certID, string admDivCode, int stYear, string vtCode, string voucherNo) throws Exception;

3.2.14.3 输入参数

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

3.2.14.4 输出参数

3.2.14.5 异常

3.2.15

3.2.15.1

功能说明

用于批量查询由本方机构发起的电子凭证发送后的状态。 此接口已不建议使用,请使用替代接口“批量查询凭证状态”。

3.2.15.2 函数名

public Map<String,String> batchQuerySentVoucherStatus (String certID,String admDivCode, int stYear, String vtCode, String[] voucherNos);

3.2.15.3 输入参数

57

3.2.15.4 输出参数

3.2.15.5 异常

3.2.16

3.2.16.1 功能说明

用于查询电子凭证库中的盖章位置编号。

此接口已不建议使用,请使用替代接口“指定凭证类型查询盖章位置及名称”。

3.2.16.2 函数名

public Object[] queryStampPosition(String certID, String admDivCode, int stYear, String vtCode);

3.2.16.3 输入参数

58

3.2.16.4 输出参数

3.2.16.5 异常

3.3 电子凭证状态更新接口

本章节描述电子凭证库在入库后的状态更新类接口,包含电子凭证的签收状态,退回状态、作废状态以及发送状态。下图描述了电子凭证状态的流转关系。

59

3.3.1 确认凭证签收成功

3.3.1.1 功能说明

业务系统处理未签收的电子凭证成功后,调用此接口反馈签收状态至发送方业务系统。

3.3.1.2 函数名

public void confirmVoucher(string certID, string admDivCode, int stYear, string vtCode, string[] voucherNo);

3.3.1.3 输入参数

3.3.1.4 输出参数

无。

60

3.3.1.5 异常

3.3.2 确认凭证签收失败

3.3.2.1 功能说明

业务系统处理未签收的电子凭证失败后,调用此接口反馈签收状态至发送方业务系统。

3.3.2.2 函数名

public void confirmVoucherFail(string certID, string admDivCode, int stYear, string vtCode, string[] voucherNo, string[] errMsg);

3.3.2.3 输入参数

3.3.2.4 输出参数

无。

61

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

3.3.2.5 异常

3.3.3 退回凭证

3.3.3.1 功能说明

凭证退回接口用于指定凭证号退回电子凭证至源机构,需说明退回原因。

需退回的电子凭证的状态应为签收成功。

3.3.3.2 函数名

Public void returnVoucher(string certid,string admDivCode, int stYear, string

vtCode, string[] voucherNo, String[] errMsg)

3.3.3.3 输入参数

3.3.3.4 输出参数

3.3.3.5 异常

62

3.3.4 作废凭证

3.3.4.1 功能说明

作废本方机构写入电子凭证的全部签名或签章记录。

外部机构写入的的电子凭证版本无法作废,可调用“退回接口”退回至源机

构。

3.3.4.2 函数名

public void discardVoucher(String certID, String admDivCode, int stYear, String

vtCode, String[] voucherNo) throws Exception;

3.3.4.3 输入参数

3.3.4.4 输出参数

3.3.4.5 异常

63

3.3.5 发送凭证

3.3.5.1 功能说明

将本方写入的电子凭证及其签名签章结果发送给指定的机构。

此接口建议使用,在电子凭证重复发送时的必要接口。

3.3.5.2 函数名

public void sendVoucher(String certID, String admDivCode, String srcOrgType,

String decOrgType, int stYear, String vtCode, String[] voucherNo) throws Exception;

3.3.5.3 输入参数

3.3.5.4 输出参数

3.3.5.5 异常

64

3.3.6 发送全版本凭证

3.3.6.1 功能说明

将凭证全版本签章记录发送到指定的机构;不区分电子凭证的签名签章结果写入方(本方机构或外部机构)。适用与一对多的电子凭证转发,无此业务不建议使用。

3.3.6.2 函数名

public void sendVoucherFullSigns(String certID, String admDivCode,

String srcOrgType, String decOrgType, int stYear, String vtCode,

String[] voucherNo) throws Exception;

3.3.6.3 输入参数

3.3.6.4 输出参数

3.3.6.5 异常

65

3.3.7 指定位置撤销凭证

3.3.7.1 功能说明

指定撤销电子凭证的签名或签章记录。

撤销的电子凭证必须是本方写入的,外部机构写入的的电子凭证版本不允许撤销,可调用“退回接口”退回至源机构。

3.3.7.2 函数名

public void cancelStampWithPosition(String certID, String admDivCode, int stYear, String vtCode, String voucherNo, String stamp_no)

3.3.7.3 输入参数

3.3.7.1 输出参数

66

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

3.3.8 撤销凭证(不建议使用)

3.3.8.1 功能说明

撤销凭证将作废凭证最后一次的凭证版本记录,与之相关的签名/签章信息将失效。

撤销的电子凭证必须是本方写入的,外部机构写入的电子凭证版本不允许撤销,可调用“退回接口”退回至源机构。

本接口已不建议使用,建议使用替代接口“指定位置撤销凭证”。

3.3.8.2 函数名

public void cancelStamp(String certID, String admDivCode, int stYear, String vtCode, String[] eVoucherList) throws Exception;

3.3.8.3 输入参数

3.3.8.4 输出参数

67

3.4 电子凭证库回调接口

3.4.1.1 电子凭证到达通知 3.4.1.1.1 功能说明

对方业务系统的电子凭证到达本方电子凭证库后,触发本方电子凭证库调用本方业务系统的到达通知接口。此接口读取的凭证与“查询未签收的凭证”接口返回结果同步;业务系统接收到到达通知后可调用“查询未签收的凭证”接口获取对应凭证类型的电子凭证。

3.4.1.1.2 函数名

Public void voucherArrivedNotify(String admDivCode,int stYear,String vtCode);

3.4.1.1.3 输入参数

3.4.1.1.4 输出参数

68

3.4.1.1.5 异常

3.5 电子凭证库绿色通道接口 3.5.1 数据请求

3.5.1.1 功能描述

本方业务系统与对方业务系统借用双方凭证库的消息中间件进行数据传输,数据请求为同步消息发送接收模式,本方业务系统发送数据后需接收到对方业务系统的确认接收回执后才完成数据发送操作。

3.5.1.2 函数名

public byte[] requestData(String certID, String admDivCode, String srcOrgType, String decOrgType, int stYear, byte[] message) throw Exception;

3.5.1.3 输入参数

69

3.5.1.5 异常

3.5.2 数据发送

3.5.2.1 功能描述

本方业务系统通过凭证库的消息中间件作为传输媒介发送数据给对方业务系统,发送完成后发送方即成功结束;对方凭证库检查到消息中间件中消息后异步通知接收方业务系统有消息到达。

3.5.2.2 函数名

public void sendData(String certID, String admDivCode, String srcOrgType, String decOrgType, int stYear, byte[] message) throw Exception;

3.5.2.3 输入参数

70

3.5.2.5 异常

3.5.3 获取数据

3.5.3.1 功能描述

获取业务系统通过借用凭证库消息中间件发送的数据(获取通过3.6.2数据发送接口发送的数据)。

3.5.3.2 函数名

public byte[] getData(String certID, int stYear, String admDivCode) throw Exception;

3.5.3.3 输入参数

3.5.3.4 输出参数

71

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

3.5.3.5 异常

3.5.4

数据请求回调(业务系统提供)

3.5.4.1 功能描述

接收方凭证库接收到业务系统发送的数据请求后通过webService接口回

调接收方业务系统获取对应数据并返回给发送方业务系统。

3.5.4.2 函数名

public byte[] requestData (byte[] requestMessage) throw Exception;

3.5.4.3 输入参数

3.5.4.4 输出参数

3.5.4.5 异常

3.5.5 数据发送到达通知(业务系统提供)

3.5.5.1 功能描述

接收方凭证库接收到业务系统发送的数据后通知业务系统有未处理的消

息,请处理该消息(通过3.6.3获取数据)

3.5.5.2 函数名

Public void dataArrivedNotify () throw Exception;

3.5.5.3 输入参数

3.5.5.4 输出参数

4 电子凭证业务报文格式

本章节描述了电子凭证业务中使用到的报文格式规范,“凭证原文”格式由

业务系统约定。

4.1 客户端待签名 (章)凭证报文

4.2 服务端待签名 (章)凭证报文

4.3 电子凭证报文

同”服务端待签名 (章)凭证报文”

4.4 凭证签名(章)位置报文

No=‘签名位置’或‘签章位置’

4.5 凭证签名(章)结果报文

4.6 业务系统与凭证库之间对账报文

4.7 业务系统与凭证库之间对账返回报文

同业务系统与凭证库之间对账报文

4.8 不带位置凭证服务端签名报文

同”服务端待签名 (章)凭证报文”

4.9 不带位置凭证服务端签名结果报文

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

4.10 不带位置凭证服务端验签报文

4.11 查询日志信息服务端返回报文

4.12 消息对账单报文

4.13 操作人证书列表

5 电子凭证库异常

5.1 客户端接口异常

5.2 服务端接口异常

本章节描述电子凭证库服务端接口的异常。

5.2.1 系统级异常

5.2.2 参数异常

5.2.3 报文异常

5.2.4 数据库访问异常

5.2.5 业务逻辑异常

5.2.6 签名服务异常

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

5.2.7 印章服务异常

5.2.8 消息中间件异常

5.2.9 接收凭证异常

5.2.10 回调异常

6 业务场景举例

6.1 直接支付业务

6.1.1 业务流程图

图6.1-1直接支付业务流程(反映与电子凭证库的调用关系)

6.1.2 流程说明

参见图6.1-1,直接支付凭证处理流程:

财政部门经办人在业务系统点击【签章】按钮,完成凭证签章操作:

1.1、 客户端调用:支付系统调用签章接口【getVoucherStamp生成电子凭

证签章报文】获取签章报文:

输出:【凭证签章返回报文】

签章接口完成证书PIN码输入验证,印章获取和签章动作处理。

1.2、 服务端:支付系统调用服务器签章入库接口【saveStampVoucher凭证

签章入库】保存【凭证签章返回报文】;同时保存业务系统操作。

财政部门复核人在业务系统点击【复核签章】按钮,完成凭证复核签章操作:

2.1、 客户端调用:支付系统调用签章接口【getVoucherStamp生成电子凭

证签章报文】获取签章报文:

输出:【凭证签章返回报文】

签章接口完成证书PIN码输入验证,印章获取和签章动作处理;签

章接口完成电子凭证验签(章)。

2.2、 服务端:支付系统调用服务器签章入库接口【saveStampVoucher凭证

签章入库】保存【凭证签章返回报文】;同时保存业务系统操作。

财政部门经办人在业务系统,完成凭证发送代理银行操作:

3.1、服务端:支付系统调用服务器发送接口【sendVoucher凭证发送】发送

电子凭证。

1、 代理银行读取直接支付凭证:

代理银行系统调用凭证库服务接口【readVoucherAgain未签收凭证读取】从

银行端电子凭证库获取直接支付凭证信息。

代理银行获取的直接支付凭证并解析入库

4.1、 如果是本行数据:调用凭证库服务接口【confirmVoucher凭证签收成

功】接口返回签收成功信息。

4.2、 如果不是本行数据:调用凭证库服务接口【confirmVoucherfail凭证签

收失败】接口返回签收失败信息。

2、 代理银行转账支付:

5.1、 转账失败:代理银行系统按照直接支付凭证中收付款人信息进行转账

处理。转账失败(如收款人错误):调用凭证库服务接口【ReturnVoucher

凭证退回】反馈签收失败信息,并作废直接支付凭证。

5.2、 转账成功: 代理银行在转账成功后,调用凭证库服务接口

【WriteVoucher凭证写入(发送)】接口上传直接支付凭证回单,“电

子凭证库”对直接支付凭证回单自动签章后发送给财政。

3、 财政部门登记直接支付凭证回单:

财政系统调用凭证库服务接口【readVoucherAgain未签收凭证读取】电子凭

证库获取直接支付凭证状态信息。如果状态=已回单,对财政端的数据进行相关业务处理,调用凭证库服务接口【confirmVoucher凭证签收成功】接口返回签收成功信息。

财政在支付系统回单登记界面,对未能通过自动任务读取到的凭证,通过调

用【querySentVoucherStatus】接口查询凭证的最新状态,如果状态=6被退回;财政对该凭证进行作废,并调用服务器接口【discardvoucher作废凭证】;如果状态=2接收失败或4签收失败,按照具体的业务情况对凭证进行处理。

可能存在以下情况:1)财政印章在银行没有备案,导致验章失败,无法接

收该凭证;2)如果将工行凭证错发至建行,建行会对该凭证签收失败;此类单据应及时备案印章,或将凭证重新发送至正确的接收银行(工行)等处理;3)如果是由于发送数据信息项不完整,财政需要作废该凭证。

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

6.2 授权支付业务

6.2.1 业务流程图

图6.2-1 授权支付业务流程(反映与支付系统、电子凭证库的调用关系)

6.2.2 流程说明

财政部门单位经办人在业务系统点击【发送】按钮,完成授权支付凭证写入和发送代理银行操作:

1.1、 服务端:支付系统调用服务器电子凭证【saveAndsendVoucher服务

器凭证写入发送】写入并发送【授权支付凭证报文】;同时保存业务

系统操作。

1、 代理银行系统读取授权支付凭证:

代理银行系统调用代理银行端凭证库服务接口【readVoucherAgain未签收凭

证读取】从代理银行端电子凭证库获取授权支付凭证信息。

代理银行系统获取的授权支付凭证解析入库

2.1如果是本行数据:调用凭证库服务接口【confirmVoucher凭证签收成功】

接口返回签收成功信息;继续资金转账处理。

2.2如果不是本行数据:调用凭证库服务接口【confirmVoucherfail凭证签

收失败】接口返回签收失败信息;

2、 财政部门单位经办人网银转账支付:

财政系统预算单位经办人在财政系统点击授权支付网银支付后跳转到银行

的网银支付界面。

单位使用代理银行颁发的证书登录网银系统后,代理银行网银界面查询

已下载的该单位的授权支付凭证信息,如下图所示

图15 网银转账支付界面

3.1、 用户确认支付:单位用户点击转账确认之后完成转账操作。

代理银行系统按照授权支付凭证中收付款人信息进行转账处理。转账失败

(如收款人错误):调用凭证库服务接口【ReturnVoucher凭证退回】反馈

签收失败信息,并作废直接支付凭证。

3、 资金转账成功:

代理银行在转账成功后,调用凭证库服务接口【WriteVoucher凭证写入(发

送)】接口上传授权支付凭证回单,“电子凭证库”对授权支付凭证回单自动签章后发送给财政。

4、 财政部门登记直接支付凭证回单:

财政系统调用凭证库服务接口【readVoucherAgain未签收凭证读取】电子凭

证库获取直接支付凭证状态信息。如果状态=已回单,对财政端的数据进行相关业务处理,调用凭证库服务接口【confirmVoucher凭证签收成功】接口返回签收成功信息。

财政在支付系统回单登记界面,对未能通过自动任务读取到的凭证,通过调

用【querySentVoucherStatus】接口查询凭证的最新状态,如果状态=6被退回;财政对该凭证进行作废,并调用服务器接口【discardvoucher作废凭证】;如果状态=2接收失败或4签收失败,按照具体的业务情况对凭证进行处理。

可能存在以下情况:1)财政印章在银行没有备案,导致验章失败,无法接

收该凭证;2)如果将工行凭证错发至建行,建行会对该凭证签收失败;此类单据应及时备案印章,或将凭证重新发送至正确的接收银行(工行)等处理;3)如果是由于发送数据信息项不完整,财政需要作废该凭证。

6.3 拨款业务

6.3.1 业务流程图

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

图6.3-1实拨支付业务流程(反映与支付系统、人民银行电子凭证库的调用关系)

6.3.2 流程说明

财政部门经办人在业务系统点击【签章】按钮,完成拨款单签章操作:

1.1、 客户端调用:支付系统调用签章接口【getVoucherStamp生成电子凭

证签章报文】获取签章报文:

输出:【凭证签章返回报文】

签章接口完成证书PIN码输入验证,印章获取和签章动作处理。

1.2、 服务端:支付系统调用服务器签章入库接口【saveStampVoucher凭证

签章入库】保存【凭证签章返回报文】;同时保存业务系统操作。

1、 财政部门复核人在业务系统点击【复核签章】按钮,完成凭证复核签章操作:

2.3、客户端调用:支付系统调用签章接口【getVoucherStamp生成电子凭证

签章报文】获取签章报文:

输出:【凭证签章返回报文】

签章接口完成证书PIN码输入验证,印章获取和签章动作处理;签

章接口完成电子凭证验签(章)。

2.4、服务端:支付系统调用服务器签章入库接口【saveStampVoucher凭证

签章入库】保存【凭证签章返回报文】;同时保存业务系统操作。

2、 财政部门经办人在业务系统,完成凭证发送人民银行操作:

3.1、服务端:支付系统调用服务器发送接口【sendVoucher凭证发送】发送

电子凭证。

3、 人民银行电子支付客户端签收拨款单

4.1、人行端电子凭证库调用【readVoucherAgain未签收凭证读取】自动

接收财政端发送过来的拨款单凭证,人行电子支付客户端查询到后进行签

收。

4.2、凭证签收成功调用电子凭证库【凭证签收】接口签收凭证

4.3、 凭证签收失败调用电子凭证库【凭证退回】接口退回凭证。

4.4、 凭证签收成功后调用人行业务系统【凭证接收】接口将电子凭证

发送给人行业务系统,如果是资金凭证自动生成回单写入电子支付安全控件

凭证待签章表。

资金转账:

人行业务系统进行资金转账。

回单签章发送

1) 从待签章凭证表读取待签章的拨款单回单。

2) 对待签章拨款单回单进行签章,调用【凭证写入】保存签章后的

拨款单凭证。

3) 签章完成以后调用【凭证发送】接口发送回单给财政。

4、 财政读取回单

财政系统调用凭证库服务接口【readVoucherAgain未签收凭证读取】电子凭

证库获取直接支付凭证状态信息。如果状态=已回单,对财政端的数据进行相关业务处理,调用凭证库服务接口【confirmVoucher凭证签收成功】接口返回签收成功信息。

财政在支付系统回单登记界面,对未能通过自动任务读取到的凭证,通过调

用【querySentVoucherStatus】接口查询凭证的最新状态,如果状态=6被退回;财政对该凭证进行作废,并调用服务器接口【discardvoucher作废凭证】;如果状态=2接收失败或4签收失败,按照具体的业务情况对凭证进行处理。

可能存在以下情况:1)财政印章在银行没有备案,导致验章失败,无法接

收该凭证;2)如果将工行凭证错发至建行,建行会对该凭证签收失败;此类单据应及时备案印章,或将凭证重新发送至正确的接收银行(工行)等处理;3)如果是由于发送数据信息项不完整,财政需要作废该凭证。

7 调用示例代码

7.1 客户端接口

7.1.1 JAVA调用

7.1.1.1 Ocx封装 //OCX封装(Java)

建议采用SWT框架封装OCX,封装步骤如下:

1、 获取OCX实例

private OleFrame _frame; //盛放ocx的最外层容器

private OleControlSite _site; // 存放ocx的空间 最后会放入oleframe 中去 private OleAutomation _auto; //用于执行方法

public AsspOcx ( Shell shell ){

this.shell = shell;

} _frame = new OleFrame(shell, SWT.BORDER); _site = new OleControlSite(_frame, SWT.NONE, _auto = new OleAutomation(_site); execActivexMethod(“Initialize”, new Object[]{url}); //初始化OCX "{4FC4CDDF-84E5-437C-8527-B23F6D70866C}");

2、 封装获取签章信息方法

public String getVoucherStamp(String certID, String admDivCode,

long stYear, String vtCode, String stamp, String voucher){

AsspOcx.GETVOUCHERSTAMP, new Object[]{ certID, admDivCode,new Variant v = execActivexMethod(

Long( stYear),vtCode,stamp,voucher } );

if(null==v){

}

}

3、封装执行OCX方法

public Variant execActivexMethod(String methodName, Object[] params){

return null; return v.getString(); }else{ int[] methodIDs = _auto.getIDsOfNames(new String[] int activeXMethodID = methodIDs[0]; { methodName });

} Variant[] paramVariant = null; if( params == null ){ } for(int

i=0,n=params.length; i<=n-1; i++){ } Variant variant = _auto.invoke(activeXMethodID, paramVariant); return variant; if( params[i] == null ){ } paramVariant[i] = Variant.NULL; paramVariant[i] = new Variant((String)params[i]); Long l = (Long)params[i]; paramVariant[i] = new Variant( l.longValue() ); Short l = (Short)params[i]; paramVariant[i] = new Variant( l.shortValue() ); Integer l = (Integer)params[i]; paramVariant[i] = new Variant( l.intValue() ); }else if( params[i] instanceof String ){ } else if( params[i] instanceof Long ){ paramVariant = new Variant[0]; paramVariant = new Variant[params.length]; }else{ }else if( params[i] instanceof Short ){ }else if( params[i] instanceof Integer ){

7.1.1.2 签章操作

7.1.2 C++调用

7.1.2.1 OCX控件注册

1、注册OCX

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

2、将OCX控件引入项目(建议使用MFC调用OCX)

在对话框界面点击鼠标右键,选择“插入ActiveX控件(X)”

选择EstampOcx.Control项 点击确定

在类向导中点击“添加类(C)”选择ActiveX控件中的MFC类(A)

在弹出的对话框中按图选择,点击完成会自动生成CDEstampOcx类。

7.1.2.2 签章操作

定义一个OCX变量:在ocx控件上点击右键添加变量。

7.1.3 C#调用

7.1.3.1 OCX控件注册

1、注册OCX

2、将OCX控件引入项目

工具栏-选择项

选择COM组件tab页,勾选EstampOcx.Control

确定

3、使用OCX控件

将OCX控件拖入设计视图,项目解决方案的引用中,会出现两个新的项

AxEstampOcxLib和EstampOcxLib

7.1.3.2 签章操作 签章操作

2、 签章

/// <summary>

/// 定义OCX私有变量

/// </summary>

private AxEstampOcx axEstampOcx = null;

1.1、控件初始化

private void ininAxEstampOcx()

{

try

{

axEstampOcx = new AxEstampOcx();

((System.ComponentModel.ISupportInitialize)(axEstampOcx)).BeginInit();

this.Controls.Add(axEstampOcx);

axEstampOcx.Visible = false;

((System.ComponentModel.ISupportInitialize)(axEstampOcx)).EndInit();

}

catch (Exception ex)

{

BaseMessageBox.ShowError("", "", "无纸化OCX控件-axEstampOcx在界面构造方法中初始化失败" + ex.Message);

}

}

1.2、获取签章结果并保存到凭证库

try

{

string vtCode ="2301";

int iYear;

string rgCode; //行政区划

string vouType;

string url; //凭证服务地址。

XMLGeneratorWithDetail<PayClearVoucher, PayRequest> generator =

new AuthClearVoucherXML(vtCode);

string xmlStr = generator.generatorXMLData(bills);//签章原文

string StampInfo;

string certID = stampService.getCerId(Global.userSession);

Organization org = ElementContainer.GetOrganizationById(Global.userSession.getTop_org());

string stampXML = axEstampOcx.GetVoucherStamp2("certid, rgcode, iYear, vouType,StampInfo, xmlStr,url);

if (stampXML == null || stampXML.Equals("(null)"))

{

return;

}

//调用后台保存凭证服务接口,后台实现参考java代码示例

stampService.sendAuthClearVoucherWithStamp(Global.userSession, bills, stampXML, true);

BaseMessageBox.ShowInfo("", "", "签章审核成功!");

this.listBill.RefreshData();

}

catch (Exception ex)

{

BaseMessageBox.ShowError("", "", ex.Message);

}

7.2 服务端接口

7.2.1 JAVA调用

本示例依赖axis.jar.

财政国库电子支付电子凭证库接口说明【2014.04.30.00】74_电子凭证

} } call = (Call) service.createCall(); // 设置远程地址 call.setTargetEndpointAddress(url); // 设置调用函数 call.setOperationName("queryVoucherType"); // 设置参数 String param1CertID = "000000"; String param2AdmdivCode = "500000"; int param3Year = 2012; // 调用接口 call.invoke(new Object[] { param1CertID, param2AdmdivCode, param3Year }); System.out.println("调用成功");

} catch (Exception ex) { } System.out.println("调用失败"); ex.printStackTrace();

7.2.2 C/C++调用

本示例代码依赖GSOAP.

102

} //凭证类型编码 char* vtCode="1101"; //凭证号 char *_voucherNo="201201004"; //返回值 int _querySentVoucherStatusReturn; // 初始化运行环境(只执行一次) soap_init(&soap); //调用凭证库业务接口 if(soap_call_ns1__querySentVoucherStatus(&soap, soap_endpoint, NULL, _certID, } // 清除运行环境变量 soap_end(&soap); // 卸载运行环境变量 soap_done(&soap); return 0; //打印错误信息 printf("%s",soap.fault->faultstring); //打印返回值 printf("%s",&_querySentVoucherStatusReturn); _admDivCode, _stYear,vtCode, _voucherNo, &_querySentVoucherStatusReturn)){ }else

{

7.2.3 C#调用

103

{

static void Main(string[] args)

{

object service = null;

//获取Web Service描述

WebClient wc = new WebClient();

string url =

"http://127.0.0.1:8080/realware/services/AsspFinanceService?wsdl";

Stream stream = wc.OpenRead(url);

ServiceDescription sd = ServiceDescription.Read(stream);

string sname = sd.Services[0].Name;

ServiceDescriptionImporter sdi = new ServiceDescriptionImporter();

sdi.ProtocolName = "soap";

sdi.Style = ServiceDescriptionImportStyle.Client;

sdi.AddServiceDescription(sd, null, null);

//指定命名空间

CodeNamespace cn = new CodeNamespace("WebServiceAgent"); //这里随便指定一个命名空间,但要与后面的一致

CodeCompileUnit ccu = new CodeCompileUnit();

ccu.Namespaces.Add(cn);

sdi.Import(cn, ccu);

//建立C#编译器

CSharpCodeProvider csc = new CSharpCodeProvider();

CodeDomProvider cdp = CodeDomProvider.CreateProvider("CSharp");

CompilerParameters cp = new CompilerParameters();

cp.GenerateExecutable = false;

cp.GenerateInMemory = true;

//添加编译条件

cp.ReferencedAssemblies.Add("System.dll");

cp.ReferencedAssemblies.Add("System.XML.dll");

cp.ReferencedAssemblies.Add("System.Web.Services.dll");

//编译程序集

CompilerResults cr = cdp.CompileAssemblyFromDom(cp, ccu);

//检查是否编译成功

if (cr.Errors.HasErrors)

{

MessageBox.Show("编译对象有错误。");

return;

}

//编译成功

//获取程序集

Assembly assembly = cr.CompiledAssembly;

//获取程序集类型

//前面的Test就是命名空间,必须要与前面指定的一致

104

//后面的TestService就是service的类名

//如果所有的服务器都是一致的类名,这里就可以写死,否则要动态提供类名

List<Type> serviceList = assembly.GetTypes().ToList();

string typeStr = "";

foreach (Type tp in serviceList)

{

if (tp.FullName.Contains("Service"))

{

typeStr = tp.FullName.Trim();

break;

}

}

if (string.IsNullOrEmpty(typeStr))

{

MessageBox.Show("未找到对应的WebService服务。");

return;

}

Type type = assembly.GetType(typeStr, true);

service = Activator.CreateInstance(type);

////获取方法

////如果所有的服务器都是一致的方法名,这里可以写死,否则就要动态提供方法名 MethodInfo mi = type.GetMethod("queryVoucherType");

////调用方法

////如果方法没有参数,第二个参数可以传递null,否则就要传递object数组,数组元素的顺序要与参数的顺序一致

try

{

object obj = mi.Invoke(service, new object[] { "000000", "500000", 2012 }); Console.Out.WriteLine("调用成功");

}

catch (Exception ex)

{

Console.Out.WriteLine("调用失败" + ex.Message);

}

}

}

}

105

本文标题:财政局国库支付中心-支付宝的“大野心”:中国金融“搅局者”
本文地址: http://www.61k.com/1157597.html

61阅读| 精彩专题| 最新文章| 热门文章| 苏ICP备13036349号-1