1、K3 凭证导入一、表结构1、凭证导入关联表:T_voucher凭证头文件表T_voucherentry凭证分录表T_item基础资料主表T_itemDetail核算项目表2、表结构关键字段:T_voucher:主键:FVoucherID 凭证内码约束键:FYear (ASC), FPeriod (ASC), FGroupID (ASC), FNumber (ASC)构成唯一键。FYear会计年度,FPeriod会计期间,FGroupID 凭证字内码,FNumber凭证号。FSerialNum凭证序号T_voucherentry :主键:FVoucherID凭证内码 ,FEntryID 分录号。
2、约束键:FVoucherID (ASC), FEntryID (ASC)构成唯一键。T_itemFitemIDID 号,FNumber 编号,FName名称。T_itemDetailF1客户核算项目内码,F2 部门核算项目内码,F3 个人核算项目内码,F3003产品核算项目内码,Fdetailcount核算项目总数, FdetailID核算项目内码。 3、详细表结构参考附件。T_voucher T_voucherentry二、相关表的操作说明1、T_voucher 凭证头表的操作导入凭证时在 T_voucer 凭证头表里生成一条凭证头数据。每一个凭证头必须有唯一的凭证序号和唯一标识,凭证序号字
3、段 FSerialNum,唯一标识是由 FYear (ASC), FPeriod (ASC), FGroupID (ASC), FNumber (ASC)四个字段构成,四个字段分别是会计年度、会计期间、摘要组内码、摘要编码。导入凭证头成功会自动生成 FVoucherID 凭证内码字段的值,本值将会在插入凭证分录是调用,用以标识凭证分录为一张凭证。2、T_voucherentry 凭证分录的操作导入一条期间供货会在 T_voucherentry 表中生成两条凭证分录,分别为借方分录和贷方分录,借贷双方金额平衡。导入多条期间供货会在 T_voucherentry 表中生成多条凭证分录,借方分录必须
4、有对应的贷方分录。借贷双方金额平衡。每一条分录必须包含 FVoucherID 凭证内码,此值是 T_voucher 表中的 FVoucherID值。每一条分录还必须包含 FDetailID 核算项目内码。此值是 T_ItemDetail 表中查询得出。3、T_ItemDetail 核算项目表的操作T_ItemDetail 表中存储了借方科目核算项目组合和贷方科目核算项目组合,可通过表中 FDetailID 值查询出科目的核算项目组合。借方核算项目组合:合同债权号、销售部门、销售员。贷方核算项目组合:合同债权号、销售部门、产品名称。导入过程中需查询本表中是否有符合条件的核算项目组合,如果有直接使
5、用。如果没有则插入核算项目组合,插入时 FDetailID 字段自动生成的。4、T_Item 基础资料主表的操作T_Item 表中不需要插入数据,只需查询核算项目组合的 FitemID(基础资料主表ID) ,不同的 FitemID 对应不同的核算项目。三、插入凭证的具体操作语句插入之前提供的基础资料详见附件 31、得到凭证头 T_Voucher.FSerialNum语句:SELECT MAX(FSerialNum) FROM (select * from t_Voucher union all select * from t_VoucherBlankout union all select *
6、 from t_VoucherAdjust) v Where FYear=2013 FSerialNum=MaX(FSerialNum)+1;FSerialNum 由查询会计年度内最大 FSerialNum 值加 1 获得表说明:t_Voucher 凭证头表t_VoucherBlankout 作废凭证表t_VoucherAdjust 调整凭证表2、得到核算项目 T_Item.FItemID Select * from T_Item where FNumber=HT0112029J003411and FItemclassID=1 -得到客户的 FItemID=15153Select * from
7、 T_Item where FNumber=25.01 and FItemclassID=2 -得到销售实业一部的 FItemID=7047Select * from T_Item where FNumber=0 and FItemClassID=3 -得到销售员销的 FItemID=3876Select *from T_Item where FNumber=01.01and FItemclassID=3003-得到 C10 的 FItemID=3222注:FItemClassId 为核算项目 ID 其值1、2、3、3003代表客户 、部门、职员、产品 。FNumber 为事物编码 HT011
8、2029J003411 25.01 0 01.01均是提供的已知数据。3、得到借方核算项目内码 T_ItemDetail.FDetailID语句:select * from t_ITemdetail where f1=15153 and f2=7047 and f3=3876查询是否有此借方核算项目。如果有取其 FDetailID如果没有则:insert into t_Itemdetail(FDetailCount,F1,F2,F3)values(3,15153,7047,3876)说明:FDetailCount 为:核算项目总数F1:客户核算项目内码 F2:部门核算项目内码 F3:个人核算项
9、目内码 插入语句执行完后自动生成 FDetailID=209954、得到贷方核算项目内码 T_ItemDetail.FDetailID语句:select * from t_ITemdetail where f1=15153 and f2=7047 and f3003=3222查询是否有此贷方核算项目。如果有取其 FDetailID,如果没有则:Insert Into t_ItemDetail(FDetailCount,F1,F2,F3003) values(3,15153,7047,3222)说明:F3003 为:产品核算项目内码 FDetailID=209975、向 T_ItemDetail
10、V 核算项目表使用详情纵表插入数据。Insert Into t_ItemDetailV(FDetailID,FItemClassID,FItemID)Values(20997,1,15153)Insert Into t_ItemDetailV(FDetailID,FItemClassID,FItemID)Values(20997,2,7047)Insert Into t_ItemDetailV(FDetailID,FItemClassID,FItemID)Values(20997,3003,3222)Insert Into t_ItemDetailV(FDetailID,FItemClassI
11、D,FItemID)Values(20997,1,15153)Insert Into t_ItemDetailV(FDetailID,FItemClassID,FItemID)Values(20997,2,7047)Insert Into t_ItemDetailV(FDetailID,FItemClassID,FItemID)Values(20997,3,3876) 说明:T_ItemDetailV 核算项目使用详情纵表。6、 向凭证头 T_voucher 表里插入数据语句:exec sp_executesql NINSERT INTO t_Voucher (FDate,FTransDate
12、,FYear,FPeriod,FGroupID,FNumber,FReference,FExplanation,FAttachments,FEntryCount,FDebitTotal,FCreditTotal,FInternalInd,FChecked,FPosted,FPreparerID,FCheckerID,FPosterID,FCashierID,FHandler,FObjectName,FParameter,FSerialNum,FTranType,FOwnerGroupID) VALUES (P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P
13、14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25),NP1 datetime,P2 datetime,P3 int,P4 int,P5 int,P6 int,P7 varchar(255),P8 varchar(255),P9 int,P10 int,P11 money,P12 money,P13 varchar(10),P14 bit,P15 bit,P16 int,P17 int,P18 int,P19 int,P20 varchar(50),P21 varchar(100),P22 varchar(100),P23 int,P24 int,P2
14、5 int,2013-04-30 00:00:00:000,2013-04-30 00:00:00:000,2013,4,3,666,NULL,杜北站.4.21-2013.4.25供货 C10 15*180,0,2,$2700.0000,$2700.0000,NULL,0,0,16425,-1,-1,-1,NULL,NULL,NULL,5278,0,0此插入语句没有插入所有的 T_voucher 的字段。还有一些字段默认为空,详见附件。此条插入语句插入后会得到 FVoucherID 的值,此值是自动生成的唯一的,将在下文中分录录入中用到。INSERT 语句字段及赋值说明:字段名称 字段类型 字
15、段解释 赋值 规则Fdate datetime 凭证日期 2013-04-30 00:00:00:000 凭证录入日期FTransDate datetime 业务日期 2013-04-30 00:00:00:000 与上个凭证期间内的任意日期Fyear int 会计年度 2013Fperiod int 会计期间 4FGroupID int 凭证字内码 3Fnumber int 凭证号 235此 4 个字段构成唯一标识,其中Fgroupid 是根据站别的不同从t_VoucherGroup 表中查询得出,Fnumber 是任意的一个不重复数字 Freference varchar(255) 参考信
16、息 NULLFexplanation varchar(255)摘要 杜北站 2013.4.21-2013.4.25供货 C10 15*180Fattachments int 附件张数 0FEntryCount int分录数2每一条供货有两条分录分别为借方和贷方FDebitTotal money 借方金额合计 $2,700.00 FCreditTotal money 贷方金额合计 $2,700.00 FInternalInd varchar(10) 机制凭证 NULLFchecked bit 是否审核 0FPosted bit 是否过账 0FPreparerID int 制单人 16425FCh
17、eckerID int 审核人 -1FPosterID int 记账人 -1FCashierID int 出纳员 -1Fhandler varchar(50) 会计主管 nullFObjectName varchar(100) 对象接口 nullFparameter varchar(100) 接口参数 nullFSerialNum int 凭证序号 5278 max(FSerialNum)+1,参考步骤 1.FTranType int 单据类型 0FOwnerGroupID int 制单人所属工作组 07、向 T_voucherentry 插入借方分录记录语句:exec sp_executes
18、ql NINSERT INTO t_VoucherEntry (FVoucherID,FEntryID,FExplanation,FAccountID,FCurrencyID,FExchangeRateType,FExchangeRate,FDC,FAmountFor,FAmount,FQuantity,FMeasureUnitID,FUnitPrice,FInternalInd,FAccountID2,FSettleTypeID,FSettleNo,FCashFlowItem,FTaskID,FResourceID,FTransNo,FDetailID) VALUES (P1,P2,P3,P
19、4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22),NP1 int,P2 int,P3 varchar(255),P4 int,P5 int,P6 float,P7 float,P8 int,P9 money,P10 money,P11 float,P12 int,P13 float,P14 varchar(10),P15 int,P16 int,P17 varchar(40),P18 int,P19 int,P20 int,P21 varchar(255),P22 int,5336,0,杜北站.4.21-
20、2013.4.25供货 C10 15*180,1006,1,1,1,1,$2700.0000,$2700.0000,0,0,0,NULL,1388,0,NULL,0,0,0,NULL,20995INSERT 语句字段值及赋值说明:字段名称 字段类型 字段解释 赋值 规则FVoucherID int 凭证内码 5337根据 t_voucher 新生成的 F_serialid在 t_voucher 表中得到FEntryID int 分录号 0Fexplanation varchar(255) 汇率杜北站.4.21-2013.4.25 供货 C10 15*180FAccountID int 科目内码
21、 1006根据借方科目 1122.01 在 t_account 中查到,科目为:前期债权FCurrencyID int 币别 1FExchangeRateType float 汇率类型 1FExchangeRate float 汇率 1FDC int 余额方向 1FAmountFor money 原币金额 ,$2700.0000Famount money 本位币金额 ,$2700.0000Fquantity float 数量 0FMeasureUnitID int 单位内码 0FUnitPrice float 单价 0FInternalInd varchar(10) 机制凭证 nullFAcc
22、ountID2 int 对方科目 1388根据贷方科目 6001.01.01 在t_account 中查到,科目为:砼销售收入FSettleTypeID int 结算方式 0FSettleNo varchar(40) 结算号 nullFCashFlowItem int 现金流量 0FTaskID int 项目任务内码 0FResourceID int 项目资源内码 0FTransNo varchar(255) 项目任务内码 nullFDetailID int 核算项目 20995此值根据核算项目组成的查询条件在T_Itemdetail 中查到,参考步骤 38、向 T_voucherentry
23、中插入贷方分录记录语句:exec sp_executesql NINSERT INTO t_VoucherEntry (FVoucherID,FEntryID,FExplanation,FAccountID,FCurrencyID,FExchangeRateType,FExchangeRate,FDC,FAmountFor,FAmount,FQuantity,FMeasureUnitID,FUnitPrice,FInternalInd,FAccountID2,FSettleTypeID,FSettleNo,FCashFlowItem,FTaskID,FResourceID,FTransNo,F
24、DetailID) VALUES (P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22),NP1 int,P2 int,P3 varchar(255),P4 int,P5 int,P6 float,P7 float,P8 int,P9 money,P10 money,P11 float,P12 int,P13 float,P14 varchar(10),P15 int,P16 int,P17 varchar(40),P18 int,P19 int,P20 int,P21 varchar(2
25、55),P22 int,5336,1,杜北站.4.21-2013.4.25供货 C10 15*180,1388,1,1,1,0,$2700.0000,$2700.0000,15,132,180,NULL,1006,0,NULL,0,0,0,NULL,20997INSERT语句 字段及赋值说明:字段名称 字段类型 字段解释 赋值 规则FVoucherID int 凭证内码 5337 根据 t_voucher 新生成的F_serialid 在 t_voucher 表中得到FEntryID int 分录号 0Fexplanation varchar(255) 汇率杜北站.4.21-2013.4.25
26、 供货 C10 15*180FAccountID int 科目内码 1388根据贷方科目 6001.01.01 在t_account 中查到,科目为砼销售收入FCurrencyID int 币别 1FExchangeRateType float 汇率类型 1FExchangeRate float 汇率 1FDC int 余额方向 0 贷方余额方向为0FAmountFor money 原币金额 ,$2700.0000Famount money 本位币金额 ,$2700.0000Fquantity float 数量 15FMeasureUnitID int 单位内码 132 单位方的内码FUnit
27、Price float 单价 180FInternalInd varchar(10) 机制凭证 nullFAccountID2 int 对方科目 1006根据借方科目 1122.01 在 t_account中查到,科目为前期债权FSettleTypeID int 结算方式 0FSettleNo varchar(40) 结算号 nullFCashFlowItem int 现金流量 0FTaskID int 项目任务内码 0FResourceID int 项目资源内码 0FTransNo varchar(255) 项目任务内码 nullFDetailID int 核算项目 20995此值根据核算项
28、目组成的查询条件在T_Itemdetail 中查到,参考步骤 4附件:附件 1:T_voucher 表结构明细:注 名称 类型 描述 说明FApproveID INTEGER 审批 审批可为空 FAttachments INTEGER 附件张数 附件张数FBrNo STRING 公司代码 公司代码FCashierID INTEGER 出纳员 出纳员FChecked INTEGER 是否审核 0-未审核,1-已审核FCheckerID INTEGER 审核人 审核人FCreditTotal FLOAT 贷方金额合计 贷方金额合计FDate DATETIME 凭证日期 凭证日期FDebitTota
29、l FLOAT 借方金额合计 借方金额合计FEntryCount INTEGER 分录数 分录数可为空 FExplanation STRING 备注 备注FFootNote STRING 批注 批注FFrameWorkID INTEGER 集团组织机构内码 集团组织机构内码FGroupID INTEGER 凭证字内码 凭证字 ID可为空 FHandler STRING 会计主管 会计主管可为空 FInternalInd STRING 机制凭证空-手工凭证,非空-机制凭证FNumber INTEGER 凭证号 凭证号可为空 FObjectName STRING 对象接口其他系统传入凭证对象接口描
30、述FOwnerGroupID INTEGER 制单人所属工作组 制单人所属工作组可为空 FParameter STRING 接口参数 接口参数FPeriod INTEGER 会计期间 会计期间FPosted INTEGER 是否过账 0-未过账,1-已过账FPosterID INTEGER 记账人 记账人FPreparerID INTEGER 制单人 制单人FReference STRING 参考信息 参考信息FSerialNum INTEGER 凭证序号 凭证序号FTransDate DATETIME 业务日期 业务日期FTranType INTEGER 单据类型 单据类型主键 FVouch
31、erID INTEGER 凭证内码 凭证 ID(关键字)FYear INTEGER 会计年度 会计年度FExplanation STRING 摘要 摘要FGroupID INTEGER 摘要组内码 摘要组 IDFNumber STRING 摘要编码 摘要编码FVoucherExpID INTEGER 摘要内码 摘要 ID附件 2:T_VoucherEntry 表结构明细:注 名称 类型 描述 说明FAccountID INTEGER 科目内码 科目 IDFAccountID2 INTEGER 对方科目 对方科目 IDFAmount FLOAT 本位币金额 金额(本位币)FAmountFor F
32、LOAT 原币金额 金额(原币)FBrNo STRING 公司代码 公司代码FCashFlowItem INTEGER 现金流量 0-不是,1-是现金流量项目FCurrencyID INTEGER 币别 币别 IDFDC INTEGER 余额方向 0-贷方,1- 借方FDetailID INTEGER 核算项目 核算项目使用 ID,0 为不下设核算项目主键 FEntryID INTEGER 分录号 分录号(关键字二)FExchangeRate FLOAT 汇率 汇率可为空 FExplanation STRING 摘要 摘要可为空 FInternalInd STRING 机制凭证 机制凭证FMe
33、asureUnitID INTEGER 单位内码 计量单位 IDFQuantity FLOAT 数量 数量FResourceID INTEGER 项目资源内码 项目资源 ID可为空 FSettleNo STRING 结算号 结算号FSettleTypeID INTEGER 结算方式 结算方式FTaskID INTEGER 项目任务内码 项目任务 ID可为空 FTransNo STRING 业务号 业务号FUnitPrice FLOAT 单价 单价主键 FVoucherID INTEGER 凭证内码 凭证 ID(关键字一)附件 3:插入前提供的基础资料借方资料:凭证日期 业务日期 FPERIOD
34、 凭证字 摘要编码 分录号 摘要 科目编码2013-4-28 2013-4-28 1 (杜)转凭证 222 0 杜北站 2013.4.21-2013.4.25供货 C10 15*180 1122.01核算项目 1 债权号 合同名称 核算项目 2 部门编码 部门名称 核算项目 3 职员编码 职员名称客户 HT0112029J003411 众诚白鹿泉度假村员工宿舍区宿舍楼-河北众诚房地产开发集团有限公司 部门 25.02 销售实业二部 职员 销币种 FEXCHRATE FDC 金额 借方金额 FSETTLCODERMB 1 1 2,700.00 2,700.00 *制单人 FATTCHMENT F
35、POSTED FMODULE FDELETED FSERIALNO FUNITNAME杨书云 0 FALSE FALSE 467贷方资料:凭证日期 业务日期 FPERIOD 凭证字 摘要编码 分录号 摘要 科目编码2013-4-28 2013-4-28 1 (杜)转凭证 222 167 杜北站 2013.4.21-2013.4.25供货 C10 15*180 6001.01.01核算项目 1 债权号 合同名称 核算项目 2 部门编码 部门名称 核算项目 3 职员编码 职员名称客户 HT0112029J003411 众诚白鹿泉度假村员工宿舍区宿舍楼-河北众诚房地产开发集团有限公司 部门 25.02 销售实业二部 产品标号 01.01 C10币种 FEXCHRATE FDC 金额 方量 单价 贷方金额 FSETTLCODERMB 1 1 2,700.00 15 180 2,700.00 *制单人 FATTCHMENT FPOSTED FMODULE FDELETED FSERIALNO FUNITNAME杨书云 0 FALSE FALSE 467 方