#创作挑战赛#
基于前段时间对采购订单收货场景价值评估(自动记账的价值计算)的研究,后续执行MIRO的时候,SAP系统是允许修改校验数量和校验金额的,非常好奇,如果将数量和金额人为的变大或者变小,会产生怎样的会计分录呢,SAP的内部逻辑是如何设计的? 作为一名ABAPer,咱们有一把利器--debug!一顿操作下来,基本得出了如下结论,供参考,SAP设计非常巧妙且复杂,不敢保证百分百准确,欢迎批评指正!
采购发票校验会计凭证分录生成情况总结:
情况一:正常发票校验,数量和金额都不变情况下,此时无差异产生,生成会计凭证分录如下:
H---KBS 应付账款
S--- WRX (GR/IR)
S--- FR1(可能多行运费、杂费等,可能账码不同)
S--- VST(应交税费)
截图如下:
情况二:数量不变,即有足够的库存数量分担差异,不会记账到差异科目PRD,发票校验金额变大的情况,生成的会计分录如下:
H---KBS----应付账款
S---WRX----GR/IR
S---BSX-----原材料(材料金额变大,产生的差异计入库存原材料)
S---FR1-----运费
S---BSX-----运费(运费金额变大,产生的差异计入库存原材料)
S---VST-----应交税费
情况三:数量不变,发票校验金额变小的情况,即有足够的库存数量分担差异,不会记账到差异科目PRD,,生成的会计分录如下:
H---KBS----应付账款
S---WRX----GR/IR
H---BSX-----原材料---反记账(材料金额变小,产生的差异计入库存原材料),
S---FR1-----运费
H---BSX-----运费-----反记账(运费金额变小,产生的差异计入库存原材料)
S---VST-----应交税费
情况四:数量变小,如果数量和金额按照当前比例同步变化,不影响物料移动平均价的情况下,将本次校验数量和收货数量的差值的价值金额记录到差异科目PRD;如果数量和金额变化不同步,则将根据本次发票校验的实际情况进行库存原材料差异分摊,不能分摊部分进入差异科目;
数量变小,库存数量可分摊所有差异的情况,无论是本次校验影响库存价值变大还是变小,都不会出现差异科目PRD,如果导致库存价值变大,即S---BSX----本次校验数量与相应数量在库存的价值之差;反之如果导致库存价值变小,即H---BSX—反记账--本次校验数量与相应数量在库存的价值之差;
数量变大,库存数量无法完全分担的情况,此时会出现差异科目PRD,差异科目PRD记账为:【本次校验金额 -(本次校验金额/本次校验数量)* 库存数量】的绝对值,如果为正则S,如果为负,则为H且反记账;现有库存价值也会发生变化,即产生一个BSX的分录,如果现有库存价值变大则 S---BSX---库存变化值(本次校验金额/本次校验数量 * 库存数量-原库存价值),如果库存价值变小则H---BSX—反记账--库存变化值(原库存价值-本次校验金额/本次校验数量 * 库存数量);
SAP计算方式是根据价值串方式,计算原材料行项目为RE01,计算运费为RE09;
当数量变大时,
GRIR计算为:
VWERE = 收货价值 校验金额 * ( 校验数量 – 收货数量 )/ 校验数量。
BSX计算为:
BESTD = (校验金额 – VWERE)* 库存数量 / 校验数量。
PRD差异计算为:
PRDIF = 校验金额 – VWERE – BESTD;
RE09同理走FORM RE01的逻辑,只是价值串RE01对应的字段及事务有所不同;
,