SAP 交貨單與HU指派關係資料不一致問題的解決方案
SAP 交貨單與 HU 指派關係資料不一致問題的解決方案
我所在的專案是一個超大型的Global SAP 專案,客戶是一家跨國企業巨頭,其SAP 系統早已實施十幾年了。除了SAP 系統,客戶還有其它各種外部系統,比如WMS 系統等。
我的合作伙伴是一家印度的知名諮詢公司,該公司有近乎100 號印度人在這個專案上。客戶這些年每年都有一些最佳化專案在做,我和這些印度同事們根據客戶總部的安排,有需要實施的SAP 最佳化專案就參與其中,沒有最佳化專案需要實施就做運維。
近期客戶總部以及乙方合作伙伴沒有給我安排實施專案,所以我加入了有近乎50 人的運維團隊,主要解決客戶業務團隊提出的各種問題,為客戶的業務部門保駕護航。該運維團隊基本都是印度人,我和另外2 箇中國的SAP 同行在運維團隊裡主要負責客戶中國區工廠的運維支援。
近日接到了專案上使用者提出的一個比較棘手的問題,讓我糾結了幾天。透過在專案上跟印度同事一起尋找解決方案,讓我對於印度同行們有更多的瞭解。他們在專案上工作的專業技能和態度,他們的文件能力,都給筆者留下了比較深刻的印象。
如今問題已經解決,閒來無事寫下這篇文字,做一個記錄。
Part I :問題描述
客戶美國公司的某個使用者提出他需要刪除一個外向交貨單,無法刪除,所以報了一個TICKET 給到我們運維團隊。我剛好手頭沒其它事,就主動接了這個TICKET 。
該外向交貨單是一個公司間STO 流程裡的交貨單,交貨單因故需要刪除。不過經過業務人員的一頓操作猛於虎,弄成的結果就是:該交貨單相關的Handling Unit 都已經被un-assigned( 解除分配) 了,且這些HU 都已經沒有庫存了,就是一些空的HU 了,該批次號的庫存在發貨工廠裡也沒有了。
VL03N 顯示該交貨單,其Pack 介面裡,已經沒有任何HU 資訊了,
但是因為操作不當等種種原因,導致該交貨單的document flow 裡還是能看到這些HU 號碼資訊。如下圖示:
要想刪除交貨單,一定要將交貨單裡的picked quantity 清零,且需要將已經相關的批次號刪除掉。
但是因為交貨單之前做揀配時候關聯的HU 解綁出問題了,憑證流表(VBFA )裡還殘留有資料。這使得業務人員無法將清空picked quantity 以及批次號,系統會提醒說:Delivery still contains handling units. 如下圖示:
也就是說現在外向互動單,業務人員已經無法正常取消其揀配,無法將憑證流裡的HU 資訊正常刪除掉,所以就沒有辦法將該交貨單正常刪除了。
尼瑪,一不小心接了一個燙手山芋!
Part II: 我的解決方案
接到這個ticket ,我第一反應就是這是一個由於業務人員操作不當或者資料庫更新異常導致的疑難雜症,常規手段已經無法解決了。
所以我想到的解決方法是隻能在Debug 模式下將VBFA 裡該交貨單相關的HU 資料行刪除掉,然後去修改交貨單裡的picked quantity 以及清理批次號資訊,然後就可以正常刪除該交貨單了。
Debug 改SAP 表資料以解決很多疑難雜症,是很多SAP 同行在萬不得已的時候都會想到和用到的終極解決方案。 這個方案是純粹技術手段,並且是上不了檯面的手段。當然這個解決方案對於解決類似由於業務人員操作失誤或者資料庫更新異常等導致的疑難雜症,是非常簡單且快捷有效的!
這種手段這在很多民營企業的SAP 專案裡屢試不爽。不過以筆者參與的諸多大型跨國企業的GLOBAL SAP 專案經歷來看, Debug 改SAP 表資料絕不是輕易可以做的事情。 大型跨國企業裡的SAP 系統,對於許可權控制極為嚴格。很多許可權是不會開放給IT 部門的,Debug 改SAP 表資料的許可權更是不可能輕易開放給運維團隊的。
所以當我將自己想到的解決方案跟運維團隊的相關負責人溝通,他們表示這種解決方案不是不可以,但是不推薦;只能在別無他法的時候才能考慮,並且需要客戶的業務部門同意,客戶總部IT 老大以及運維部門老大審批,然後申請專門的Firefighter 賬號,才能去執行Debug 改表。
看得出,專案上對於這種技術手段的控制是非常嚴格的,雖然沒有一刀切的絕對禁止,但是設計了非常嚴謹而複雜的管控流程。我對此表示理解,畢竟客戶是跨國大公司,做什麼都要講究合規,都有規範的流程。
Part III :印度人的解決方案
運維團隊負責人在專案上幹了很多年,很明顯對於類似的疑難雜症有相關處理經驗。他要求我所在的DOMAIN 內其他幾個印度同事也幫忙看看這個問題,以找出更為可行的解決方案。這讓筆者挺欣慰的,技術上有疑難雜症可以在團隊內部得到幫助和建議,這不就是team work 麼?
不透過DEBUG 改表的方式能解決這個問題?我倒是想看看這些印度人到底有啥好辦法。 兩天後,印度同事給出了方案,不過步驟很多,都是業務人員就能有許可權執行的操作:
1 )先透過701 盤盈方式造出該物料批次的少量庫存。畢竟該物料批次的庫存已經沒有了。
2 )系統上的外向互動單的包裝(Packing )是透過SHPCON 這種message type 的IDoc 方式進行的。所以透過WE19 複製其它IDoc 的方式產生一個新的SHPCON 型別的IDoc ,然後reprocess 這個IDoc, SAP 系統就能自動更新交貨單的Packing 資訊,將憑證流裡的HU 資訊自動更新(老的垃圾HU 資料被清除,新的HU 增加進去)。
3 )正常手段對該交貨單執行unpack ,刪除HU 。
4 )正常手段刪除交貨單。
5 )最後執行702 盤虧方式將第一步裡造出的少量庫存清除掉。
看完印度同事的解決方案,我表示很震驚,不能不對他們暗自佩服,居然還可以這麼玩!不過他也表示,先讓業務人員按照這個執行,如果不可行最後還得要debug 刪除表資料來解決。解決方案發給使用者沒多久,使用者就反饋說按這個方案解決了問題,交貨單已順利刪除!
至此,掛在我名下的這個TICKET 可以關閉了,我也可以鬆口氣兒。
- 完-
寫於2023-1-13.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69946223/viewspace-2932191/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SAP交貨單迴轉問題
- SAP MM 公司間STO裡外向交貨單與內向交貨單裡序列號對應關係
- 【SAP技術】SAP不能修改一個已經分配給交貨單的HU
- SAP HUM 巢狀HU的場景下內向交貨單Relationship Browser裡只顯示內層HU巢狀
- 快取與資料庫雙寫,不一致問題及解決方案快取資料庫
- SAP VL02N為某個交貨單PGI報錯說HU和序列號裡的識別符號不一致問題之對策II符號
- SAP HUM 將HU與檢驗批號碼解除關聯關係
- 深入分析與解決方案:快取與資料庫雙寫不一致問題快取資料庫
- SAP HUM巢狀HU研習之HU03顯示內層HU資料巢狀
- APISIX單元測試準備工作與問題解決方案API
- ERP 與 SAP的關係
- SAP公司間STO流程裡外向交貨單PGI後自動觸發內向交貨單的實現
- SAP MM STO單據的外向交貨單建立後新加ITEM?
- Swoole - TCP流資料邊界問題解決方案TCP
- SAP HUM對巢狀HU做WM貨物移動時TO單上只顯示外層HU巢狀
- SAP LE 交貨單裡的移動型別的確定型別
- SAP MM 公司間STO裡交貨單PGI之後自動觸發內向交貨單功能的實現
- 請教一個資料表關係的問題
- kafka shutdown停止關閉很慢問題的解決方案Kafka
- SAP質量管理模組常見問題及解決方案
- 「SAP技術」SAP MM 向交貨單的存在不阻止PO被刪除
- 多執行緒操作stl::map引起的資料不一致問題的解決過程與方法執行緒
- 關於購物車下單-訂單跳轉及返回問題解決方案
- SAP SD交貨單憑證流裡的Confirmation of Service初探
- 資源限制類問題的常用解決方案
- Oracle資料庫字符集問題解決方案大全Oracle資料庫
- Java 8 的日期與時間問題解決方案Java
- redis快取相關問題及解決方案Redis快取
- SAP 公司間STO場景中外向交貨單過賬後自動觸發內向交貨單功能的實現
- poi讀取表格資料和表格顯示不一致問題解決
- SD外向交貨單
- SAP HUM 內向交貨單憑證流和Relationship Browser
- 解決AI的小資料問題AI
- 運籌學練習Python精解——指派問題Python
- SAP SD交貨單憑證流裡的Confirmation of Service初探 II
- 解決ListView1的介面資料與記憶體不一致問題,將記憶體資料更新到介面上View記憶體
- NSTimer詳解----使用、保留環問題、與runloop的關係OOP
- MyBatis 解決欄位名不一致的問題MyBatis