配置批号主档字段携带至即时库存,需每次清除缓存后即时库存才能正常显示原创
金蝶云社区-邱育华
邱育华
54人赞赏了该文章 2,497次浏览 未经作者许可,禁止转载编辑于2022年01月19日 15:12:24

一、【业务背景】:客户在批号主档上加了字段 这个字段取值是通过生产入库单的字段更新的;客户自行做了触发器,批号主档已经能写入值,但是这个值客户需要携带到即时库存里面;在即时库存里面批号是基础资料字段 所以可以通过引入属性去携带;但是每次需要清除缓存才可以显示出来;自定义的字段不支持携带到即时库存吗?


二、【场景分析】:客户二开触发器做数据更新(不建议),库中的批号主档数据已更新,但是即时库存引用批号主档的该字段值还是旧值,原因是即时库存查询中,批号主档做为基础资料已被应用层做了数据缓存,需要通过插件针对对应的批号主档数据清除缓存。


问题还原:

1、扩展“批号主档”基本信息,添加“备注”字段

2、扩展“即时库存汇总查询明细”,添加“基础资料属性”字段“FLotText”,关联批号备注字段

3.jpg

3、直接语句更新批号主档字段: Update T_BD_LOTMASTER set FTEXT  ='Test222' where FLOTID = '544154'

4、刷新“即时库存”,FLotText字段显示未更新

        

三、【代码示例】

  插件继承AbstractOperationServicePlugIn类,重写EndOperationTransaction(EndOperationTransaction e),附加在“保存”或者“审核”操作按钮点击事件下(示例中硬编码了批号主档内码544154,具体情况根据业务需求修改)

4.jpg


四、【实现效果】

验证效果:

1、直接语句更新批号主档字段: Update T_BD_LOTMASTER set FTEXT  ='Test222' where FLOTID = '544154'

2、触发单据中插件操作

3、刷新“即时库存”


1.jpg


2.jpg



以上分析及处理方案是一些个人的理解,如有不对之处,还请指正。

赞 54