logo资料库

金蝶K3 webservice接口.doc

第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
资料共6页,全文预览结束
凭证引入“webservice接口”说明 一. “凭证引入”技术方案 其他业务系统数据,传输到EAS系统服务器,通过凭证引入“webservice接口”,转化为 EAS数据。 其他业务系统内的资金流动信息,实时地、非人工干预的传递到EAS系统,以财务凭证的 形式,转化为EAS系统内的财务信息。 二. “凭证引入”技术规范 EAS系统提供WebService 服务,以及产生EAS财务凭证的接口,供其他业务系统调用。 WebService 服务:金蝶在EAS系统上发布WebService服务,提供wsdl文件供客户端下载, 其他业务系统根据下载的wsdl文件,产生客户端。 EAS财务凭证的接口产生的客户端,分为两部分(java客户端举例) (1) 协议类,包名 localhost.bosws.services.WSWSVoucher 协议类用于获得金蝶在EAS系统上发布WebService服务接口。本用例中为其他业务系统 内的资金流动信息产生EAS财务凭证的接口。 (2) JavaBean类,包名 wsvoucher.client JavaBean类提供接口需要的参数。本用例中为EAS财务凭证需要的信息。 三. “凭证导入接口”调用说明 1. 接口:importVoucher(wsvoucher[], int isVerify, int isCashflow)  传参数第1个:WSWSVoucher[] 普通对象数组,见构造EAS凭证字段以及含义说明  传参数第2个:isverify 0 不核销,暂存 1 核销,暂存 2 不核销,提交 3 核销,提交  传参数第3个:isImpCashflow 是否引入现金流量 0 不是 / 1 是 四. 构造EAS凭证字段以及含义说明如下: WSWSVoucher 说明:一张凭证占据的行数 = 凭证行*分录行*辅助账行 字体黑色:凭证头字段;深蓝:分录行字段; 橙色:辅助账字段;紫罗兰:现金流量 单元格颜色:灰色 必录项 ;浅青绿:辅助账核算项目(科目多核算项目,最多 8 个);浅绿:现金流量 字段名 类型 中文说明 是否必录 说明 格式 companyNumber String 公司编码 bookedDate bizDate periodYear periodNumber voucherType attaches description voucherNumber entrySeq voucherAbstract accountNumber String String int int String int String String int String String 记账日期 业务日期 会计期间-年 会计期间-编码 凭证字(凭证类型) 附件数量 参考信息 凭证号 分录行号 摘要 科目 是 是 是 是 是 是 否 否 是 是 否 是 录 入 公 司 编 码 , 必 须 在 EAS 中有该编码 凭证的登账日期 业务发生日期 必须在 EAS 中有 必须在 EAS 中有 凭 证 类 型 中 文 名 称 , 必 须 在 EAS 中有 2005-11-1 2005-11-1 2005 11 记 凭证唯一区别 当前凭证的分录唯一区别 分录摘要 分录行科目编码,必须在 EAS 1001.01 1 1
001 1.01 吨 徐晓霞 中有 分录行币别编码,必须在 EAS 中有 本位币汇率:没有时默认为 1 分录行方向:1 借方 -1 贷方 分录行原币金额 分录行数量 名称,必须在 EAS 中有 分录行单价 分录行借方金额:分录方向为借 方时必录 分录行贷方金额:分录方向为贷 方时必录 当 前 操 作 人 员 名 称 , 必 须 在 EAS 中有 当 前 操 作 人 员 名 称 , 必 须 在 EAS 中有 当 前 操 作 人 员 名 称 , 必 须 在 EAS 中有 当前凭证的当前分录的辅助账 行唯一区别 默认为 0, 名称 ,必 须在 EAS 中有 。比 如:客户、 编码 ,必 须在 EAS 中有 。比 如:客户 A 的编码 名称 ,必 须在 EAS 中有 。比 如:客户 A 以下:取决于科目是否核算多 个项目,最多 8 个 客户 01.01 客户 A currencyNumber String 币种 localRate entryDC originalAmount qty measurement price debitAmount double int double double String double double 汇率 方向 原币金额 数量 计量单位 单价 借方金额 creditAmount double 贷方金额 creator poster auditor asstSeq bizNumber settlementNumbe r settlementType cussent asstActType1 String String String int String String String int String 制单人 过账人 审核人 辅助账行号 业务编号 结算方式 结算号 核销/挂账 核算项目 1 asstActNumber1 String 核算对象编码 1 asstActName1 String 核算对象名称 1 asstActType2 asstActNumber2 asstActName2 asstActType3 asstActNumber3 asstActName3 asstActType4 asstActNumber4 asstActName4 asstActType5 asstActNumber5 asstActName5 asstActType6 asstActNumber6 asstActName6 asstActType7 String String String String String String String String String String String String String String String String 核算项目 2 核算对象编码 2 核算对象名称 2 核算项目 3 核算对象编码 3 核算对象名称 3 核算项目 4 核算对象编码 4 核算对象名称 4 核算项目 5 核算对象编码 5 核算对象名称 5 核算项目 6 核算对象编码 6 核算对象名称 6 核算项目 7 是 否 是 是 否 否 否 是 是 是 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否 否
asstActNumber7 asstActName7 asstActType8 asstActNumber8 asstActName8 itemflag oppAccountSeq primaryItem supplyItem primaryCoef supplyCoef cashflowAmount Original cashflowAmount Local cashflowAmount Rpt String String String String String int int String String int int double double double 2. 接口说明: 核算对象编码 7 核算对象名称 7 核算项目 8 核算对象编码 8 核算对象名称 8 现金流量标记 对方科目分录号 主表项目 附表项目 主表系数 附表系数 现金流量原币金额 现金流量本位币金额 现金流量报告币金额 否 否 否 否 否 是 是 是 否 否 否 是 是 是 如引入现金流量,必设置为 1 EAS 中必存在的主表项目 将正确的符合条件的凭证引入到系统中,作为暂存凭证或者提交状态的凭证,错误的和不 符合条件的凭证给与提示,不引入到系统。 3. 如果引入核销记录 那么每一张凭证中,需要有往来科目,自动设置核销分录 4. 如果引入现金流量 5. 返回值 String[][] 那么普通对象数组中,也存放现金流量数组,数组中的对象也是WSWSVoucher, 与凭证行的区分标记是:itemFlag字段描述 0 不是现金流量 1 是现金流量 是一个长度为凭证数,宽度是5的字符串数据 宽度的定义:外部系统凭证号,凭证字,年度,期间,处理信息,异常信息,金蝶凭证号 1. 凭证号: 第 3 方系统自身产生的凭证号 2. 凭证字: 第 3 方系统自身产生的凭证字 3. 年度: 第 3 方系统自身产生的会计年度 4. 期间: 第 3 方系统自身产生的会计期间 5. 处理信息: 6. 异常信息 isVerify:应该是 EAS 在保存凭证时产生的异常,如校验不通过产生的提示 信息等。 7. 金蝶返回凭证号:EAS 产生的凭证号,用于回填 FreightNet 系统的。 8. 处理信息的定义:0000 成功 其他处理信息见后面 5.处理方法: 将正确的符合条件的凭证、核销记录、现金流量引入,返回的信息包含全部内容; 有问题的凭证,只返回凭证号和错误信息定义 6. 参数信息描述 WSWSVoucher 一行 是一个凭证对象或者 是一个现金流量对象 凭证对象行包括:凭证行、分录行、辅助账行,itemFlag = 0
现金流量行包括:凭证号、分录号、现金流量行 itemFlag = 1 在对象传入时,请顺序传入: 比如共有5行记录,3行是凭证对象行,2行是现金流量行,那么格式如下 凭证号 分录号 … 辅助账 … 现金流量(对方科目分录号) … 流量标记 1 1 1 1 1 1 2 3 1 2 0 0 0 1 1 3 3 7. 其他处理信息: 1000 没有凭证数据传入 1001 根据传入的组织编码找不到组织 1002 根据传入的科目编码找不到科目 1003 根据传入的币别编码找不到币别 1004 根据传入的登账日期找不到合适的期间 1005 根据传入的凭证类型名称找不到凭证类型 1006 所引入凭证币别,不属于本科目币别核算值 1007 没有找到核算项目 1008 制单人不能为空 1010 凭证没有找到过账人 1111 其他异常:如保存失败,网络异常等 2001 根据编码没有取得现金流量项目 3001 没有权限新增凭证 3003 登账日期和期间不匹配 3008 组织单元的报告币折算方式没有选取 3100 凭证引入重复 3101 参考消息重复 4001 本位币借贷不相等。 4002 报告币借贷不相等。 4003 凭证类型与分录科目不匹配:{0}({1}) 4004 第{0}条分录的第{1}条辅助账必须录入结算方式。 4005 第{0}条分录的第{1}条辅助账非银行科目不允许录入结算方式。 4006 第{0}条分录缺少科目。 4007 同一凭证不允许同时包含表内科目与表外科目。 4008 第{0}条分录的科目带自定义属性或核算项目,但没有辅助账。 4009 第{0}条分录的原币金额不等于辅助账原币金额之和。 4110 第{0}条分录的本位币金额不等于辅助账本位币金额之和。 4111 第{0}条分录的报告币金额不等于辅助账报告币金额之和。 4112 凭证的会计期间不能早于当前会计期间。 4113 分账制,凭证头币种不能为空。 4114 第{0}条分录科目“{1}”的核算币别与分录币别“{2}”不一致。 4115 会计期间不能为空。 4116 凭证类型不能为空。 4117 公司不能为空。 4118 第{0}条分录缺少币别。 4120 第{0}条分录缺少借贷方向。 4121 第{0}条分录的第{1}条辅助账行缺少核算项目组合。 4122 凭证的借方本币与凭证行不符。 4123 凭证的贷方本币与凭证行不符。 4124 凭证的借方报告币与凭证行不符。 4125 凭证的贷方报告币与凭证行不符。 4126 凭证头的行数量与凭证行不符。
4128 第{0}条分录的第{1}条辅助账行缺少必录的自定义属性。 4129 凭证应该至少存在两条分录。 4130 第{0}条分录的科目“{1}”不是明细科目。 4131 第{0}条分录的科目“{1}”已被禁用。 4132 该凭证必须录入现金流量。 4161 该凭证不存在或已经被删除,不能进行这项操作。 4162 凭证的会计期间不能早于当前会计期间。 4300 第{0}条分录是核销分录但没有设置核销标志。 4301 第{0}条分录不是核销分录但设置了核销标志。 4400 第{0}条分录的第{1}条辅助账是核销记录但没有设置对应的往来账记录。 4401 第{0}条分录的第{1}条辅助账不是核销记录但设置了对应的往来账记录。 4501 凭证有错误:{0} 4800 每张凭证至少应该有一条分录。 4302 第{0}条分录缺少摘要。 4109 第{0}条分录的币别与凭证头的币别不一致。 4666 第{0}条分录的数量、金额不能全都为0。 4667 第{0}条分录第{1}条辅助账的数量、金额不能全都为0。 4898 第{0}条分录为往来科目,但它的第{1}条辅助账缺少到期日。 4900 现金流量项目{0}已经被禁用! 4980 第{0}条分录科目所属公司与凭证所属公司不一致。 4345 记账日期不能为空。 4346 业务日期不能为空。 4347 凭证类型不能为空。 4355 输入的凭证编码重复 五. “凭证查询”接口说明 findVoucher(String comNumber, int year, int periodNumber)  输入:公司代码、期间年(2006)、期间月(7 ),默认查询凭证的来源系统为:基 础系统(从外部导入的凭证都为基础系统)  输出:凭证字、凭证号、参考消息  输出类型: String[], 以“,”组合,需要拆分。  默认查询条件:所查凭证来源系统必须为“基础系统”,也就是说,查询的是先期从 webService中引入的凭证,才是基础系统。 返回类型:String[] #0001 未找到公司 #0002 未找到期间 正确结果 转账, 0001, FLY20060701001 六. “凭证校验”接口说明 checkVoucher( String comNumber, int year, int periodNumber, String messageNumber, double localAmount)  输入:公司代码、期间年、期间月、参考消息、本位币金额  输出:金蝶凭证号  输出类型: String  默认查询条件:所查公司,必须是财务实体组织 返回类型:String #0001 未找到公司 #0002 未找到期间 #1001 未找到符合条件的凭证 正确结果 凭证号 七. “凭证删除”接口说明 接口名称deleteVoucher
deleteVoucher(String companyNumber, String period, String voucherNumber, String fexp ) 参数:String companyNumber String period String voucherNumber String fexp “HQF001” 公司编码 “2006.09” 期间 “20” 凭证号 “000000112” 参考消息 返回类型:int 0 成功;10000 公司编码不能为空; 10001 未找到公司编码 10002 期间输入格式不正确; 10003 凭证号不能为空 10004 参考消息不能为空 10005 未找到此凭证或凭证已被删除 10006 凭证删除失败 八.以Java客户端作为第3方软件开发说明。 1. WSDL文件产生客户端 2. 客户端调用(java客户端举例) //构造调用产生凭证的接口协议类 WSWSVoucherSrvProxyServiceLocator locator = new WSWSVoucherSrvProxyServiceLocator(); //此处构造EAS凭证需要的信息...start WSWSVoucher voucher = new WSWSVoucher(); WSWSVoucher[] vouchers = new WSWSVoucher[1] ; vouchers[0] = voucher; //...end try { //此处调用接口 locator.getWSWSVoucher().importVoucher(vouchers); } catch (Exception e) { // TODO 自动生成 catch 块 e.printStackTrace(); }
分享到:
收藏