金蝶K3系统管理员培训-K3主要表结构与关联关系.ppt_第1页
金蝶K3系统管理员培训-K3主要表结构与关联关系.ppt_第2页
金蝶K3系统管理员培训-K3主要表结构与关联关系.ppt_第3页
金蝶K3系统管理员培训-K3主要表结构与关联关系.ppt_第4页
金蝶K3系统管理员培训-K3主要表结构与关联关系.ppt_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

K/3系统管理员培训,K/3主要表结构与关联关系,K/3主要模块数据库结构及问题分析,一、总帐系统1.基础资料2.初始化及余额表3.凭证处理4.结帐,基础资料相关数据表,计量单位组/单位(t_measureunit/t_unitgroup)币别(t_currency)凭证字(t_vouchgroup)科目(t_account)核算项目类别/核算项目(t_itemclass/t_item)核算项目属性(t_ItemPropDesc),计量单位组/单位(t_measureunit/t_unitgroup),常用的字段为Fmeasureunitid(计量单位内码),tnitgroupid(计量单位组内码),Fstandard(是否基本计量单位)。在一个计量单位组内,只能有一个基本计量单位,即Funitgroupid字段值相同的记录,只能有一条记录的Fstandard字段值为1,如果一个组内有两个Fstandard=1的计量单位,则会造成一些报表数据翻倍。K3中有很多表引用“计量单组ID”和“计量单位ID”,比如科目、凭证、物料、物流单据、余额表及BOM等等。一旦t_UnitGroup或t_MeasureUnit丢失记录(包括零记录),对引用表来说就产生了“孤立数据”。,币别,t_currency,常用到的字段为FcurrencyID(币别内码),FFixRate(换算率),Fscale(小数位数)等等;FcurrencyID(币别内码):系统默认记帐本位的FcurrencyID值为1Fscale(小数位数):在中间层帐套管理中可设置本位币小数点位数,即FcurrencyID值为1的记录对应的Fscale值;,凭证字,t_vouchgroup,常用的字段为FgroupID(凭证字内码),一般被t_voucher(凭证表)引用,科目-1,t_account,主要字段为FAccountID(科目内码),FfullName(科目全名),FQuantity(是否数量金额辅助核算),FMeasureUnitID(计量单位内码),FDetailid(核算项目内码)等。科目内码一旦被引用,为保证数据的完整性,此科目就不允许删除。FFullname(科目全名)在录入凭证,查看帐薄时用到。如果在录入凭证,查看帐薄时,系统只显示科目的最明细一级的名称,那就是因为科目全名字段中的值不正确。,科目-2,Fquantity(是否数量金额辅助核算),标识此科目是否需要数量金额辅助核算,一般此字段与FmeasureUnitID(计量单位内码)一起使用,当fquantity字段的值为1时,FmeasureUnitID字段中一定也要有相应的值,且FmeasureUnitID与t_measureunit表中的FmeasureUnitID字段值相对应。FDetailid(核算项目使用状况内码),这个字段的值与t_itemdetail(核算项目横表)中的Fdetailid字段值相关联,且这个值在t_itemdetail表中对应的以F开头的字段的值为“-1”。,核算项目类别/项目/属性-1/2,t_ItemClass,客户、部门、职员、物料等,这些都是核算项目的类别。比如客户是一个核算项目类别,部门也是一个核算项目类别;如果核算项目类别看成一个对象,则每对象都有各自的属性。如客户属性有:代码、名称、银行账号、法人代表、偿债等级等等;部门这个对象来说,它的属性是:代码、名称、部门主管、部门电话、传真等等。系统用t_ItemPropDesc保存核算项目类别的属性。t_ItemClass与t_ItemPropDesc用FitemClassID字段关联,一个核算项目类别可以拥有多种属性,因此是“一对多”的关系。用户新增的核算项目类别的属性也保存在t_ItemPropDesc中。,核算项目类别/项目/属性-2/2,不同的核算项目类别都拥有自己的数据表,在t_itemclass表中,有一个FsqlTableName字段,它表示每个核算项目对应的数据表。比如:客户t_Organization;部门t_Department;职员t_Emp;物料t_ICItem.。不同的核算项目类别有相同的属性,比如:ID、父级ID、代码、名称、长代码、全称等,系统将这些相同的属性值保存在t_Item表中。故所有的核算项目都实际同时保存在两个数据表中。比如:新增一个职员,则同时保存在t_Emp中和t_Item中;新增一个部门,则同时保存在t_Department中和t_Item中。,总账初始化及业务相关表,金额余额表(t_balance)数量余额表(t_quantitybalance)损益类科目实际发生额表(t_profitandloss)系统参数表(t_systemprofile)期末处理表(t_Subsys)凭证头/体表(t_voucher/t_voucherentry),初始化数据的存放1/2,年初时初始化,金额余额表和数量余额表中都只有第一期的数据,没有本年累计数据和损益数据;,初始化数据的存放2/2,年中时初始化,如在第6期进行初始化,则t_profitandloss有记录,另外两张余额表中会存在第1期和第6期两期的数据,例如t_Balance有1期的数据中:FYtdDebit、FYtdCredit、FendBalance取用户录入的本年累计借方、本年累计贷方、期初余额(是指6月初的余额)。FDebit、FCredit、FBeginBalance这三列是系统倒算出来的,过程是:FDebit=FytdDebit;FCredit=FytdCredit;FBeginBalance=FEndBalance+FCreditFDebit。6期的数据中:6期的FBeginBalance等于1期的FendBalance;6期的FcreDit和FDebit无数据;6期的FYtdCreDit和FytdDebit等于1期的FYtdCreDit和FytdDebit;6期的FendBalance等于6期的FbeginBalance。,余额表与币别表的关系,在上面所讲的三张表中,都有币别(Fcurrencyid)这个字段,假如科目带有外币核算,且外币有余额或发生额,则在这三张表中都由币别ID来识别,一个科目的余额之和是由这个科目的几个币种余额之和而得;在余额表中币别字段(Fcurrencyid)的值为零,就表示是此科目的综合本位币记录。一个科目下所有币别余额之和等于此科目币别字段为零值的记录的余额,所有币别发生额字段之和等于币别字段为零值的记录的发生额。,余额表与核算项目表的关系,在上面所讲的三张表中,也都有核算项目(Fdetailid)这个字段,如果某个科目下挂核算项目,且核算项目有余额或发生额,那么在这三张表中都由Fdetailid字段的值来反映。Fdetailid字段的值为0,则是此科目所有核算项目之和的记录。,结束初始化,结束初始化后,系统将自动更新表t_Subsys(新增或更新一条记录),同时更新t_SystemProfile表中Fcategory=GL,Fkey=InitClosed对应的Fvalue=1,标志初始化完成。,凭证头/体表1/2,凭证头表t_Voucher保存凭证的日期、制单人、是否审核、过帐等凭证头信息;凭证体表t_Voucherentry保存凭证的分录信息,如会计科目、凭证分录等;在凭证过帐前,系统会检查总帐是否已完成初始化、检查当前期间是否有未过帐凭证,若未完成初始化或没有未过帐凭证,则退出过帐过程否则进入下一步。凭证过帐时,在选定的凭证范围内按照期间、凭证字、凭证号、分录号的顺序逐条处理凭证分录:检查凭证是否在本会计年度、期间。根据帐套选项的“凭证过帐前必须审核”,检查凭证是否已经审核。检查科目、核算项目的合法性。检查凭证号是否连续。将分录中的借或贷方发生额登记至t_Balance,分三步完成:A、登记科目的原币、原币折合本位币发生额。B、登记核算项目的原币、原币折合本位币发生额。C、若是非明细科目,则汇总其所有上级科目的发生数。以上三步操作中数据库中数据会发生变化的有表t_Balance中的FdebitFor,FcreditFor,FytdDebitFor,FytdCreditFor,FEndBalanceFor,FDebit,FCredit,FytdDebit,FYtdCredit,FendBalance十个字段。,凭证头/体表2/2,检查是否机制损益类凭证,如是结转机制凭证(FinternalInd=“TransferPL”、“RateAdjust”),则不更新余额表数据。若科目属于损益类科目(t_Account中FGroupID值大于500),且凭证分录中的FinternalInd字段值为“TransferPL”(自动结转),则将分录中的借或贷方发生额登记至表t_ProfitAndLoss中,分三步完成:A、登记损益类科目的原币、原币折合本位币发生额。B、登记核算项目的原币、原币折合本位币发生额。C、若是非明细科目,则汇总其所有上级科目的发生数。以上三步操作中数据库中数据会发生变化的有表t_ProfitAndLoss中的FamountFor,FytdAmountFor,Famount,FytdAmount四个字段。若科目或核算项目设有数量辅助核算,则更新表t_QuantityBalance,发生变化的字段有FDebitQty,FCreditQty,FYtdDebitQty,FytdCreditQty,FEndQty五个字段。表t_Voucher的对应字段Fposted=1,FpostID=过帐人ID,加上过帐标记。,固定资产业务相关表,基础资料表:T_FAAlterMode,T_FAGroup,T_FAStatus,T_FALocationT_FAEconomyUse,T_FACardItemDefine,T_FAGroupItem,T_FADeprMethod,T_FAUserDeprRate卡片变动相关表:T_FAAlter,T_FACard,T_FADevice,T_FAOrgFor,T_FADept,T_FACardItem余额与计提折旧相关表:T_FABalance,T_FAbalCard,T_FABalDevice,T_FABalOrgFor,T_FABalDept,T_FABalCardItem,其他表:T_FAClear,T_FAVoucher,功能表的对应,卡片业务图表,卡片新增,新增卡片变动情况(t_faalter),新增卡片基本信息(t_facard),新增自定义项目(t_facarditem),新增设备信息(t_fadevice),新增原值原币信息(t_faorgfor),新增部门分配(t_fadept),新增余额(t_fabalance),新增T_fabalcard,新增T_fabaldept,新增费用分配(t_faexpense),新增T_fabalexpense,动态信息,每期都不同,因此每期都有一条记录,表之间的关联ID,T_FAAlter,T_FABalance,T_FACard,t_facarditem,t_fadevice,t_faorgfor,t_fadept,t_faexpense,faalterid,T_fabalcard,T_fabaldept,T_fabalexpense,fbalid,fassetid,固定资产结账,系统参数检查,系统期间更新,插入修改t_fabalance,更新卡片表t_fabalcard,更新t_fabalcarditem,更新t_fabaldevice,更新t_fabalorgfor,更新t_fabaldept,更新t_fabalexpense,更新t_fabalcarditem,将下期折旧额清0,更新t_identity,更新t_fabbalance表最近变动日期fdate字段,固定资产对账,总帐的数据来自余额表和当期的凭证;固定资产的数据全部来自于t_fabalance余额表。,三、应收应付系统内容初始化单据业务核销报表期末结账,应收应付模块,初始数据录入,初始发票、应收单、预收单写t_RPBegData表,ftype=3销售发票、ftype=1应收单、ftype=5预收单。写t_rp_Contact表,插入往来记录,其标识是FisInit为1;同时在t_RP_RPDetail中插入收款(付款)计划记录。在发票涉及到的商品数量信息写入t_rpBegDetail表。关联ID:t_rpbegdata.FID=t_rp_Contact.FID=t_rpbegdetail.finvoiceid=t_rp_rpdetail.FOrgID票据在t_RP_Bill插入记录,FisInit为1。坏账在t_RP_NewBadDebt中插入记录,FisInit为1,初始数据与总账数据的传递,应收应付传递初始数据到总账系统:总账科目余额的数据将被替换:将t_RPBegData的数据按单据中的往来科目和相应的核算项目的设置汇总数据,写入t_balance表中总账科目的核算项目应收、应付无法提供时,数据将不被传递初始单据录入往来科目单据币别必须与科目币别一致从总帐引入应收账款余额:总账的应收科目必须设置核算项目,且要启用往来业务核算;同时在总账系统设置中也要启用往来业务核销功能,K/3主要模块数据库结构及问题分析,业务单据表,t_rp_Contact.Ftype(应收应付往来表)单据事务类型ID1其他应收单2其他应付单3销售发票4采购发票5收款单、预付单(Fpre=-1,应收退款单)6付款单、预收单(Fpre=-1,应付退款单)初始化时,如果单据未录入单据号(允许不录入单据号),则单据类型会保存为“10+单据类型值”。比如:初始化时,录入销售发票,未录入单据号,则该单据类型为:10+3=13。,发票相关数据表,工业销售发票表:icSale(Entry),工业采购发票:IcPurchase(Entry)商业销售发票表:icSale(Entry)、Com_InvSale(Entry),商业采购发票:IcPurchase(Entry)、COM_InvPur(Entry)。往来业务列表:t_rp_Contact收付款计划t_rp_rpDetail关联关系:IcSale.FinterID=t_rp_Contact.FinvoiceIDIcPurchase.FinterID=t_rp_Contact.FIDt_rp_rpDetail.FOrgID=t_rp_Contact.FID,其他应收、应付单,1.相关数据表t_rp_arpBill关联关系:t_rp_arpBill.FBillID=t_rp_Contact.FRPBillID2.单据录入在t_rp_arpBill插入其它应收单记录在t_rp_Contact往来业务列表插入记录,Ftype=1,FRPBillID=t_rp_arpBill.FBillID在t_rp_rpdetail插入收款计划表记录,FOrgID=t_rp_Contact.FID3.审核更改t_rp_arpBill其它应收单表中字段Fstatus字段值为审核状态值1,fchecker(审核人)更改t_rp_Contact往来业务列表中字段Fstatus字段值为审核状态值1,生成t_rp_ContactBal表的数据。,收付款、退款单,1.相关数据表t_rp_NewReceiveBill关联关系:t_rp_Contact.FBillID=t_rp_NewReceiveBill.FBillID2.录入单据在t_rp_NewReceiveBill收款单中插入记录系统,Fpre=0(0收款;1预收款;1退款)在t_rp_Contact往来业务列表中插入记录,Ftype=5,FBillID=t_rp_NewReceiveBillFBillID,Fpre=0(0收款1预收款1退款),票据相关表,票据表:t_rp_bill(Fstatus0-新增;1-审核;2-背书;3-转出;5-收款)票据收款表:t_rp_bill_settle票据背书表:t_RP_Bill_Endorse票据转出表:t_RP_Bill_Transfer票据贴现表:t_rp_bill_discount,物流管理系统,仓位表物料表系统参数表单据表余额表,基本表及字段的介绍,2、仓库、仓位t_Stock.Ftype:仓库类型实仓500;待检仓501;赠品仓502;代管仓503说明:实仓核算数量金额,虚仓只核算数量不核算金额。待检仓、赠品仓、代管仓都属于虚仓仓位:t_stockplace、仓位组:t_stockplacegroup,基本表及字段的介绍,3、物料数据表物料保存在t_Item和t_IcItem表中。T_ICItem主要字段计量单位:FUnitID,FUnitGroupID,FCUUnitID物料属性:ferpclsid(1:外购、2:自制、3:委外加工、5:虚拟件)计价方法:ftrack(76:加权平均、77:移动平均、78:先进先出、79:后进先出、80:分批认定、81:计划成本)物料科目:FAcctID、FCostAcctID、FsaleAcctID成本项目:FCostProject精度:FPriceDecimal、FQtyDecimal计划价:FPlanPrice业务管理:FISKFPeriod、FKFPeriod、FBatchManager检验设置:FIdentifier、FInspectionLevel、FinspectionProject,基本表及字段的介绍,4、系统参数表t_SystemProfileCurrentYear当前年CurrentPeriod当前期间StartPeriod启用期间StartYear启用年AuditChoice核算方式0:数量核算,1:数量、金额核算UnderStock是否允许负结存(1-允许,0-不允许)UPSTOCKWHENSAV库存更新控制0:审核更新,1:保存更新(ICStockBill中也包含此字段,需一致)说明:只有总帐和固定资产拥有自己的会计期间真实日期设置,其余模块包括物流的会计期间的起始日期都调用总帐的会计期间起始日期设置。,基本表及字段的介绍,5、余额表初始化余额表:ICInvInitIal(记录初始化录入的余额数据)存货余额表:ICBal(记录初始化后存货的收发存余额,包括批次及顺序等数据)库房存货余额表:ICInvBal(记录初始化结束后存货的收发存余额,包括仓库、仓位、批次、顺序及保质期等明细数据)虚仓余额表:POInvBal序列号余额表:EISnInvBal说明:I、BatchNO字段批号,用于业务批次批次管理、分批认定法、保质期管理的物料。当物料既使用分批认定法又使用批次管理,则二者共用此字段。库存单据和余额表都有FBatchNO字段,用法相同,基本表及字段的介绍,II、FBillInterID字段序号,用于先进/后进先出法,FBillInterID是系统自动分配的一个顺序号,用来区分各个批次的先后顺序,以前版本FBillIterID与FEntryID配合使用,分别取单据ID和分录ID,目前版本FBillIterID字段和单据ID没有任何关系,而FEntryID也已经作废。III、保质期FKFDate:生产日期、FKFPeriod:保质期、只有当物料使用保质期管理时,才使用FDFDate和FDFPeriod这两个字段。如果物料未使用保质期管理(t_IcItem.FIsKFPeriod=0),那么此物料在IcInvInitIal表IcStockBillEntry表Ic(Inv)Bal表中的FKFPeriod和FKFDate字段都必须为零或Null值,否则在进行及时库存查询时该物料会出现一正一负两条数据。IV、FPeriod字段关闭初始化前,IcInvInitIal表只保存初始化期间的数据,Fperiod=初始化所在期间;关闭初始化后,IcInvIntiaIal保存两个期间的数据:零期与本期的数据。其中零期的数据是初始化期间的数据,本期间数据用于期初始金额调整。,基本表及字段的介绍,6、工业单据相关表单据事物类型表ICtransactionType单据模版表ICtemplate,ICtemplateentry叙事簿模版IClisttemplate叙事簿模版事物类型表叙事簿的显示字段表:ICchatbilltitle叙事簿的显示字段表叙事簿的过滤条件:ICtableRelation选单模版表icselbills选单模板(作用选单时单据间携带数据的对应关系表)说明:I、工业单据的自定义信息保存在IcTemplate和IcTempLateEntry,自定义的选单关系定义在IcSelbills和IctableRelation表中。选单模板表中定义源单和目标单据的表与字段的对应关系,以实现将源单信息写入目标单据。,基本表及字段的介绍,基本关系,基本表及字段的介绍,出入库单:IcStockBill、IcStockBillEntry;采购发票:IcPurChase、IcPurChaseEntry;销售发票:IcSale、IcSaleEntry;采购订单:PoOrder、PoOrderEntry;销售订单:SeOrder、SeOrderEntry;物流单据编码规表:IcBillNo单据内码的进度表:IcMaxNum说明:在IcBillNo表中,系统是用此表的FCurNo字段跟踪各种事务类型单据的“单据号码进度”,以实现在下次新增单据时单据编号可以自动加1。在IcMaxNum表中,FMaxNum字段为当前最大ID。IcBillNo.FCurNo与IcMaxNum.FMaxNum如果落后与实际的单据代码与内码,会导致单据不能保存,提示“pk_XXXX重复,不能在XXXX表插入重复值”或提示不能删除已审核单据,基本表及字段的介绍,单据钩稽表:ICHookRelationsFhooktype:0采购发票和采购入库单的核销;1销售发票和销售出单的核销;2费用发票和委外入库的核销;3采购对等核销;4销售对等核销;5采购发票和委外入库单的核销;Fibtag:0采购销售发票;1出入库单;2费用发票FEquityHook:0为非对等核销;1对等核销说明:核销的问题主要是ICHookRelations丢失核销关系,或单据的核销关系ID丢失。需根据以上关系说明和不同的情况写SQL查询确认。这里就不一一例举。,主要流程的数据过程,主要流程介绍1.初始化启用期前的单据存放在ICStockBill、ICStockBillEntry中初始余额录入IcInvInitIal中,结束初始化后写入ICBal和ICInvBal中初始化ER图:,IcStockBill,IcInvInitIal,IcBal,IcStockBillEntry,IcInvBal,启用期前的单据,初始余额录入,工业物流余额表,主要流程的数据过程,2.校对即时库存涉及数据表:虚仓POInventory、实仓ICInventory、序列号库存表EISNInventory。实仓执行存储过程:p_UPDATEStorage虚仓执行存储过程:p_UPDATEPOStorageICInventory表数据形成过程:日常所做的每一笔库存收发不更新IcBal和IcInvBal,只更新IcInventory。在结帐前Ic(Inv)Bal只保存了本期期初结存数量,而无期末结存数量,即:Ic(Inv)Bal.FEndQty=0。及时库存更新方式有两种,审核更新和保存更新。IcStockBill.Fupstockwhensave字段记录了库存单据的更新方式:0:审核更新,1:保存更新。,主要流程的数据过程,校对及时库存:EXECCheckInventory首先清除IcInventory表所有记录,从IcBal中取出本期初结存数量,再从IcStockBill(Entry)汇总出本期的收入发出,计算出结存库存写入IcInventory表。IcInventory表的主键是:FItemID,FBatchNO,FStockID,FStockPlaceID,FKFPeriod,FKFDate,也就是及时库存按“物料、批次、仓库、仓位、保质期”的纬度来统计。如果并未起用仓位管理,但是如果在库存单据中携带仓位信息,那么会导致及时库存也按仓位来显示。或者物料未起用保质期管理.更改“库存更新”方式:1)t_systemprofile中fcategory=icandfkey=UPSTOCKWHENSAVE的值切换(0:审核更新,1:保存更新)2)更新库存单据的字段fUPSTOCKWHENSAVE(POStockBill、ICSTJGBill、POInStock、ICStockBill、ZPStockBill)3)校对及时库存,主要流程的数据过程,3.物流与总帐对帐不相符总帐的存货科目做了手工凭证;处理方法:用下面的SQL查询出存货类科目做的手工凭证,然后删除,在物流模块中按库存单据重新生成凭证。SELECTfyear,fperiod,fgroupid,fnumber,fvoucheridFROMt_voucherWHEREfdate=2008.01.01andfdate=2004.01.01andfdate凭证的金额;处理方法:删除错误凭证,根据库存单据重新生成凭证。-单据金额SELECTsum(famount)FROMIcStockBillEntryWHEREfinteridin(SELECTfinteridFROMIcStockBillWHEREFVchInterID=SVchInterID)-凭证金额SELECTsum(famount)FROMt_voucherentryWHEREFVOUCHERID=SVchInterIDandfaccountidin(SELECTFAcctIDFRO

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论