SAP 對HU作貨物移動報錯-Only 0 serial numbers entered instead of 30 -運維
元旦剛過,就收到客戶的業務人員報錯說,當其對HU作轉庫(同一個公司代碼下工廠到工廠或者同一個工廠下存儲地點對存儲地點)都不成功,報錯以下:測試
Only 0 serial numbers entered instead of 30/調試
以第一個HU爲例,裏面是包含有30個序列號的,blog
HU的狀態是WHSE,代表HU裏的貨物是在庫狀態。數據都是正常的,HU狀態等都一如從前正常。事務
那爲啥用的好好的事務代碼,過了一個新年就不能正常運行呢?這個報錯信息,是加入項目近一年以來第一次遇到的。不管是業務人員仍是咱們運維團隊,都感到奇怪!究竟是爲何?開發
項目上對HU執行轉庫的事務代碼,沒有使用VLMOVE,而是在VLMOVE的基礎上作了一個封裝,容許一次對多個HU批量進行轉庫操做,其核心功能仍是VLMOVE的功能。io
1),咱們去項目上的SAP測試系統上測試,發現若是把過帳日期改爲2019-12-31,不是當天(2020-1-3)的話,就報相同的錯誤:class
若是不修改過帳日期,就是用系統本身建議的日期,基礎
執行,bug
成功了!
也就是說,這個不是對HU轉庫的程序問題。不過真的奇怪,跨了一個年就不能對含有序列號的HU轉庫過帳了?這不合常理啊。
2),咱們就這個問題向SAP公司發了一個Message。獲得的回覆,正如預期的回覆同樣,因咱們使用的不是SAP標準事務代碼,而是一個自開發的事務代碼(雖然這個自開發事務代碼核心功能仍是調用標準VLMOVE功能),因此SAP公司不提供支持。
3),固然,咱們也同時找了開發同事去調試程序。沒有哪一個問題是開發顧問調試程序找不到緣由的!通過開發同事的努力,咱們有新發現:當咱們將過帳日設置爲2019年年末的時候,程序生成的物料憑證過帳日期是2019年的,可是序列號相關年度是取的天然年度的日期2020年,這樣會致使物料憑證不完整。也就是說標準SAP系統裏VLMOVE不支持爲含有序列號的HU作跨年轉庫等過帳操做。
咱們能夠說是SAP系統的一個bug吧。
解決方案,天然不是去打Notes了,而是由開發同事在相關檢查的地方加了加強代碼,跳過相關的檢查繞過這個報錯,最終問題解決。
2019-01-03 寫於銀川市。