本文将对销售管理信用额度公式中【应收退款单/收款单/预收单】选项的具体取数逻辑展开描述。
1、公式勾选
包括:
+已审核未核销的应收退款单金额
+未审核未核销的应收退款单金额
-已审核未核销的收款单金额
-未审核未核销的收款单金额
-已审核未核销的预收单金额
-未审核未核销的预收单金额
图1
2、销售管理单据信用查询
在启用信用额度管理的各种单据中,以销售订单为例。在单据界面,查看-信用查询,弹出的界面中,【信用额度】为信用额度管理中设置的信用额度;【已用额度】为信用公式勾选的金额;【超支额度】为【已用额度】-【信用额度】,如图2,后续将介绍已用额度-7100是如何计算出的。
图2
进行信用查询时,后台从表ICCreditInstant 中取数,其中应收退款单对应FGroupID=6,收款单对应FGroupID=4,预收单对应FGroupID=5,具体见图3.
图3
3、后台取数
表ICCreditInstant 中数据最初由启用信用额度时写入,后续由保存、审核勾选的对应的单据时写入。启用信用额度对应后台为执行存储过程 p_IC_InitCreditInstantData 。注:故若已用额度不对,可尝试禁用重新启用信用额度。
查看存储过程 p_IC_InitCreditInstantData代码,可看到具体取数如图4:
图4
4、应收退款单金额
4.1未审核未核销的应收退款单金额
从后台取数中可以看到,未审核未核销的应收退款单金额,取数为-a.FAmount(t_RP_NewReceiveBill as a),即:
减去应收退款单单据头 单据金额(本位币)
如图5,为-(-100)=100
图5
4.2已审核未核销的应收退款单金额
从后台取数中可以看到,已审核未核销的应收退款单金额,取数为c.FSettleAmount+c.FDiscount-(-c.FCheckAmount)(t_rp_ARBillOfSH as c),即:
应收退款单单据体,结算实退金额(本位币)+结算折扣(本位币)-(-累计核销金额(本位币))
若有调汇,则增加 -a.FAdjustAmount(t_RP_NewReceiveBill as a),即减去应收退款单单据头上,累计调汇金额。
如图6,为300+0-(-0)+(-0)=300
图6
5、收款单金额
5.1未审核未核销的收款单金额
从后台取数中可以看到,未审核未核销的收款单金额,取数为 a.FAmount(t_RP_NewReceiveBill as a),即:
收款单单据头,单据金额(本位币)
如图7,为1000
图7
5.2已审核未核销的收款单金额
从后台取数中可以看到,已审核未核销的收款单金额,取数为c.FSettleAmount+c.FDiscount-c.FCheckAmount(t_rp_ARBillOfSH as c),即:
收款单单据体,结算实收金额(本位币)+结算折扣(本位币)-累计核销金额(本位币)。
若有调汇,则增加 a.FAdjustAmount(t_RP_NewReceiveBill as a),即:收款单单据头上,累计调汇金额。
如图8,为2000+0-0+0=2000
图8
6、预收单金额
6.1未审核未核销的预收单金额
未审核未核销的预收单金额,取数为 a.FAmount(t_RP_NewReceiveBill as a),即:
预收单单据头,单据金额(本位币)
如图9,为1000
图9
6.2已审核未核销的预收单金额
已审核未核销的预收单金额,取数包含三部分,
其一为c.FSettleAmount+c.FDiscount-c.FCheckAmount(t_rp_ARBillOfSH as c),即预收单单据体,结算实收金额(本位币)+结算折扣(本位币)-累计核销金额(本位币);
其二若有调汇,则增加 a.FAdjustAmount(t_RP_NewReceiveBill as a),即预收单单据头上,累计调汇金额;
其三若有初始化预收单,则增加a.FRemainAmount(t_Rp_BegDataEntry as a),即初始化预收单单据头上,未核销金额(本位币)。
如图10,为2000+0-0+0+1500=3500
图10
7、总结
通过以上勾选个选项的取数,可以计算出图2中已用额度(人民币)=100+300-1000-2000-1000-3500=-7100.
从以上取数中可以发现,未审核未核销的应收退款单/收款单/预收单,都是取【单据金额(本位币)】;已审核未核销的应收退款单/收款单/预收单,当有调汇时都有考虑【累计调汇金额】;已审核未核销的预收单,还需要考虑初始化预收单的【未核销金额(本位币)】。另:本文中所有字段若在序时簿未显示,可在BOS中字段属性设置可见性。
推荐阅读