1、金蝶KIS财务接口使用说明(专业版)版本1.0目录1、概述32、应用范围33、接口说明34、调用示列55、备注71、概述接口插件名称为KISProfessionalPlugin.dll;该接口用到三个类,Voucher和VoucherEntry和clsDataBase。Voucher为凭证头类, VoucherEntry为凭证科目明细类(该类的对象作为类Voucher的一个属性使用),clsDataBase为数据库操作类。2、应用范围 金蝶KIS专业版V9.0及以上版本3、接口说明一、Voucher类属性和方法说明(1)Voucher类属性列表属性名称类型读写性必填备注VchGroup字符型可
2、读可写是凭证字VchNum整形可读可写否凭证号:根据系统设置是否允许修改凭证号,不允许修改时,传入凭证号时失效,系统自动生成凭证号VchReference字符型可读可写否参考信息VouchEntryVoucherEntry类对象可读可写是凭证明细类对象数组VchDate日期型可读可写是凭证日期VchSerialNum整形可读可写否凭证序号:可传入,未传入时系统自动生成VchAttachment整形可读可写否凭证附件数VchTranDate日期型可读可写否业务日期,未传入则取凭证日期nCount整形可读不可写否凭证明细类对象个数ErrNumber长整形可读不可写否返回保存不成功的错误号(如果大于
3、512,则为验证错误号,否则为系统错误号)ErrDescription字符型可读不可写否返回保存不成功的错误描述。(2)Voucher类方法列表函数名称返回类型参数说明备注InsertEntry布尔型无参数插入一个凭证明细对象,插入成功返回True,否则返回FalseSave(byval sDsn As String)布尔型sDsn数据库连接字符串保存凭证,成功返回True,否则返回False二、VoucherEntry类属性和方法说明(1)VoucherEntry类属性列表属性名称类型读写性必填备注AcctID字符型可读可写是科目代码VchExp字符型可读可写否摘要(凭证的第一条科目必填)V
4、chCyid字符型可读可写是币别编号VchDebit货币型可读可写科目为借方必填,否则必须不填。借方金额VchCredit货币型可读可写科目为贷方必填,否则必须不填。贷方金额VchQty双精度型可读可写否数量VchPrice双精度型可读可写否单价VchSettleNo字符型可读可写否结算号VchSettleCode字符型可读可写否结算方式编号VchTransID字符型可读可写否往来业务编号ItemID字符型可读可写否核算项目ID:如果科目有多个核算项目,则核算项目ID用逗号隔开传入,例如:212,552ExchangeRate双精度型可读可写否对应传入币别的汇率:如果传入汇率则必须大于0,不传
5、入则从KIS系统取传入币别对应的汇率三、clsDataBase类属性和方法说明(1)clsDataBase类属性列表属性名称类型读写性必填备注ConnADODB.Connection可读不可写否数据库连接对象(2)clsDataBase类方法列表函数或者过程名称返回类型参数说明备注BeginTrans无无参数开始一个事务InitConnection无strConnectionString为数据库连接字符串初始化数据库连接对象CommitTrans无无参数提交一个事务RollBackTrans无无参数回滚一个事务4、调用示列Private sub cmdSave_Click()Dim objCn
6、 As Object Dim strConn As String Dim i As Integer Dim strErrorNum As StringDim strErrorDesc As StringSet objCn = CreateObject(“KISProfessionalPlugin.clsDataBase”)/初始化数据库连接对象objCn.InitConnection (strConn) /strConn传入的数据库连接字符串objCn.BeginTrans /开始一个事务/循环保存凭证,每次循环保存一张凭证。For i = 0 To 3 If Not Savedata (i,
7、 strErrorNum, strErrorDesc) Then objCn.RollBackTrans/出错回滚事务MsgBox 保存第 & i & 个凭证失败!失败原因:错误号: & strErrorNum & 错误描述: & strErrorDesc Exit Sub End If Next objCn.CommitTrans/提交事务 Set objCn=Nothing MsgBox 保存成功!End sub/保存凭证过程Private Function Savedata(ByVal i As Variant, ByRef errornum As Variant, ByRef erro
8、rDesc As Variant) As BooleanDim obj As Object Set obj = CreateObject (“KISProfessionalPlugin.Voucher”) /-”凭证头”-obj.VchGroup = 收 obj.VchAttachment = 2obj.VchDate = CDate(2006-07-25) /下面的代码说明怎么新增一个凭证科目明细,注意:在为obj对象的属性VouchEntry赋值前,要先执行obj.InsertEntry(新增一个凭证科目明细对象) /新增一个借方凭证科目明细obj.InsertEntryobj.Vouch
9、Entry(obj.nCount - 1).VchExp = 现金 obj.VouchEntry(obj.nCount - 1).AcctID = 1001.01 obj.VouchEntry(obj.nCount - 1).VchDebit = 100 obj.VouchEntry(obj.nCount - 1).VchCyid = RMB。/新增一个贷方凭证科目明细obj.InsertEntryobj.VouchEntry(obj.nCount - 1).VchExp = 销售出库 obj.VouchEntry(obj.nCount - 1).AcctID = 4101.03 obj.Vo
10、uchEntry(obj.nCount - 1). VchCredit= 100 (注意这里和上面VchDebit不同) obj.VouchEntry(obj.nCount - 1).VchCyid = RMBobj.VouchEntry(obj.nCount - 1).ItemID = 152,100,162 obj.VouchEntry(obj.nCount - 1).VchTransID = 343434。Savedata = obj.Save()/保存/保存失败返回错误编号和错误描述 If Not Savedata Then errornum = obj.ErrNumber errorDesc = obj.ErrDescription End If Set obj = NothingEnd function5、备注凭证至少有一个贷方和一个借方,凭证借贷要平衡。