编码规则常见问题及处理总结

1、 我想在单据中应用编码规则怎么处理?
答: 让单据应用编码规则,可以在单据对应的实体中加扩展属性codingruleenable,并将该值设置为true。
2、 我想让实体的属性参与编码该怎么处理?
答:让实体的属性参与编码可以在实体属性的扩展属性中加入isincode,并加该属性的值设置为true。
3、 我想让为定义的编码规则设置应用条件该做哪些设置?
答: 让实体的扩展属性参与到适用条件可以在该属性的扩展属性中加入isBindingProperty,并将这个属性的值设置为true。
4、 规则定义的时候勾选了不允许断号,新增单据的时候不能出现编码?
答: 这个问题首先要区分新增显示和不允许断号,新增显示且不允许断号的区别 新增显示的时候调用的是getnumber方法,这样在单据新增的时候就去抢号了。 不允许断号是不能在单据新增的调用getnumber的,因为会出现这样一个场景,但用户新增一个单据时,调用了getnumber方法,抢号动作发生了,但是这时用户不保存这条单据,那么就造成断号了。如果要在不允许断号的时候能够显示出编码可以调用编码规则的readnumber方法生成一个临时的编码,真正保存的时候(在bean方法里)调用的是getnumber。 新增显示且不允许断号的实现就是要在单据新增的时候调用readnumber生成一个临时的编码,然后在单据保存的时候再调用getnumber方法。
5、 勾选了不允许断号的时候出现了断号现象?
答: 这个要先确认在单据删除的时候是不是调用了编码规则的recyclenumber方法,如果没有调用这个方法是肯定 会出现断号的,因为如果调用了recyclenumber方法,我们就会把回收到的断号放到一个断号表里,这样下次再新增一个单据的时候我们会从断号表中去取断号,这样就避免了出现断号。
6、 编码规则怎样才能支持修改?支持修改的时候要注意哪些问题?
答: 要让生成的编码支持修改必须在单据的实体的扩展属性中加入CRNumberEdit,并加该属性设置为true。这样在规则定义的时候再去勾选支持修改,这样在新增单据的时候就会让用户可以修改了。 在单据支持修改的时候要注意: 保存时候会调用编码规则的checkModifiedNumber方法,调用这个方法时把修改后的编码传进来,如果修改后的编码的顺序号超过了当前的编码规则生成的最大号,这个时候就会抛出最大值超过范围的提示。
7、 我想让设置的编码规则应用到除编码外的其他字段该怎么处理?
答:如果想让设置的编码规则应用到除编码外的其他字段,可以继承我们提供的接口ICodingRuleAdapt,并且实现ICodingRuleAdapt类的getAdaptItemList方法,将要参与编码的其他属性以AdaptItem的方式放到list中。并且将要改单据的bostype和实现类放到CodingR
编码规则常见问题及处理总结
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



