物料单位精度为0,但是开票需要分次按比例开票,开票数量需要录入小数位时,如何处理?

【场景介绍】
业务场景:物料的计量单位精度设置0,但在后续实际开票或者收票的时候,按合同约定,往往需要分次按比例开票,就会存在开票的数量需要录入小数位,如:某商品销售数量为1,单品价值10000,第一次按50%开票,后续达到条件后再按50%开票。
现状:目前,数量的精度根据关联计量单位控制,当计量单位设置精度为0时,数量字段无法输入小数位。
上述业务场景需要满足,需要支持实现以下:
开票录入计价数量,不受物料计价单位精度控制
分次下推过程中,计价数量的换算,不受物料基本单位精度控制
下推后反写上游字段的数量,以下游单据实际值为准,不受对应单位精度控制反算
【解决方案】
上述业务需求,可通过下述变通方案实现:
一. 主要步骤
取消销售发票单据及上游单据相关反写字段的精度控制
注册绕开单位精度控制的反写插件
增加自定义字段处理分次下推时销售发票单据的计价数量换算
二. 详细操作
第一步:取消销售发票单据及上游单据相关反写字段的精度控制,登陆BOS平台,打开对应单据,进入批量编辑字段属性界面:
(1)销售发票单取消勾选【计价数量】【基本单位数量】【明细.已开票核销数量】【已下推发票数量】五个字段的【控制精度】;
备注:如果历史发票数据数量字段小数位没有2位以上的,建议放开控制精度后,将【计价数量】的【小数精度】属性调整为2,避免录入太多小数位后出现尾差。
(2)应收单取消勾选【销售发票数量】【销售发票数量基本单位】【已开票核销数量】【未开票核销数量】四个字段的【控制精度】;
(3)业务模式下先开票业务,取消勾选销售订单【先开票数量(计价基本)】字段的【控制精度】
备注:202306版本之前,字段【控制精度】属性仅针对客户端适用,网页端不适用。

第二步:注册绕开单位精度控制的反写插件,登陆BOS平台,打开销售发票单据,进入批量编辑字段属性 》单据关联配置 》反写插件 》注册phthon脚本,如下:

上述脚本中,反写规则内码可去反写规则列表查看

销售普通发票脚本:
def CancelWriteBackValuePrecision(e): if e.RuleId == "IV_BlueToRedSalesOCWB(Qty)"or e.RuleId == "IV_ReceivableToRedSalesOCWB(Qty)" or e.RuleId == "IV_ReceivableToBlueSalesOCWB(Qty)" or e.RuleId == "94a50e82-e12a-4507-9b32-22419940f2aa": e.Can
物料单位精度为0,但是开票需要分次按比例开票,开票数量需要录入小数位时,如何处理?
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



