应收应付核销规则及常见问题

合集下载

应收应付会计财务制度

应收应付会计财务制度

应收应付会计财务制度一、总则为规范企业的应收应付账款管理,保障企业的资金安全和合法权益,制定本制度。

二、适用范围本制度适用于公司的所有应收应付业务。

三、应收账款管理1. 应收账款的确认(1)应收账款是指公司销售商品或提供劳务后,客户应支付给公司的款项。

应收账款的确认以货物或劳务交付、服务完成并能够取得相应的价款为准。

(2)公司应当及时向客户确认销售订单,并在销售完成后将销售记录和应收账款确认记录进行对应。

确认后,将应收账款计入账簿。

2. 应收账款的核销(1)应收账款逾期未收回时,公司应及时与客户联系,催促其支付欠款。

(2)如果客户无法支付欠款,公司应及时按照规定程序核销坏账。

3. 应收账款的管理(1)公司应建立健全客户信用评估制度,对客户的信用情况进行评估,确保销售给信用良好的客户。

(2)公司应及时更新应收账款账龄分析表,掌握应收账款的情况。

4. 应收账款的回款(1)公司应制定应收账款回款计划,保证应收账款能够及时回笼。

(2)公司应定期对应收账款回款情况进行统计分析,及时发现问题并采取应对措施。

四、应付账款管理1. 应付账款的确认(1)应付账款是指公司向供应商购买商品或接受劳务后,在约定的期限内应支付的款项。

(2)公司应及时向供应商确认采购订单,并在采购完成后将采购记录和应付账款确认记录进行对应。

确认后,将应付账款计入账簿。

2. 应付账款的核销(1)公司应按照约定期限及时支付应付账款,避免逾期支付。

(2)如有延期支付的情况,应及时与供应商沟通并提前协商,确保延期支付不影响正常的业务合作。

3. 应付账款的管理(1)公司应建立健全供应商管理制度,及时更新供应商信息,建立供应商信用评估制度,确保与信誉良好的供应商合作。

(2)公司应重视应付账款账龄管理,定期进行账龄分析,及时发现问题。

4. 应付账款的支付(1)公司应制定应付账款支付计划,确保按时支付应付账款。

(2)公司应加强与银行和供应商的联系,确保支付流程顺畅。

应收应付管理制度

应收应付管理制度

应收应付管理制度一、概述应收应付管理制度是企业管理财务的重要组成部分,是企业财务管理工作的重要内容。

应收应付管理制度可以规范企业的经营行为,提高企业的资金使用效率,降低企业的财务风险,保障企业的健康发展。

本制度适用于公司内部的应收应付管理工作。

二、应收管理1、应收款的确认(1)管理人员要及时核对客户的销售订单,保证订单准确无误。

确认无误后,由财务部门进行账款确认。

(2)应收款确认后,由销售部门制作应收账款清单,清单上要注明客户名称、欠款金额、欠款期限等。

2、收款管理(1)销售合同生效后,财务部门要及时与客户联系,确认收款时间和账户。

(2)财务部门要制作收款计划,根据客户的付款情况制定合理的收款周期和方式。

(3)收到客户的付款后,及时更新应收账款清单,确认付款金额无误。

3、应收款的催款(1)若客户逾期未付款,销售部门要及时与客户联系,催促客户尽快付款。

(2)若客户拒绝付款或无法付款,销售部门要及时上报财务部门,由财务部门制定应对方案。

(3)定期对逾期未付的客户进行回访,并提出合理的催款方案,以保证尽快回笼资金。

4、应收款的核销(1)对于长期逾期未付的客户,销售部门要及时向财务部门进行报告,由财务部门决定是否对账款进行核销。

(2)核销应收款需要公司领导的批准,必须通过多方确认,避免风险的发生。

三、应付管理1、应付款的确认(1)采购部门收到供应商的发票后,要及时核对发票内容和价格,并与采购订单、收货单进行核对,确认无误后,由财务部门负责确认。

(2)应付款确认后,由采购部门制作应付账款清单,清单上要注明供应商名称、欠款金额、付款期限等。

2、付款管理(1)供应商提供了发票后,财务部门及时整理发票,做好付款计划。

(2)根据财务部门的付款计划,采购部门进行核对确认,然后由财务部门进行付款。

(3)付款时要确保发票和付款单据一致,付款金额无误。

3、应付款的催付(1)若公司逾期未付款,财务部门要及时与供应商联系,催促供应商尽快提供服务或货物,并付款。

应收应付核销规则及常见问题

应收应付核销规则及常见问题

应收应付核销规则及常见问题一核销规则13>.1核销规则概述核销作为应收应付系统的三大功能(单据、核销和报表)之一,主要是用来对往来账款进行各种形式的核销处理。

由于收款到账的时间差异性等特点,因此核销与账龄分析表、到期债权列表、应收计息表,往来对帐(单据余额)等有直接影响,对通过单据的录入可以及时获悉往来款的余额资料,如应收款汇总表,应收款明细表等没有直接影响。

目前应收应付系统共有七种核销方式,其中前三种还可以按照金额、数量和应收单号核销。

下面将分别介绍这七种核销方式的处理规则和生成的单据情况。

1.2 到款结算1.2.1 到款结算定义到款结算就是应收款(发票+其他应收单)与到款(收款单+退款单)的核销。

基本规则就是看看哪些到款单据对应哪些应收款单据,然后输入参与核销的金额就可以了。

1.2.2 到款结算的核销规则应收款与到款是否要求相等,如果不等如何处理可以不相等,如果不相等就会按照应收款与到款中最小的金额核销。

如果相等,你会发现你选择的单据核销后全部消失了,如果不相等,你会发现那些单据金额较大的单据留下来,不过未核销金额就减少了。

应收款与到款如果可以不相等是否出现提示不会出现提示是否生成单据不生成单据是否要求同一客户要求核销时应收单据如何处理单据余额减少本次核销金额核销时收款单据如何处理单据余额减少本次核销金额核销后是否生成单据不生成单据1.3 预收款冲应收款1.3.1预收款冲应收款定义中国最庞大的数据库下载到款结算就是应收款(发票+其他应收单)与预收款(预收单+退款单)的核销。

基本就是选择(预收单+退款单)与相应的应收款(发票+其他应收单),然后核销。

1.3.2预收款冲应收款规则应收款与预收款是否要求相等,如果不等如何处理可以不相等,如果不相等就会按照应收款与到款中最小的金额核销。

如果相等,你会发现你选择的单据核销后全部消失了,如果不相等,你会发现那些单据金额较大的单据留下来,不过未核销金额就减少了。

应收应付核销规则及常见问题分析

应收应付核销规则及常见问题分析

一核销规则核销规则概述核销作为应收应付系统的三大功能(单据、核销和报表)之一,主要是用来对往来账款进行各种形式的核销处理。

由于收款到账的时间差异性等特点,因此核销与账龄分析表、到期债权列表、应收计息表,往来对帐(单据余额)等有直接影响,对通过单据的录入可以及时获悉往来款的余额资料,如应收款汇总表,应收款明细表等没有直接影响。

目前应收应付系统共有七种核销方式,其中前三种还可以按照金额、数量和应收单号核销。

下面将分别介绍这七种核销方式的处理规则和生成的单据情况。

到款结算1.2.1 到款结算定义到款结算就是应收款(发票+其他应收单)与到款(收款单+退款单)的核销。

基本规则就是看看哪些到款单据对应哪些应收款单据,然后输入参与核销的金额就可以了。

1.2.2 到款结算的核销规则应收款与到款是否要求相等,如果不等如何处理可以不相等,如果不相等就会按照应收款与到款中最小的金额核销。

如果相等,你会发现你选择的单据核销后全部消失了,如果不相等,你会发现那些单据金额较大的单据留下来,不过未核销金额就减少了。

应收款与到款如果可以不相等是否出现提示不会出现提示是否生成单据不生成单据是否要求同一客户要求核销时应收单据如何处理单据余额减少本次核销金额核销时收款单据如何处理单据余额减少本次核销金额核销后是否生成单据不生成单据预收款冲应收款1.3.1预收款冲应收款定义中国最庞大的数据库下载到款结算就是应收款(发票+其他应收单)与预收款(预收单+退款单)的核销。

基本就是选择(预收单+退款单)与相应的应收款(发票+其他应收单),然后核销。

1.3.2预收款冲应收款规则应收款与预收款是否要求相等,如果不等如何处理可以不相等,如果不相等就会按照应收款与到款中最小的金额核销。

如果相等,你会发现你选择的单据核销后全部消失了,如果不相等,你会发现那些单据金额较大的单据留下来,不过未核销金额就减少了。

应收款与预收款如果可以不相等是否出现提示不会出现提示是否生成单据不生成单据是否要求同一客户要求核销时应收单据如何处理单据余额减少本次核销金额核销时预收单据如何处理单据余额减少本次核销金额核销后是否生成单据不生成单据应收冲应付1.4.1应收冲应付定义应收冲应付就是应收款(其他应收单和销售发票)和应付款(其他应付单和采购发票)之间的核销,解决同一客户或不同客户之间债务与债权往来处理。

有限公司财务制度之应收应付管理制度

有限公司财务制度之应收应付管理制度

有限公司财务制度之应收应付管理制度引言应收应付管理是企业财务管理中的重要环节之一,对于企业的经营和资金流动具有至关重要的作用。

有限公司应收应付管理制度旨在规范公司应收应付账款的处理和管理流程,确保公司资金安全,提高资金利用效率。

一、应收管理1.1 应收账款的确认•应收账款的确认应符合公司会计政策和相关财务规定。

•有限公司采用权责发生制度,应收账款确认时需满足以下条件:–订立了合同或交易协议;–具备了收款的权利;–预计能够收回相应的经济利益。

1.2 客户信用评估•在与新客户建立合作关系之前,有限公司应对其进行信用评估和风险控制。

评估客户的信用状况和还款能力,确保与其建立长期合作关系的可行性。

•按照公司制定的信用评估标准,对客户进行评级,根据评级结果确定信用额度,并及时更新评级信息。

1.3 应收账款管理流程•记录和跟踪应收账款信息:有限公司应建立健全的账务系统,准确记录客户应收账款的相关信息,包括发票号码、付款日期、款项金额等。

•定期核对应收账款余额:定期对应收账款余额进行核对,确保账面余额与实际情况相符,并及时纠正差异。

•跟进应收账款回款:对逾期未付款的客户,有限公司应及时与其进行沟通和催收,确保尽快收回款项。

二、应付管理2.1 应付账款的确认•应付账款的确认应符合公司会计政策和相关财务规定。

•根据实际购买商品或服务的相关凭证和合同,确认应付账款。

2.2 供应商评估与管理•与供应商建立合作关系前,有限公司应对其进行评估和筛选。

评估供应商的信用状况、产品质量和售后服务等,确保与其建立长期合作关系的可行性。

•定期对供应商进行评估和考核,根据评估结果确定合作条件,并及时更新评估信息。

2.3 应付账款管理流程•记录和跟踪应付账款信息:有限公司应建立健全的账务系统,及时准确记录与供应商之间的应付款项。

•确保按时支付应付账款:有限公司应按照合同约定的付款期限和相关规定,按时支付应付账款,并及时与供应商沟通,确保供应商满意度。

企业应收应付账款管理的对策

企业应收应付账款管理的对策

企业应收应付账款管理的对策摘要:企业要在激烈的市场竞争中立足并力争取得最大的经济效益,必须努力改善经济管理。

加强应收账款的核算和管理,关系到企业的资金周转,甚至影响到企业的生死存亡。

因此,企业应把应收账款作为一项长期的、制度化的工作来抓,使各项措施落到实处,力求将应收账款控制在合理水平上,把坏账降到最低。

关键词:管理;控制一、应收账款对企业的影响高额的应收账款直接影响企业的现金流入,直接引发财务危机。

企业通过赊销不断扩大销售,而赊销的背后就是不断上升的应收账款,很多企业在具有良好的盈利状况下,因应收账款管理不善而面临财务危机。

我国许多企业包括一些经营状况良好的上市公司经常出现有利润、无资金,账面状况不错却又资金匮乏的状况。

逾期应收账款对企业的危害直接体现在坏账风险上,我国企业尤其是国有企业,实际已成坏账但未作坏账处理的情况普遍存在。

二、应收应付账款管理中存在问题(1)企业产品竞争力不足,缺乏足够的周转资金在社会主义市场经济条件下,不论是高科技产品还是一般工业品,当前都是买方市场,一些企业由于在规模、技术、成本等方面不具备优势,失去了与其他企业抗衡的能力,导致其市场占有份额很小,而其生产能力却大于其生产份额,这样就产生了供大于求的局面,造成产品积压。

为了解决产品积压问题,企业在销售过程中又不得不作出相应的让步,如采取先发货后付款的方式,产品试用期久一些、贷款回款期长一些等,使产品的应收账款从数量和时间都增加了,造成企业始终受制于人,让别人牵着走。

随着企业应收账款的增多,流动资金周转不灵的问题便接踵而至。

(2)忽视对客户信用的调查和管理企业对往来客户的资信状况进行科学分析与评估,是从源头上扼制应收账款增加和形成坏账的重要途径。

但目前很多企业为了占领市场,往往缺少自我保护意识,缺乏防范应收账款风险的三道基本程序,即客户事前评估,事中监控,事后跟踪,对客户履行偿债义务的可能性有多大,客户的偿债能力如何,缺乏必要的科学分析和评估,对客户的财务实力和财务状况不予重视,更不能针对不同的往来客户制定不同的信用政策。

应收、应付款管理制度

应收、应付款管理制度

应收应付款管理制度一、应收款1、外部应收工程款:施工过程中由项目部负责,财务预控部和生产经营部全力协助、督办;完工后由财务预控部牵头负责,项目部和生产经营部全力协助。

2、内部应收借款:各项目部、各部门的员工因公务借款,单项事情办理后,一周内到财务预控部办理报账手续,否则从本人工资中扣除;周转性用款,年度内必须报账处理。

二、应付款遵循合同比例合理、过程支付平衡、以收定支、计划支付的原则。

●材料款1、入账:以审批手续齐全(材料采购计划,购销合同,验货、收货单,发票,工程使用部位等)的出入库单为入账依据。

2、施工过程中采取转账形式依据合同按计划支付。

3、公司应急支付:施工过程中,计划外事项需相关部门提供超计划付款的支持性文件,由总经理特批可临时应急支付。

应急支付款项要在下次项目回款扣除,并计算占用资金的成本。

4、年度支付:各供应商支付比例要平衡,如因比例不平衡产生纠纷,扣罚责任人200-2000元。

●人工费1、归集:设置计量程序,过程中完整部位或年度要有结算签认;合同外的计量必须手续齐全,按计量程序逐月办理;最终剩余量结算签认后,即为全部计量结算完成,除此以外另行上报和历史资料均不得归集入账。

2、需按制度劳务人员要有进场备案,工种市场标准备案,按合同比例提取劳务费并附分配方案,工资发放原则上打卡,不能打卡时需反馈工资发放明细表。

3、应急支付:施工过程中,因一时资金短缺不能按合同比例足额支付,有可能产生停工或上访事件时,由总经理特批可临时应急支付。

应急支付款项要在下次项目回款扣除,并计算占用资金的成本。

4、年度支付:各劳务班组支付比例要平衡,如因比例不平衡产生纠纷,扣罚责任人200-2000元。

管理费1、公司管理人员工资:月度全额编制工资表,原则上次月发放工资并次月扣除上月缺勤储备工资,年度“公平”反补,反补不足部分公司统筹;综合业绩工资季度发放;年度业绩工资年底评价发放;参与一线、服务一线的业绩报酬季度由项目部提取,年度公司统筹发放。

公司应收应付制度范本

公司应收应付制度范本

公司应收应付制度范本第一章总则第一条目的为了加强公司应收应付账款的管理,规范公司财务行为,防范财务风险,根据《中华人民共和国会计法》、《企业会计准则》等法律法规,结合公司实际情况,制定本制度。

第二条适用范围本制度适用于公司所有部门的应收应付账款的管理工作。

第三条原则(一)依法合规原则:严格按照国家法律法规和公司规章制度进行应收应付账款的管理。

(二)效益最大化原则:合理控制应收应付账款,确保公司资金的安全和流动性强,提高公司经济效益。

(三)及时准确原则:及时记录、核算应收应付账款,确保账务信息的准确性。

第二章应收账款管理第四条应收账款的确认(一)销售商品或提供劳务产生的应收账款,应当在下列条件同时满足时确认:1. 商品或劳务已经交付或完成,收入已经实现;2. 收取款项的可能性大于不确定性;3. 金额能够可靠计量。

(二)应收账款的计量应收账款的计量金额应当等于销售商品或提供劳务的价款、增值税及代垫的运杂费等。

第五条应收账款的管理(一)销售部门应当根据客户信用状况和销售合同,合理确定信用期限和付款方式。

(二)财务部门应当对销售部门提交的应收账款进行审核,确保应收账款的真实性和合理性。

(三)财务部门应当建立应收账款台账,定期对账,确保应收账款账务的准确性。

(四)对于逾期应收账款,财务部门应当及时通知销售部门采取措施,确保应收账款的安全。

第六条应收账款的坏账处理(一)财务部门应当定期评估应收账款的坏账风险,对可能发生坏账的应收账款计提坏账准备。

(二)对于确认为坏账的应收账款,财务部门应当及时核销,并报公司领导批准。

第三章应付账款管理第七条应付账款的确认(一)购买商品或接受劳务产生的应付账款,应当在下列条件同时满足时确认:1. 商品或劳务已经收到或使用,收入已经实现;2. 支付款项的可能性大于不确定性;3. 金额能够可靠计量。

(二)应付账款的计量应付账款的计量金额应当等于购买商品或接受劳务的价款、增值税及代垫的运杂费等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

应收应付核销规则及常见问题(续).7 预收款冲预付款1.7.1 预收款冲预付款定义就是应收系统的预收款与应付系统的预付款进行核销,可以是不同的客户与供应商之间进行。

1.8 收款冲付款1.8.1收款冲付款定义这个与预收款冲预付款的意思差不多,只是把预收单改为收款单,只是把预付单改为付款单而已。

1.9红蓝字的核销蓝字单据的核销按照以上规则核销完全正确,确定核销金额如果要求核销金额相等,核销直接取本次核销金额,如果不等,就会先把本次核销金额小的单据先核销掉。

对于有红字的单据参与核销,就需要附加一些特殊处理。

(以下部分来源湛剑的整理)1.9.1 全部是蓝字单据核销选中单据均是蓝字单据,核销时按金额小的一方核销,同时对金额大的一方的单据进行扣减处理;例如:核销界面同时选中以下单据应收款发票001 2004-04-15 2000发票002 2004-05-10 3000到款收款单 2004-05-15 4500系统处理:按核销金额4500核销,对发票002的本次核销金额自动改为2500,然后进行核销处理;1.9.2. 全部红字单据参与核销选中单据均是红字单据,核销时按金额绝对值小的一方核销,同时对金额绝对值大的一方的单据进行扣减处理;例如:核销界面同时选中以下单据应收款发票001 2004-04-15 -2000发票002 2004-05-10 -3000到款收款单 2004-05-15 -4500系统处理:按核销金额-4500核销,对发票002的本次核销金额自动改为-2500,然后进行核销处理;1.9.3 选中单据同时存在红蓝字单据,如果核销金额大于0选中单据同时存在红蓝字单据,如果核销金额大于0,核销时按金额小的一方核销,同时对金额大的一方的单据进行扣减处理;1.9.4 选中单据同时存在红蓝字单据,如果核销金额小于0选中单据同时存在红蓝字单据,如果核销金额小于0,则要求核销金额必须相等,同时按每张单据的本次核销金额进行核销处理例如:核销界面同时选中以下单据应收款发票001 2004-04-15 2000发票002 2004-05-10 -3000到款收款单 2004-05-15 4500退款单 2004-05-16 -5500系统处理:按核销金额-1000核销,然后对每张单据按其对应的本次核销金1.9.5 单边核销所谓单边核销就是在到款结算中,红字的发票和应收单可以与蓝字的发票和应收单核销,退款单也可以与收款单进行核销,但要求他们的绝对值相等。

1.10 核销中汇率的处理规则外币单据核销时,需要考虑汇率问题,直接影响期末调汇。

1.10.1 应收冲应付时汇率的处理规则应收冲应付时生成单据的汇率取得是过滤界面上币别的汇率,就是在币别设置中的汇率,与单据上的汇率是无关的。

例如:应收款单据原币为USD1000,单据汇率8.0,折本位币为8000,应付款单原币为USD1000,单据汇率8.1,折本位币为8100,核销处理时,假定核销的原币金额为USD1000,核销汇率参考当天外汇牌价为8.2,则核销本位币金额为USD1000*8.2=8200,输出各种账表(如应收款明细表)时,本位币金额按8200计算。

当天外汇牌价可以在核销界面中输入。

1.10.2 其他核销情况下汇率的处理规则由于全部取的是收款单的汇率,因此会造成应收单和发票的本位币差额,尤其会造成原币已经核销完,但本位币没有核销完,需要调汇来解决这个问题。

以到款结算为例来说明:如应收USD1000*8=8000,收款USD1000*8.1=8100,则核销的原币金额为USD1000,核销本位币金额为USD1000*8.1=8100,则核销完毕,应收单据的余额为原币为0,本位币为-100,收款单余额原币、本位币都为0。

由于汇率的差异导致的原币为0,本位币不为0的情况可以通过调汇进行处理。

如果多张外币应收款与多张外币收款单核销时,为保证核销汇率的一致,要求所有参与本次核销的收款单的汇率必须一样。

1.11 按存货数量的核销规则基本规律:按存货数量核销只对有发票单据的核销类型才有效。

由于其它应收单没有存货的信息资料,故只有销售发票可以参与按存货数量进行核销。

区别于选择按存货数量核销时,应收款列表框单据右边有一【详细】按钮。

单击【详细】,进入按货物核销界面,界面中显示了存货的品名、规格、数量、单价、未核销数量、未核销金额等信息。

录入本次核销数量及本次核销金额,单击【确定】,退回到“单据核销”界面,对刚才处理的销售发票及相应要核销的收款单打上选择标记,单击【核销】,即可按存货数量进行核销。

如果选择了按存货数量进行核销,会影响往来对账单和合同执行情况表的结果。

查询往来对账单时您可以选择按存货进行输出,随时了解未核销(即未收款)的存货品名、数量、金额等,同时还可查询合同的数量完成情况。

需要注意的是:如果某一发票体的本次核销的数量与剩余数量相同,那么本次核销金额会等于剩余金额,相反当本次核销金额等于为核销金额时,那么本次核销数量也自动设置为未核销数量。

这样保证了数量和金额的一致性。

1.12 按应收单号核销规则基本规则:按应收单号核销时,应收款列表框只显示与收款单关联的应收单据记录,选择待核销的收款单,则相关的其他应收单也自动打上选择标记,其他应收单不能手工选择。

单击【核销】,系统自动核销收款单及其对应的销售发票、其它应收单。

如果收款单金额大于销售发票、其它应收单的结算金额(即要核销的金额),则核销处理后,没核销完毕的收款单只能采用按金额或按存货数量方式进行核销,无法再按应收单号进行核销。

外币的处理:如果币别为非本位币币别,则核销金额的原币折本位币金额应为:核销原币金额 * 收款单的汇率。

1.13 自动核销基本规则:自动核销时,根据先进先出的方法按单据余额进行自动勾对。

即该往来单位所有未核销的发票、其它应收单与所有未核销的收款单、退款单(不包括预收单)核销。

此时参与核销的收款单不仅包括到款结算中显示的收款单据,还包括过滤框中未列示的未核销收款单,参与自动核销的其他应收单则包括您录入的所有该往来单位未核销的其他应收单,不只是过滤框中列示的其他应收单。

注意事项:由于汇率差异的影响,系统只对本位币提供自动核销功能,如果为非本位币单据,则必须通过手工核销进行处理。

◎但已按存货数量、应收单号进行部分核销的往来单位不能再参与自动核销。

◎除按金额方式进行到款结算核销外,对于其它核销类型与核销方式的组合,系统不提供自动核销的功能。

◎参与自动核销的其他应收单则包括您录入的所有该往来单位未核销的其他应收单,不只是过滤框中列示的其他应收单.二核销主要问题汇总2.1 性能问题2.1.1 性能问题主要表现◎如果数据量较大时,取数到填充表格的速度较慢,特别是到达10000条以上很慢。

◎核销时如果数据量较大核销的很慢,尤其是并发时数据更慢◎自动核销如果很多客户参与核销,而且单据较多时会很慢。

◎参与反核销的核销记录如果很多也会很慢。

◎以上如果多个用户并发操作时很慢。

2.1.1 性能问题主要对策客观上说,核销动作是个比较复杂的过程,需要很多数据的有效性检查,还需要更改每条单据的剩余金额,还需要生成单据,比一般的单据录入和报表取数的性能要差。

下面针对以上5点从设计的角度分析原因和需要改进的地方。

取数到填充的速度较漫:主要是我们使用的控件VaSpread采用实模式的数据填充方式造成填数很慢,以后使用kdGrid2000就不会存在这个问题。

核销时如果数据量较大核销的很慢:核销时我们要经过以下几个循环:A求出所有参与核销的应收单据本次核销金额和 B求出所有参与核销的收款单据本次核销金额和 C 对A,B的结果比较 D 打包所有参与核销的应收单据单据 E 打包所有参与核销的收款单据 F 到达中间层后解包,对每条数据又要进行合法性检查,然后减少单据余额,更新收付款计划。

,需要生成其他单据继续处理。

初步想法是合并A,B循环。

去掉中间层一般合法性检查,只保留对单据余额的合法性检查。

自动核销如果很多客户参与核销,而且单据较多时会很慢。

自动核销首先从应收款和到款中找到参与自动核销的客户。

但把所有返回的应收款和单据的单据都循环一边,感觉没有这个必要。

现在怎么从g_rsS和g_rsR中找到客户,而且找出来的客户不能相同?中间层也要两次循环,首先计算应收款和到款中的总额,然后扣减每条单据。

这两个循环是不是可以合并为一个循环。

参与反核销的核销记录如果很多也会很慢:以前是把所有参与的核销序号打包,送到中间层解包,并相应处理。

现在修改对每个核销序号分别发核销,大大减少了中间层事物的大小,从理论上可以提高性能,但没有得到实际的验证。

多个用户并发操作需要进一步的研究。

2.2 数据翻倍问题在自动核销时出现过数据翻倍问题,由于该问题一直不能在研发中心重现,我们初步认为由于K3V10.0以前版本没有网络控制,用户并发时可能造成多次扣减单据余额。

我们建议用户使用V9.4.1以前版本时使用自动核销时最好有一个用户操作,或者升级到K3V10.0,还要打上我们的SP补丁包。

我们还建议实施人员如果通过SQL更改我们数据库中表里的数据时,最好与研发中心联系,由我们分析SQl后再执行Update,delete或insert into操作。

2.4 核销常用SQl汇总(请注意红字部分)2.4.1 如果出现数据翻倍的问题第一步:先检查期初数据是否存在数据翻倍的情况。

--请执行如下SQL:select a.FID,a.Fnumber,a.Famount,a.FAmountFor,a.FRemainAmount,a.Frem ainAmountFor,c .Fnumber 客户代码from t_rp_contact aleft join(select FcontactID,sum(isnull(FcheckAmountFor,0)) FcheckAmou ntFor fromt_rp_newcheckinfo group by FContactID) b on a.FID=b.FcontactIDleft join t_item c on a.FCustomer=c.FitemIDleft join t_rpbegData d on a.FbegID=d.FIDwhere abs(a.FRemainAmountFor+isnull(b.FcheckAmountFor,0))>abs(d.FRemainAmountFor)and a.Fisinit=1 and a.FremainAmountFor<>0请把以上客户代码,单据代码为Fnumber的数据反核销第二步:再执行如下SQl修正数据翻倍--更新t_rp_rpdetail表中的期初数据update c set c.FRemainAmount=c.FAmount,c.FRemainAmountFor=c.FAMountFo rfrom t_rp_rpdetail cjoin t_rp_contact a on c.FOrgID=a.FIDjoin t_rpbegData d on a.FbegID=d.FIDwhere a.FID not in(Select FcontactID from t_rp_newcheckinfo)and a.Fisinit=1 and a.FremainAmountFor<>0--删除t_rp_checkdetail中翻倍的期初数据delete c from t_rp_checkdetail cjoin t_rp_contact a on c.FContactID=a.FIDjoin t_rpbegData d on a.FbegID=d.FIDwhere a.FID not in(Select FcontactID from t_rp_newcheckinfo)and a.Fisinit=1 and a.FremainAmountFor<>0--删除t_rp_checkentry 中翻倍的期初数据(应收系统)delete c from t_rp_checkentry cjoin t_rp_contact a on c.FInvoiceID=a.FbegIDjoin t_rpbegData d on a.FbegID=d.FIDwhere a.FID not in(Select FcontactID from t_rp_newcheckinfo)and a.Fisinit=1 and a.FremainAmountFor<>0 and c.FRP=1--删除t_rp_checkentry 中翻倍的期初数据(应付系统)delete c from t_rp_checkentry cjoin t_rp_contact a on c.FInvoiceID=a.FbegIDjoin t_rpbegData d on a.FbegID=d.FIDwhere a.FID not in(Select FcontactID from t_rp_newcheckinfo)and a.Fisinit=1 and a.FremainAmountFor<>0 and c.FRP=0--更新t_rp_contact表中的期初数据的单据余额Update a Set a.FRemainamount=d.FRemainAmount,a.FremainamountFor=d.FRemainAmountForfrom t_rp_contact a join t_rpbegData d on a.FbegID=d.FIDwhere a.FID not in(Select FcontactID from t_rp_newcheckinfo)and a.Fisinit=1 and a.FremainAmountFor<>0第三步再检查本期录入数据数据是否存在数据翻倍的情况--请执行如下SQL:select a.FID,a.Fnumber,a.Famount,a.FAmountFor,a.FRemainAmount,a.Frem ainAmountFor,c .Fnumber 客户代码from t_rp_contact aleft join(select FcontactID,sum(isnull(FcheckAmountFor,0)) FcheckAmou ntFor fromt_rp_newcheckinfo group by FContactID) b on a.FID=b.FcontactIDleft join t_item c on a.FCustomer=c.FitemIDwhere abs(a.FRemainAmountFor+isnull(b.FcheckAmountFor,0))>abs(a.FAmou ntFor)and a.Fisinit=0请把以上客户代码,单据代码为Fnumber的数据反核销第四步再执行如下SQl修正数据翻倍--更新t_rp_rpdetail表中的正常数据update c set c.FRemainAmount=c.FAmount,c.FRemainAmountFor=c.FAMountFo rfrom t_rp_rpdetail cjoin t_rp_contact a on c.FOrgID=a.FIDwhere a.FID not in(Select FcontactID from t_rp_newcheckinfo)and a.Fisinit=0 and abs(a.FremainAmountFor)>abs(a.FAmountFor)--删除t_rp_checkdetail中翻倍的正常数据delete c from t_rp_checkdetail cjoin t_rp_contact a on c.FContactID=a.FIDwhere a.FID not in(Select FcontactID from t_rp_newcheckinfo)and a.Fisinit=0 and abs(a.FremainAmountFor)>abs(a.FAmountFor)--删除t_rp_checkentry 中翻倍的正常数据(应收系统)delete c from t_rp_checkentry cjoin t_rp_contact a on c.FInvoiceID=a.FInvoiceIDwhere a.FID not in(Select FcontactID from t_rp_newcheckinfo)and a.Fisinit=0 and abs(a.FremainAmountFor)>abs(a.FAmountFor)and FRP=1--删除t_rp_checkentry 中翻倍的正常数据(应付系统)delete c from t_rp_checkentry cjoin t_rp_contact a on c.FInvoiceID=a.FInvoiceIDwhere a.FID not in(Select FcontactID from t_rp_newcheckinfo)and a.Fisinit=0 and abs(a.FremainAmountFor)>abs(a.FAmountFor) and FRp =0--删除t_rp_contact 中翻倍的正常数据Update a Set a.FRemainamount=a.FAmount,a.FremainamountFor=a.FAmountForfrom t_rp_contact awhere a.FID not in(Select FcontactID from t_rp_newcheckinfo)and a.Fisinit=0 and abs(a.FremainAmountFor)>abs(a.FAmountFor)/blog/more.asp?name=dml&id=28521。

相关文档
最新文档