文本介绍了在系统中处理批号属性为日期类型时,如何调整批号编码规则以提取日期部分的方法。通过修改BOSIDE中的基础资料规则,解锁“长度”和“右侧截断”的可维护性,并添加条件以处理日期类型批号属性。最后展示了如何应用新规则来生成包含日期部分的批号。
如图所示,当批号属性为日期类型时,格式中没有单独的日期格式:
如果批号编码规则需要取日期部分,要如何处理呢?
先分析一下批号编码规则,日期类型的批号属性,如果选择带日期的格式,例如:yyMMdd,要实现取日期部分,则右截断取2位即可:
按照这个思路,将批号编码规则中属性类型等于日期时,放开“长度”、“右侧截断”可维护即可。
那么现在就开工吧,在BOSIDE中扩展基础资料“批号/序列号编码规则”,修改单据体“编码设置”的实体服务规则:
修改实体服务规则“批号属性!=null And 类型等于’流水号‘ 、辅助资料、基础资料、编码、序号时解锁长度”的规则条件,添加“或者批号属性类型不等于日期”的条件:OR FLotPropertyId.FType = 'DateTime',如图所示:
修改实体服务规则“不为基础资料、辅助资料、编码、序号时锁定填充和截断”的规则条件,添加“并且批号属性类型不等于日期”的条件:AND FLotPropertyId.FType != 'DateTime',如图所示:
依次点击“确定”、“保存”按钮。
现在看一下扩展后的效果:
新建批号拣货规则,“属性”选择“业务日期”,“长度”设为2,“格式”选择“yyMMdd”,“右侧截断”不勾选:
(如果“长度”和“右侧截断”不可维护,则清除一下缓存)
物料选择批号编码规则:
单据上获取批号后的效果如图所示,批号等于业务日期字段的日期部分:
推荐阅读