SAP MM 按采購訂單查詢付款信息的報表?
上午給P3項目采購部門用戶做了一個采購相關的報表的培訓。培訓過程中,客戶的采購部門經理提出了一個問題:有沒有報表能查詢到各個采購訂單的付款情況,顯示采購訂單號,已付多少,未付多少,未付金額系統建議的付款期又是哪一天等等。並且對方說,業務現在使用的Ariba系統里就有這種報表。
筆者從沒有用過與見過傳說中的Ariba,也木有玩過SAP FICO模塊。所以對於用戶的這個問題,筆者當即答復客戶說,容我回去查查然后給答復。
筆者了解到FI模塊有個報表FBL1N,可以查詢open或者cleared的應付款的。但是筆者對於這個報表並不了解,帶着用戶的問題,筆者饒有興趣的去研究了FBL1N這只報表。在客戶的Quality系統上,按照一定查詢條件得到了如下結果:

筆者驚喜的發現,通過調整報表布局,可以調出“采購訂單號碼“字段,顯示在報表里。
可是筆者又失望的發現,報表中所有open/cleared item中“采購訂單號”列都是空,即使相關的應付款財務憑證是與一個采購訂單相關的發票有關。如下圖:

以第一個行項目5100025794為例,

相關的Invoice號碼是5808387670/2014,顯示該Invoice信息,如下圖:

可以得知該Invoice是與某個采購訂單(8500529766)有關的。但是該采購訂單號(8500529766),竟然不能顯示在FBL1N的結果里。我們都知道,SAP很講究保持各個單據之間的Link關系,FBL1N報表里以全空的方式顯示采購訂單號,不合SAP風格啊。
這到底為啥子呢?這個又引起了筆者的好奇心。
筆者上網查資料得知,這是標准SAP的邏輯。因為FBL1N報表里的open item,會與某個invoice號碼有關,但是一個invoice里可能會出現多個采購訂單號,所以SAP系統是沒辦法抓取采購訂單號顯示在FBL1N報表結果里。
一些同行說,可以通過增強加代碼,顯示invoice里的第一個item里的采購訂單號,比如某同行說:
I have done it with ABAP changes :
-change with trans. FIBF event 1650 : Function module LINE_ITEMS_GET_GKONT
- then change in FM get_gkont, so we get the first PO in that Field.
還有同行提到說可以考慮在Assignment里顯示PO號碼,通過定義vendor master data里的Sort Key的方式。對於這種方案,有同行表示異議:We have the purchase order set at the sort key in the vendor master but the assignment field is coming thru as '00000' on FBL1N.
結合查詢資料的結果,以及咨詢了若干資深FICO顧問,筆者認為:SAP系統里不存在滿足業務這個要求的報表。
2018-09-12 寫於杭州市.
