近期遇到一个移动原因配置问题分享一下处理过程:
应用户需求需要配置新移动原因,为了方便读者快速的代入,下面MB1B事务的截图中的就是移动原因;
从应用上来说,这个移动原因很明显具有业务标识的作用。比如做报废的移动类型551,如果在此基础上进行细分,具体是哪些原因导致的报废?把这些原因提前配置到系统中,在执行报废业务时进行选择;从而就实现了后期按不同报废原因进行统计的基础。
另一方面,衍生到后台配置中,发现这个移动原因也不涉及到任何控制,仅仅是个标识而己;但有一点需要注意,这个移动原因是配置在移动类型下的,它们是一种层次关系;所以,从逻辑上说,哪些原因(移动原因)做报废(移动类型)?哪些原因(移动原因)做冻结(344)?
那么按照用户的需求,原来系统中配置有551的移动原因,本次需要新增加移动类型344的移动原因;上图中己经用条目复制的方式添加配置完成;
回到前台业务中,用MB1B生成新的344物料移动凭证,选择上是完全没有问题,每一个截图中大家可以看到344定义好的移动类型在MB1B中可以进行选择;
但结果却有点出人意料,在用MB51输出的物料凭证中,看不到新配置并选择的移动原因???而原来配置的移动原因是可以显示的;
经过分析,在移动原因的配置OMBS中找到了答案,进去看一下控制原因;
原来这个地方就是控制每个移动类型的移动原因显示与否和可选/强制输入的;
在过程中还是走了一点弯路,可能从字面的理解上导致了一开始把控制原因和移动原因当成两个平行的东西。其实不是,控制原因就是控制移动原因。
到这里,问题也最终得到了解决。在更改控制原因中的344为要求输入(显示)后,再次生成的凭证中移动原因就可以显示了。