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中的邏輯,預先把內容就獲取到了。具體可以參考下圖的預覽:
  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,我們就可以進行相應的配置了,具體界面如下:
  3. 那麼第一就要創建自己所需的Output Types, 當然也可以用原先的,只是建議創建一個新的以Z開頭的類型,可便於以後的維護與開發。這裏的分類就主要爲了區分一個大公司下的不同區域可能有不同採購訂單的格式,比如某跨國企業,在中國的採購訂單肯定是中文形式的Form,在英國的採購訂單就是英文的Form了,而且格式上也可能會有相應的不同。創建好了新的Output  Type,雙擊進入具體的配置菜單(這裏創建了一個ZNEW的新類型):
  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了。創建好的記錄保存好以後應該就如下圖:
  5. 最後一步就是在對應的創建採購訂單的Transcation裏(ME21N)對Output的類型進行對應的設置,具體就是點擊Goto->Messages,在裏面填上剛纔創建的Output Type以及對應的Vendor號碼,好了之後可以通過Print Preview來預覽相應的採購訂單了。如果預覽發現沒啥問題,那麼就可以慶賀一下,這個採購訂單的自定義創建於綁定就算完成了。Message裏的設置信息:

Summary

總結一下就是初期先搞一個Form的開發,然後開發完了之後做一個配置工作。我覺得這應該是採購訂單配置中很通用的一步,入門級別的。所以我也就是記錄一下自己看看,也算是自己對MM這塊的一個初期積累吧。


謝謝閱讀

nw


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章