工序转移单从开发角度看,编辑界面通过视图切换以适应不同转移类型,但切换会清除未保存数据。系统通过字段映射解决数据重新录入问题。涉及单位换算在表单插件处理,而非实体服务规则。保存有校验规则,单据转换和自动转移需按标准处理。新增字段需配置映射关系,避免数据丢失。解决常见问题包括字段显示、性能问题和界面布局设置。
从开发的角度来看,工序转移单的特殊之处在于编辑界面使用了界面视图,用来针对不同的转移类型进行不同的字段显示、锁定配置。但是在进行视图切换时,会清除当前界面尚未保存下来的数据,这就导致一旦直接或间接(通过转出工序和转入工序来自动确定)更改了转移类型,界面数据就需要重新录入。为此,每次从一个视图切换到另一个视图时,标准产品会在内部进行一次字段的映射,实质上是从自己到自己的映射,通过制造字段映射进行配置。一旦在工序转移单上新增字段,需要格外注意这些字段的视图处理。
1、实体服务规则
转移单的工序单位数量、生产单位数量、基本单位数量的计算,并不是在实体服务规则中配置的,这是因为实体服务规则中只能配置生产单位和基本单位换算时的精度和舍入,但无法配置工序单位和生产单位换算时的精度和舍入(这是由单位转换表头数量和单位转换工序数量决定的),因此数量的换算统一放到表单插件中处理。
2、表单插件
OperationTransferEdit是主要的界面逻辑,OperationTransfer4UnitChangeBillEdit则是对工序单位数量、生产单位数量、基本单位数量的计算逻辑。
3、保存操作校验规则
转移单的保存操作中配置了一些校验规则,其中包含对计价数量和计价结算选单数量的限制,如果实际使用中不需要严格控制,可以禁用这些实体服务规则。
4、单据转换和反写
由于转移单需要由当前工序查找下一道工序,以确定转出序和转入序,标准产品在单据转换插件中做了处理,因此不建议自行二开,如果确实有需求,请扩展标准产品的插件,谨慎处理。
转移单中配置的“自动转移”这一转换规则,是用来自动生成转移单的,如果工序计划单据类型中的转移单生成方式配置的是自动生成,则不可禁用。
常见问题解决方式
1、新增的字段值无法显示
如上所述,如果通过单据转换规则将工序计划中的字段携带到工序转移单上,或者是在转移单中新增了字段需要录入值,都需要在制造字段映射中配置工序转移单到工序转移单自身字段的映射关系,否则字段值就会丢失,详见:https://vip.kingdee.com/article/10166
2、工序汇报单大量审核/反审核存在性能问题
工序汇报单审核/反审核时,若工序计划单据类型中配置的“转移单生成方式”是自动生成转移单,则会在其审核/反审核过程中自动下推/删除转移单,势必会对性能产生影响。因此,可以根据需要配置成手工生成转移单、或不生成转移单,会有效地提高性能。
3、工序转移单单据类型中设置默认的单据布局方案后,转移单界面无法进入
由于前面说到标准产品对界面视图有特殊处理,以保证每次的视图切换不会丢失数据,因此不支持单据类型的布局设置中设置默认的单据布局方案,以免与标准产品默认的视图产生冲突。
推荐阅读