SAP-MM:物料采购订单的客制化开发与对应打印/预览的配置详解编程语言

Preface

由于之间工作的转变,从原来相对纯粹单一的SAP本地化薪酬方案的实施与维护,变成了现在企业内部新增的业务需求在SAP系统上的配置与再开发。这个转变确实有了很大的变化,也伴随着相当大的挑战。不过既然是兴趣使然,对于这些新的未知的领域都会抱着一颗学习的心去那摸爬滚打一番,即便可能那样事物是个很入门的级别,我也觉得值得我去一步一步积累。

好吧,引入正题,因为前一阵子都在搞企业的一些采购订单表样调整的工作所以也就顺带写了那一篇关于Adobe Form的文章(上一篇),不过这次我一直在好奇这个采购订单到底是如何通过后台配置与SAP标准的采购订单创建/修改时绑定的(ME21N,ME22N)。毕竟每个企业自己用的采购订单表肯定是各自有个各自的格式,所以这个配置肯定是非常通用的(可能网上已经有了,我还是硬着头皮自己摸索了一遍)。

Introduction to Purchase Order Output

通常在SAP上下完一笔采购订单,相应的业务人员肯定也得把这个采购订单从系统上把自己下的订单给打印出来给供应商,财务部的AP人员等等。总之,这份凭证必然是需要一个纸质证明的,而且这份凭证的格式肯定也是根据企业的特定要求来设计的,例如所需的公司logo啊,供应商的地址,买方公司地址等等。在有了这个格式的表单之后,就可以通过系统的后台配置把这个格式的表单与前台的订单创建的过程进行绑定了。最终在一个订单的信息被完整创建好之后,我们就可以通过打印预览看到这个在系统上被创建出来的采购订单了。

Step to Customize Purchase Order Ouput

  1. 第一步就是要创建这么一个具有特定格式的表样,我们可以通过SFP去创建一个对应的Adobe Form,当然也可以用SAP Smart Form甚至用SAP Script去画这个Form。总之在SAP里创建Form的技术很多,只是眼下比较流行的还是Adobe Form,另外的两个已经快要渐渐地被淘汰在历史的长河里了。所以这里步主要介绍的就是通过Adobe Form去设计出一张对应的采购订单样表,因此对应的格式啊所需的内容啊基本就在这里定好了。那么这个Adobe Form是如何创建的呢?具体可看上一篇内容(继续广告),只不过这里的Interface需要更多的Import Parameter,同时也要声明一些本地自身所需的Global Data跟Types。毕竟采购订单上的相关信息肯定还是很多的,尤其是地址与各种文本信息,需要设计开发人员事前根据需求好好整理一遍。在定好了所有输入字段与相关类型之后,这里就需要在Interface内部写一点数据获取的逻辑来把对应的信息显示在表单对应的位置上。这里就跟上一篇的通过写Report来填充表单内容的方法就有区别了,因为采购订单不是通过某个具体报表去获取信息内容的,而是在生成的过程中通过自身的Interface中的逻辑,预先把内容就获取到了。具体可以参考下图的预览:SAP-MM:物料采购订单的客制化开发与对应打印/预览的配置详解编程语言
  2. 让开发完成了上述的Form创建之后(这种搬砖的活就外包给外面的开发去画吧,好吧,现在就是有问题让我来改,果然还是底层搬砖工啊),接下来就通过后台配置去把这个新的Adobe Form与前台的Purchase Order创建进行绑定了。其实所需的配置都集中在一个地方,直接T-code:SM34 -> VVC_T685B_EF 找到这个View Cluster进行配置,IMG入口是在: IMG -> Materials Management -> Purchasing -> Messages -> Output Control -> Message Types -> Define Message Types for Purchase Order (真是好深的路径啊!我觉得一般第一次倒腾这个人必然是很难发现的)。进入到这个View Cluster,我们就可以进行相应的配置了,具体界面如下:SAP-MM:物料采购订单的客制化开发与对应打印/预览的配置详解编程语言
  3. 那么第一就要创建自己所需的Output Types, 当然也可以用原先的,只是建议创建一个新的以Z开头的类型,可便于以后的维护与开发。这里的分类就主要为了区分一个大公司下的不同区域可能有不同采购订单的格式,比如某跨国企业,在中国的采购订单肯定是中文形式的Form,在英国的采购订单就是英文的Form了,而且格式上也可能会有相应的不同。创建好了新的Output  Type,双击进入具体的配置菜单(这里创建了一个ZNEW的新类型):SAP-MM:物料采购订单的客制化开发与对应打印/预览的配置详解编程语言
  4. 在这个配置菜单里,其实对于General Data我还真不太清楚具体有什么用途,只能按下F1看看每个字段的描述了(课后作业吧,我也会再去看看)。然后在左上角双击Process Routines,这里就可以绑定我们在第一步创建的Adobe Form。通过New Entries可以创建对应的输出方式的配置,既然我们这里要做的是打印预览,那么就直接创建一个 ‘Print Output’ 的 Medium类型,别问我为什么(因为我也不太清楚,只知道SAP提供了一个专门负责显示Adobe Form的子程序),直接在Processing1的Sub-windows里填上对应的内容, Program:SAPFM06P  Form Routine: ADOBE_ENTRY_NEU, 接着隔一行在PDF/Smart Form里面填上刚才在第一步里创建的Adobe Form的名字, 类似: ZXXX_FRM, 既然是Adobe Form那么对应的Type就是PDF了。创建好的记录保存好以后应该就如下图:SAP-MM:物料采购订单的客制化开发与对应打印/预览的配置详解编程语言
  5. 最后一步就是在对应的创建采购订单的Transcation里(ME21N)对Output的类型进行对应的设置,具体就是点击Goto->Messages,在里面填上刚才创建的Output Type以及对应的Vendor号码,好了之后可以通过Print Preview来预览相应的采购订单了。如果预览发现没啥问题,那么就可以庆贺一下,这个采购订单的自定义创建于绑定就算完成了。Message里的设置信息:SAP-MM:物料采购订单的客制化开发与对应打印/预览的配置详解编程语言

Summary

总结一下就是初期先搞一个Form的开发,然后开发完了之后做一个配置工作。我觉得这应该是采购订单配置中很通用的一步,入门级别的。所以我也就是记录一下自己看看,也算是自己对MM这块的一个初期积累吧。

谢谢阅读

nw



原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/19911.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论