电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

金蝶KIS 金蝶KIS专业版固定资产数据结构及关键过程V1.ppt

金蝶KIS 金蝶KIS专业版固定资产数据结构及关键过程V1.ppt_第1页
1/58
金蝶KIS 金蝶KIS专业版固定资产数据结构及关键过程V1.ppt_第2页
2/58
金蝶KIS 金蝶KIS专业版固定资产数据结构及关键过程V1.ppt_第3页
3/58
固定资产数据结构及关键过程固定资产数据结构及关键过程内容提要内容提要卡片处理及数据结构分析卡片处理及数据结构分析计提折旧分析计提折旧分析期末处理期末处理报表分析报表分析基础资料表:T_FAAlterMode:变动方式表T_FAGroup:卡片类别表T_FAGroupItem,类别项目对照表--T_FAStatus:卡片使用状态表T_FALocation:存放地点表T_FAEconomyUse:经济用途表-----上述表中的内容,分别被T_facard、T_fabalcard表所引用T_FACardItemDefine:卡片定自义项目表T_FADeprMethod:折旧方法表t_FaDeprFormulaItems:折旧公式项目表T_FAUserDeprRate:每期自定义折旧率表数据表数据表卡片变动相关表:T_FAAlter:变动基本表T_FACard:卡片表T_FACardItem:卡片自定义项目表T_FADevice:附属设备表T_FAOrgFor:原值原币表T_FADept:部门分配表T_FAExpenses:折旧费用分配表t_FAPurchase:修购基金表,这个表一般没有记录,但当卡片发生修购基金的计提业务后,要保存记录。-----上述表中,分别通过Falterid与T_faalter表中的Falterid关联t_FaTmpCard:卡片暂存表数据表数据表余额与计提折旧相关表(每期余额状况表):T_FAbalance:余额表T_FABalCard:卡片每期状况表T_FABalCardItem:卡片自定义项目表T_FABalDevice:附属设备每期状况表T_FABalOrgFor:原值原币每期状况表T_FABalDept:部门每期分配情况表T_FABalExpenses:折旧费用每期分配情况表T_FABalPurchase:修购基金余额表,修购基金表,这个表一般没有记录,但当卡片发生修购基金的计提业务后,要保存记录。-----上述表中,分别通过Fbalid与T_fabalance表中的Fbalid关联数据表数据表数据表数据表其他表:T_FAClear:报废清理表T_FAVoucher:凭证业务对照表,通过Falterid与T_Faalter表关联,通过Fvoucherid与T_voucher表关联---以下表很少用到,只有在同一期间相同卡片发生多次变动时才使用t_FACardMulAlter:多次变动基本表t_FADeptMulAlter:部门多次变动表t_FADeviceMulAlter:附属设备多次变动表t_FAExpenseDetailMulAlter:折旧费用分配明细多次变动表t_FAExpenseMulAlter:折旧费用分配多次变动表t_FAOrgForMulAlter:原值原币多次变动表t_FADeviceBill:检修单据表t_FADeviceItem:单据自定义项目表t_FADeviceItemDefine:单据项目定义表t_FADeviceGroupItem:检修单中类别项目对照表卡片处理及数据结构分析卡片处理及数据结构分析卡片静态信息,不做变动,不再改变卡片变动卡片变动新增卡片变动情况(t_faalter)新增卡片基本信息(t_facard)新增自定义项目(t_facarditem)新增设备信息(t_fadevice)新增原值原币信息(t_faorgfor)新增部门分配(t_fadept)新增费用分配(t_faexpense)新增修购基金分配t_FAPurchase新增余额(t_fabalance)新增T_fabalcard新增T_fabalcarditem新增T_fabalexpense新增T_fabalOrgFor新增T_fabalDevice新增T_fabalDept新增T_fabalPurchase动态信息,每期都不同,因此每期都有一条记录卡片变动涉及数据表卡片变动涉及数据表T_fabaldeptT_FAAlterfassetidt_faorgforfalteridT_FACardt_facarditemt_fadevicet_fadeptt_faexpenset_FAPurchaseT_fabalcardt_faBaldeviceT_FABalanceT_fabalcarditemT_fabalexpenseFbalidt_faBalorgfort_FABalPurchase表间关系表间关系T_FACardt_facarditemt_fadevicet_fadeptt_faexpenset_FAPurchaset_FAclear仅清理时发生t_favoucher基础资料表基础资料表t_faaltermode(变动方式类别表),t_fastatus(使用状态类别表),t_FADeprMethod(折旧方法定义表),t_fagroup(卡片类别表),t_falocation(存放地点表)t_fagroup(卡片类别表),t_falocation(存放地点表)变动基本表:T_FAAlter卡片基本信息表:T_FACard原值原币表:T_FAOrgFor固定资产部门分摊表:T_FADept折旧费用分摊表:T_FAExpenses自定义卡片项目表:T_FACardItem附属设备表:T_FADevice修购基金分配:t_FAPurchase保留静态信息,只在变动期间保留一次其中其中::修购基金表中的记录只在企业计提了修购基金时,才会产生记录,普通卡片不会记录数据。只有产生了t_FAPurchase表中的数据,才会产生t_FABALPurchase表中的数据。只在卡片变动时记录的静态信息表只在卡片变动时记录的静态信息表余额表:t_FABalance卡片每期状况表:t_FABalCard附属设备每期状况表:t_FABalDevice原值原币每期状况表:t_FABalOrgFor部门每期分配情况表:t_FABalDept折旧费用每期分配情况表:t_FABalExpense卡片自定义项目每期状况表:t_FABalCardItem每期都会记录的动态信息表每期都会记录的动态信息表余额表和余额相关表:余额表和余额相关表:动态信息,每期保留一条,直到卡动态信息,每期保留一条,直到卡片清理片清理其中其中:在所有固定资产记录表中,只有t_faalter和t_fabalance表中,才记录了年度Fyear和期间Fperiod的信息,其他表都不记录。新增卡片变动情况(t_faalter)新增卡片基本信息(t_facard)新增自定义项目(t_facarditem)新增设备信息(t_fadevice)新增原值原币信息(t_faorgfor)新增部门分配(t_fadept)修改余额(t_fabalance)新增T_fabalcard新增T_fabaldept新增费用分配(t_faexpense)新增T_fabalexpenseT_faclear卡片变动(清理)卡片变动(清理)部门,费用科目,折旧方法的变动与新增卡片的保存方式一样变动与新增基本相似唯一差异,写入t_fabalance信息不同变动卡片内码原值调减原值调增折旧调减折旧调增变动数量每期内码T_fabalanceT_fabalcard清理,可以看作是原值和累计折旧减少的变动清理差异,写入t_fabalance,t_fabalcard,t_faclear信息不同关系累计折旧+净值-累积折旧调整=0而净值=本期折旧T_fabaldept,Fitemid表示使用部门,存在多个Fbalid=15表示该卡片分配给了多个部门,每个部门上一行记录卡片计提折旧时,分别更新T_fabaldept、T_fabalexpense表中的Famount,计提折旧T_fabalexpense,Fdeptid表示费用分配部门,一般按谁使用谁受益的原则,它应该与T_fabaldept表中的Fitemid对应卡片计提折旧时,同时根据上述表中相同卡片的Famount汇总后,更新T_fabalance表中的Fdepr,形成本期的计提折旧金额最后,根据T_fabalexpense表中的Facctid、Fdetailid汇总后生凭证案例:清理不正确,导致下期对帐时,期初折旧与总帐不符此问题是由于在上期做清理之前没有先记提折旧,所以卡片做清理时,清理的折旧数据错误导致。判断原则:当月清理的卡片,必须保证期初折旧+本期折旧+调增-调减=0,否则下期对帐一定不平(调减也就是清理的折旧)执行下面SQL找出不正确的清理卡片(aa不为0,则此卡片清理不正确)selectfasetid,(sum(FAccumDeprP)+sum(fdepr)+sum(faccumdeprinc)-sum(faccumdeprdec))asaafromt_fabalancewherefperiod=’期间’andfyear=’年度’andfassetidin(selectfassetidfromt_faclearwherefperiod=’期间’andfyear=’年度’)groupbyfassetid处理方法:如果更改数据库,虽能解决此问题,但是已生成的相对应的总帐凭证却是错的。所以彻底的解决办法是:反结到第上期,将错误的清理卡片删除掉,然后重新记提折旧之后再清理.这样结到下期之后将不会再发生这种情况.或则,直接在总帐当期做凭证调整进入系统时提示需要进行卡片调整,可以运行以下SQL进行数据调整:因为t_faexpense及t_fabalexpense表中的部门虽然丢失了,但是与之相对应的t_fadept表及t_fabaldept表中的部门数据却没有丢失,所以可以将之替换到与之相对应的表内。请运行以下SQLupdateaseta.fdeptid=x.fitemidfromt_FAbalexpensea,t_FABalDeptxwherea.fbalid=x.fbalidanda.fbalidin(selectfbalidfrom(selecta.fitemid,a.fbalid,b.fdeptidfromt_FABalDeptaleftjoint_FAbalexpensebona.fbalid=b.fbalidanda.fitemid=b.fdeptid)cwherefdeptidisnull)updateaseta.fdeptid=x.fitemidfromt_FAexpensea,t_FADeptxwherea.falterid=x.falteridanda.falteridin(selectfalteridfrom(selecta.fitemid,a.falterid,b.fdeptidfromt_FADeptaleftjoint_FAexpensebona.falterid=b.falteridanda.fitemid=b.fdeptid)cwherefdeptidisnull)计提折旧分析计提折旧分析计提折旧分摊本期折旧到部门与折旧费分配表调用折旧子函数算出折旧额率调用折旧子函数算出折旧额生成计提折旧凭证取得本期要折旧卡片的信息记录集合清除本期部门与折旧费用分配表(0)第一阶段第二阶段第三阶段计提折旧的特点1.计提折旧是采用公式计算折旧额和折旧率,0,1,2,3,4,5,6折旧方法为系统予设,0为没有公式,不提折旧,1,2,3,4,5折旧时全用卡片入帐时的信息来折旧,6变动时采用的方法,以变动后的值来折旧.同时系统允许自定义折旧公式(自定义折旧公式和自定义折旧率法),自定义折旧率法折旧时用入帐时的值为基础来体折旧,自定义方法用自定义的计算项目值提折旧取得本期要折旧卡片的信息记录集合Selectj.*,z.FassetNumber,z.FassetName,z.FDeprAcctId,z.Forgval,z.FResidueval,z.FDeprMethodid,z.Flifeperiods,z.FDeprPeriods,z.Fbuildvoucher,z.FLocationName,z.FFormula,z.FIsWorkLoad,z.FDeprOption,z.FUserRate,z.FGroupName,i.FInitDate,i.FBeginUseDate,i.FOrgValS,i.FAccumDeprS,i.FResidueValS,i.FDecPreReadS,i.FLifePeriodsS,i.FPeriodsUsedS,q.FaccumDeprA,q.FperiodsUsedAfromJleftouterjoinIoni.Fassetid=j.fassetidleftouterjoinQonq.Fassetid=j.Fassetidandq.fyear=j.Falteryearandq.fperiod=j.falterperiodandq.FCleared=j.FAlterClearedleftouterjoinZonz.Fassetid=j.fassetid折旧信息(Selecta.FassetId,a.FBalId,a.fworkload,a.fdeprshould,a.fader,a.fdate,a.FOrgvalP,a.FAccumDeprp,FAccumDeprInc,FAccumDeprDec,a.FDecPreP,a.FDeprShouldLP,a.FDeprRemain,d.ForgvalForgvalA,d.FResiduevalFResiduevalA,d.FAMiuValueReadFDecPreReadA,d.FlifePeriodsFlifePeriodsA,c.FyearFalterYear,c.FperiodFalterPeriod,c.FClearedFAlterClearedFromT_FaBalancea,T_FaBalCardb,T_Faalterc,T_FaCarddWherec.FAlterNum=(Selectmax(FAlterNum)fromt_FAAlterWherefassetid=c.fassetid)anda.Fyear=2001anda.FPeriod=1Anda.FOrgvalp<>0Anda.FBalId=b.FBalIdAnda.FAssetId=c.Fassetidanda.Fdate=c.Fdateandc.Falterid=d.FalteridAnda.FCleared=c.FClearedAnda.FHasDepr=1)J(Selectb.Fassetid,b.FdateFInitDate,a.FBeginUseDate,a.FOrgValFOrgValS,a.FAccumDeprFAccumDeprS,a.FAMiuValueReadFDecPreReadS,a.FResiduevalFResidueValS,a.FLifePeriodsFLifePeriodsS,a.FPeriodsUsedFPeriodsUsedSfromt_facarda,t_faalterbwherea.Falterid=b.falteridandb.fnew=1)I(SelectFassetid,fyear,fperiod,FCleared,Faccumdeprp+faccumdeprinc-faccumdeprdec+FdeprFaccumDeprA,FdeprperiodsFperiodsUsedAfromt_FAbalance)Q(Selecta.FassetId,b.FassetNumber,b.FModel,b.FassetName,b.FDeprAcctId,b.Forgval,b.FResidueval,b.FDeprMethodid,a.FDeprPeriods,b.Flifeperiods,b.Fbuildvoucher,l.FnameFLocationName,c.FFormula,c.FIsWorkLoad,c.FDeprOption,c.FUserRate,e.FnameFGroupNameFromT_FaBalancea,T_FaBalCardb,T_FaDeprMethodc,T_FaStatusd,T_FaGroupE,T_FalocationlWherea.Fyear=2001Anda.Fperiod=0Anda.FBalId=b.FBalIdandb.FStatusId=d.FIdAndb.FGroupId=e.FIdAndb.FLocationId=l.FidAndc.Fid=b.FDeprMethodId)Z折旧信息理解此SQL语句,关键在J,I,Q,Z三个查询表J表:取期初信息和上一次变动信息,主要用于折旧公式变动6和自定义公式计提折旧I表:取初始卡片信息,主要是由于折旧方法为1,2,3,4,5的卡片计提折旧Q表:最近一次变动后卡片期末的累计折旧,已使用期间等信息,与j结合,用于折旧方法6Z表:取上一期卡片信息和计算折旧方法,如果刚好是第一期,则a.fperiod=0,折旧信息调用函数计算折旧额取出z.Flifeperiods,z.FdeprPeriods,z.Fresidueval对应Z表,实际Flifeperiods(预计使用期间)Fresidueval(预计净残值)来源t_fabalcard,而FdeprPeriods(已使用期间)来源t_fanalanceForgvalP(期初原值)对应J表,实际来源当期t_fanalanc的Forgval(期初原值),来判断卡片是否要计提折旧:条件一:FdeprPeriods>Flifeperiods(已提折旧期间>=预计使用期间)Ifrs(FDeprRemain)>0Then------------------剩余折旧额>0Ifrs(FDeprShouldLP)*2=2ThenDeprValue=DDB(rs(FOrgValS),rs(FResidueValS),Years,Yearid,2)/PeriodCountElse'双倍余额递减法到了最后两年用直线法DeprValue=rs(FOrgValS)-rs(FResidueValS)-rs(FAccumDeprP)'净值Ifrs(FLifePeriodsS)-rs(FDeprPeriods)<=0ThenDeprValue=0ElseDeprValue=DeprValue/(rs(FLifePeriodsS)-rs(FDeprPeriods))'净值/剩余期间折旧计算折旧方法6:动态平均法计算公式:折旧额=(调整后原值-调整后累计折旧-调整后预计净残值-调整后减值准备)/调整后剩余使用期间取数来源J和Q表:ForgvalA,FResiduevalA,FDecPreReadA,FlifePeriodsA对应J表,实际主要来源t_facard(变动的卡片)的Forgval,FResidueval,FDecPreRead,FlifePeriodsFaccumDeprA,FperiodsUsedA对应Q表,实际主要来源t_fabalance中的FaccumDeprA=Faccumdeprp+faccumdeprinc-faccumdeprdec+Fdepr,FperiodsUsed(t_fabalance只放映期初数据)对应公式:(ForgvalA-FaccumDeprA-FResiduevalA,-FDecPreReadA,)/FlifePeriodsA-FperiodsUsedA自定义折旧方法:如果从t_fabalcard取出的折旧方法是>1000,并且fuserate<>o则是用户自定义折旧率法deprvalue=forgvals-fresiduevalsdeprvalue=deprvalue*折旧率/100折旧计算5.'处理特殊情况'一:计提的折旧额比剩余净值大,导致净值出现负数:提剩余值'二:最后一期,折旧没有提完:根据设置,提完或只提应提数SalOrg=rs(FOrgValP)-rs(FResidueVal)-rs(FAccumDeprP)剩余净值SalLife=LifePeriods-rs(FDeprPeriods)‘剩余期间IfSalLife<=1Andrs(FDeprMethodId)<>3Andrs("FDeprMethodId")<1000ThenIfSalOrg>DeprValueThen'SalOrg为未提的折旧额Ifrs(FDeprOption)=0Then'最后期间全部提完DeprValue=SalOrgElseIfrs(FDeprOption)=2Then‘最后一期剩余折旧额大于2倍当期折旧额则继续提取,否则当期提IfSalOrg>DeprValue*2Then将剩余金额写入当前余额表updatet_fabalancesetfdeprshouidlp=fdeprvalue,fdeprremain=salorg折旧计算第一阶段问题分析1.余额记录(t_fabalance)日期与变动表(t_faalter)不一致2.上期余额记录(t_fabalance)丢失3.原值和累计折旧科目丢失提取卡片折旧要素,常见的错误是:折旧相关要素取不到,系统提示‘null’错误折旧分析思维聚焦:提取本期折旧卡片信息是否全面,完整,t_facard的原值科目,折旧方法(t_fabalcard),原值,累计折旧,剩余期间,t_fabalance上期卡片记录是否丢失(比较上下期记录条数)Selectj.*,z.FassetNumber,。。。第二阶段问题分析1.折旧方法丢失(t_fabalcard和t_facard不一致)2.已到最后一期3.参与折旧计算的原值,累计折旧,预计使用期间等数据发生变化计算折旧阶段,常见问题是系统折旧额与手工不符折旧分析思维聚焦:直接检查卡片上的折旧要素(t_fabalance),根据折旧方法的计算公式手工计算折旧,再进一步确定问题原因。Select*from(Selectj.*,z.FassetNumber,。。。)bwherefassetid=?第三阶段问题分析1.费用科目非明细科目,科目项目非明细,或折旧费用科目带其它项目核算(部门)2.核算项目丢失3.t_fabalexpense记录丢失4.费用科目输入错误生成凭证阶段,常见问题,凭证无法生成,或则凭证金额与实际折旧额不符折旧分析思维聚焦:汇总t_fabalexpense当期折旧额,生成凭证,借方科目为t_fabalexpense的facctid,贷方为t_facard中的fdepracctid累积折旧科目计提折旧时提示“科目无权限”,无法进行下去,如何处理?答复:为什么说没有权限呢?登陆的身份是系统管理员,具有所有的权限,所以真正的原因肯定不是因为权限的问题。由于曾经发生过已经授权的用户授权信息丢失的案例,故新建了一个用户,授予了所有的权限,但依然出现这个错误提示,所以排除权限的问题。后来使用profile工具进行跟踪,发现程序在科目表中查找一条内码为0的科目,为什么会是内码为0呢?这说明某个卡片使用的科目内码为0。经查找t_faexpense和t_fabalexpense表,发现折旧费用科目有为0的记录。解答:一般来说是固定资产所使用的科目内码为0,如累计折旧科目。这种问题一般来说是升级或导数据的原因造成的。处理的方法是到卡片表t_facard和t_fabalcard中把fdepracctid为0的记录改为正确的科目内码即可问题.提折旧提示“核算项目没有权限”,无法进行下去,如何处理?答复:分析过程:这个问题和提示“科目没有权限”类似,但内容不一样,这一次是“核算项目”。经查,固定资产相关科目设置了核算项目,如果不设置类别核算的话,是不需要用到核算项目的。到t_faexpense和t_fabalexpense表中查找到fdetailid,然后在t_itemdetail查找对应的核算项目,发现这些核算项目内码对应的t_item表的记录为非明细核算项目或则该核算项目已经做了删除标志,这当然是不允许的。解答:一般是所对应的使用部门或折旧费用科目所对应的核算项目不存在或非明细的核算项目。处理方法是到部门分配表(t_fadept和t_fabaldept)和核算项目详情表t_itemdetail中把核算项目内码更正过来或者把对应的核算项目置为最明细即可。案例分析Selectdistinctfacctidfromt_fabalexpensewherefacctidnotin(selectfaccountidfromt_accountwherefdetail=1)select*fromt_accountwherefaccountidin(Selectdistinctfacctidfromt_fabalexpense)科目无权限核算项目无权限Selectdistinctfdetailidfromt_fabalexpensewherefdetailidnotin(selectfdetailidfromt_itemdetail)Selectdistinctfdetailidfromt_fabalexpensewherefdetailidnotin(selectfdetailidfromt_itemdetailv)ExecSp_cleanitemdetailvSelectfitemid,*fromt_itemdetailvwherefitemidnotin(selectfitemidfromt_itemwherefdetail=1)Select*fromt_department(t_org)期末处理期末处理系统参数检查系统期间更新插入修改t_fabalance更新卡片表t_fabalcard更新t_fabalcarditem更新t_fabaldevice更新t_fabalorgfor更新t_fabaldept更新t_fabalexpense更新t_fabalcarditem将下期折旧额清0更新t_identity更新t_fabbalance表最近变动日期fdate字段固定资产结帐只更t_fabal开头的表更新t_fabalance一.获得当期最小余额fbalid,获得t_fabalance最大余额fbalid(不是当期最大,可能反结帐)进而把所有介于在当期最小fbalid和最大fbalid的所有t_fabalance记录,假如结果集为S,找出来做如下处理(注意S集合可能只是当期的余额,也可能包括以后期间的余额(反结帐情况下)二.先更新当期余额表中已提折旧期间数(初始化不更新)S集合(本期)t_fabalance中已提折旧卡片的fdeprperiods加1三.更新期初数S集合已存在下期余额的记录(作过反结帐),只要更新S集合的期初数和发生数据(因为反结帐后,即使对原值,累积折旧或其它元素发生了改变,则变动产生的数据差异,已在变动处理时,已作过调整,反映到t_fabalance)。说明:b指当期t_fabalance固定资产结帐期初数据下期.Fdeprperiods=b.Fdeprperiods下期.forgvalp=b.forgvalp+b.forgvalinc_b.forgvaldec下期.fdecprep=b.fdecprep+.B.fdecprep_b.fdecpredec下期.faccumdeprp=b.faccumdeprp+b.deprinc-b.depredc下期.fnump=b.fnump+b.fnumalter-----数量四.更新本年累计数据如果年结,则所有累计数为0或则。下期累数=当期累数+当期发生固定资产结帐另一种情况,无下期记录,从当期取数然后插入生成下期记录(已清理的固定资产卡片下期不在登记余额)insertintot_fabalance期初数下期fbalid=当期fbalid+1+最大fbalid-最小fbalid下期期出数据=当期期初+当期增加-当期减少本年累计数如果年结,则本年累计数为0否则下期本年累计数=当期本年累计数+当期发生数1.更新卡片表t_fabalcard以t_fabalance为基础,从FBALid取fbalid固定资产结帐固定资产反结帐特点:固定资产反结帐,不会删除以后期间的数据,仅仅做以下操作:1.更新上期余额表中的已提折旧期间字段(反初始化不更新)3.修改系统参数,固定资产当前期间减1固定资产结帐,对于有数据的情况,则不会更新记录期末结帐时,提示算术溢出,如何处理?原因:com_balance的fbalid太大,超过系统定义范围思路:重新编排com_balance的fbalidselect*intot_fabal_hetempfromt_fabalancewherefyear>(selectfvaluefromt_systemprofilewherefcategory='fa'andfkey='currentyear')--根据实际需要修改条件--生成新旧内码对照表selectdistinct(fbalid)ASFoldid,IDENTITY(int,1,1)asfnewidinto#tmpafromt_fabalance用新内码更新就内码案例分析反结帐回去修改以前的卡片信息,然后结帐回来,但是修改后的信息没有更新过来,如何处理?有那些注意事项?--备份需要删除的数据--删除>2004年的数据--大于当前年度的select*intot_fabal_hetempfromt_fabalancewherefyear>(selectfvaluefromt_systemprofilewherefcategory='fa'andfkey='currentyear')--根据实际需要修改条件--根据临时表删除相关数据deletefromt_FABalCardItemwherefbalidin(selectfbalidfromt_fabal_hetemp)deletefromt_FABalCardwherefbalidin(selectfbalidfromt_fabal_hetemp)deletefromt_FABaldevicewherefbalidin(selectfbalidfromt_fabal_hetemp)deletefromt_FABalorgforwherefbalidin(selectfbalidfromt_fabal_hetemp)deletefromt_FABaldeptwherefbalidin(selectfbalidfromt_fabal_hetemp)deletefromt_FABalexpensewherefbalidin(selectfbalidfromt_fabal_hetemp)deletefromt_fabalancewherefbalidin(selectfbalidfromt_fabal_hetemp)droptablet_fabal_hetemp报表分析报表分析T_fabalexpense,t_fabaldept,t_fabalance,t_fabalcard,与折旧凭证的关系报表分析Select*fromt_fabalancewherefperiod=10andfyear=2004Select*fromt_fabaldeptwherefbalidin(Selectfbalidfromt_fabalancewherefperiod=10andfyear=2004)同一期间,折旧金额相同,折旧凭证中的折旧额直接来源T_fabalexpense•固定资产清单:•固定资产清单的内容来自t_fabalance,t_fabalcard,t_fabaldept,t_fabalexpense,t_faalter等等余额相关表和变动相关。固定资产清单是可以按期间查询的。其中有一个选项,是“多部门使用”的固定资产是否显示,或则如何显示的问题。一个固定资产如果有多个部门使用,那可以只显示其中的一个部门,也可以多个部门都显示出来。报表分析•折旧费用明细表、折旧费用汇总表:•两个表的数据来源都是t_fabalance,t_fabalcard,t_fabaldept,t_fabalexpense等等余额相关表,只不过是折旧汇总表只显示汇总数据,而明细表把每个卡片的各自数据都显示出来。一般情况下,不论固定资产数据是否存在数据不一致的情况,但这两个表的数据都是一致的,因为他们的来源和算法一样。报表分析•折旧费用分配表:•这个表的数据来自t_fabalance、t_fabalcard、t_fabaldept、t_fabalexpense等等余额相关表。•固定资产明细帐:•固定资产明细帐除了折旧凭证的信息外,所有数据来自t_fabalance、t_falter、t_facard等余额和变动相关表。折旧凭证的信息来自凭证表中fobjectname=’fa’和fparameter=’depr’的当期折旧凭证报表分析固定资产的t_fabalexpense数据丢失,如何从t_fabalance,t_faexpense恢复deletefromt_fabalexpensewherefbalidin(selectfbalidfromt_fabalancewherefperiod=1andfyear=2005)insertintot_fabalexpense(fbalid,facctid,fdetailid,frate,famount,fdeptid)selectc.fbalid,e.facctid,e.fdetailid,e.frate,0,e.fdeptidfrom(selecta.falterid,b.fbalidfromt_fabalanceb,t_faalterawhereb.fperiod=1andb.fyear=2005andb.fassetid=a.fassetid)c,t_faexpenseewheree.falterid=c.falterid自动对帐分析•总帐的数据来自余额表和当期的凭证;•固定资产的数据全部来自于t_fabalance余额表。•固定资产系统取数•固资原值:•selectisnull(sum(a.FOrgValP),0)OrgValBegin,isnull(sum(a.FOrgValInc),0)OrgValD,isnull(sum(a.FOrgValDec),0)OrgValCfromt_fabalancea,t_faalterb,t_facardc,t_accountdwherea.fassetid=b.fassetidanda.faltdate=b.fdateandb.falterid=c.falteridandc.Fassetacctid=d.faccountidandd.Fdetail=1anda.fyear=2001anda.fperiod=3And(d.Fnumber='1501'ord.Fnumberlike'1501.%')•累计折旧:•selectisnull(Sum(a.FAccumDeprP),0)AccumDeprBegin,isnull(sum(a.Faccumdeprdec),0)AccumDeprD,isnull(sum(a.fdepr+a.faccumdeprinc),0)AccumDeprCfromt_fabalancea,t_faalterb,t_facardc,t_accountdwherea.fassetid=b.fassetidanda.faltdate=b.fdateandb.falterid=c.falteridandc.FDepracctid=d.faccountidandd.Fdetail=1anda.fyear=2001anda.fperiod=3And(d.Fnumber='1502'ord.Fnumberlike'1502.%')自动对帐分析•减值准备:•selectisnull(sum(a.FDecPreP),0)DecValBegin,isnull(sum(a.FDecPreInc),0)DecValC,isnull(sum(a.FDecPreDec),0)DecValDfromt_fabalancea,t_faalterb,t_facardc,t_fagroupe,t_accountdwherea.fassetid=b.fassetidanda.faltdate=b.fdateandb.falterid=c.falteridandc.fgroupid=e.fidande.fdecpreacctid=d.faccountidandd.Fdetail=1anda.fyear=2001anda.fperiod=3And(d.Fnumber='1505'ord.Fnumberlike'1505.%')自动对帐分析•总帐取数•固资原值:Selectisnull(Sum(a.FBeginBalance*b.Fdc),0)OrgValBegin,isnull(sum(a.FDebit),0)OrgValD,isnull(sum(a.FCredit),0)OrgValCfromt_Balancea,t_accountbwherea.Faccountid=b.Faccountidanda.Fyear=2001Anda.FPeriod=3Anda.Fcurrencyid=0Anda.Fdetailid=0And(b.Fnumber='1501')自动对帐分析•总帐取数•累计折旧:Selectisnull(Sum(a.FBeginBalance*b.Fdc),0)AccumDeprBegin,isnull(sum(a.FDebit),0)AccumDeprD,isnull(sum(a.FCredit),0)AccumDeprCfromt_Balancea,t_accountbwherea.faccountid=b.faccountidanda.Fyear=2001Anda.FPeriod=3Anda.Fcurrencyid=0andb.Fdetailid=0And(b.Fnumber='1502')自动对帐分析•总帐取数•减值准备:Selectisnull(Sum(a.FBeginBalance*b.Fdc),0)DecValBegin,isnull(sum(a.FDebit),0)DecValD,isnull(sum(a.FCredit),0)DecValCfromt_Balancea,t_accountbwherea.Faccountid=b.Faccountidanda.Fyear=2001Anda.FPeriod=3Anda.Fcurrencyid=0Anda.Fdetailid=0And(b.Fnumber='1505')自动对帐分析思路:1.直接对t_fabalance当期原值,累计折旧,发生额求和,与总帐比较,是否相等?相等,则意味着与总帐一致,可能是科目设置,变动日期等条件有误2.把对帐SQL语句跟踪出来,放到查询分析器分析,一般做法是把条件一个一个屏蔽,找出是哪个条件影响结果,把这个条件找出,问题,也就解决了案例分析•如上图如示,当发生自动对帐不平时,因为自动对帐除检查年份、月份之外,还会检查变动日期,所以可以用以下SQL进行日期调整。•updatebalsetfaltdate=faalter.fdatefromt_fabalancebal,t_faalterfaalterwherefaalter.fassetid=bal.fassetidandfaalter.falterid=(selectmax(falterid)fromt_faalterwherefassetid=faalter.fassetidand(fyear

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

金蝶KIS 金蝶KIS专业版固定资产数据结构及关键过程V1.ppt

管理软件+ 关注
实名认证
内容提供者

管理软件资料分享

确认删除?
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
微信
  • 微信