去年7月初笔者加入D项目之初,就听闻该项目有一个复杂的需求或者说GAP,即是金属平衡。
客户所在的行业是金属加工制造行业,为汽车生产某个关键零部件。客户提出,整个生产过程,没有化学反应产生,理论上生产过程中,投入多少重量的金属零部件,就应该产出多少重量的成品以及废料。
客户生产的原料主要是铜管,比较贵重,所以客户比较关注生产投入与产出重量之间的差异,并且客户提出在过去常常发现有些铜相关的物料丢失。所以客户希望上了SAP系统之后,能对金属平衡有一个很好的管理,对于每笔生产订单投入产出差异,能有一个工具能及时监控到,方便业务区查找原因。同时,希望从库存管理的角度,也能知道每个指定的时间段范围内对于金属钢与铜,收了多少重量,消耗了多少重量,过去某个日期的库存,现有库存等等。通过查询库存进与出,以及工单WIP等数据的查询,能及时监控到工厂里的金属尤其是铜相关的物料有多少差异,多少WIP,然后可以去做原因追溯。
不巧的是,该GAP落在了笔者头上。所以,在GAP分析阶段,笔者有召集业务团队召开多次会议,深入了解客户的需求,试图使用SAP系统标准的报表比如MB51,标准的库存报表等支持这个需求。经过展示这些报表给业务团队看,业务认为SAP标准报表还是不能方便的满足业务的需求。最后决定,通过开发报表的方式来满足业务的要求。这就是D项目上所说的Metall Balance Report。这个报表被认为是项目上业务非常关注与重视的一个报表,在项目的诸多阶段被业务部门反复提起过。可以说这个报表做的好不好,用的好不好,在某种程度上决定了D项目是否成功!这么一来,我一不小心又变成了D项目上core 中之core了!任务艰巨,重要性如此之高,所以笔者不敢掉以轻心!
这个报表被安排在项目上的第五个Sprint来实现,即是要完成开发与测试,完成培训客户,以及由关键用户DEMO给管理团队等。开发之前,笔者用Excel大致画好报表的原型,然后发给业务团队去看,根据他们提出的建议反复修改这个原型,最后终于在第五版定稿。笔者这么做,是避免自己对于客户的需求有偏差,所以把报表的查询界面与结果界面以及逻辑设想给客户,有任何的误解或者错误能被及时纠正。这个办法保证了后续开发的顺利进行,不至于出现开发以及培训过程中,因各种原因导致反复修改界面或者业务逻辑。报表于昨天顺利完成关键用户培训,今天上午顺利展示给客户管理团队,得到了客户管理团队的高度认可。
报表大致界面,如下:
此报表实际有2个子报表组成,一个是stock balance report, 一个是Production WIP report。
Stock balance report报表结果大致如下:
Production WIP report, 执行结果大致如下:
金属行业的SAP项目可能都有类似的需求,所以笔者在D项目上设计的这个报表,或许可能作为同行们的一个参考。是故写下这篇文字,希望能对同行们有所帮助与启发。