導讀
增強差異:SAP的HCM模塊組織和人事增強都有標準的增強點,不管你調用標準的函數還是前臺操作都會觸發對應的增強。所以很多業務不需要考慮那么多分散點,只要找到一個合適的增強點,就能解決很多和外圍系統集成的業務邏輯,今天遇到的問題就是調用標準rhgrenz4程序,設置組織的結束日期與PPOSE撤銷部門結束日期,增強點的的入參居然部一樣。
作者:vivi,來源:osinnovation
2024年是高產的一年,但是不是高效的一年,全年寫70多篇文章,但是閱讀率不高,只有3萬左右的閱讀率,但是2023年一共寫不到10篇文章,但是閱讀率居然有兩萬左右的閱讀率,所以2025年需要有新的觀點,新的思路,希望2025年比2024年更好。今天這篇文章就是2024年的最后一篇,2025年加油。
1 rhgrenz4程序設置部門結束日期
增強點的變量NEW_IMAGE的infotype居然是是1000,而不是1001,導致推送外圍系統的時候,抓不到增量數據。(項目背景:因為最近做的是中臺和SAP的系統集成邏輯,中臺創建和SAP一樣的數據庫表,原來的邏輯中臺操作,自己更新表,但是系統運行一段時間后,發現兩套系統表數據差異比較大,導致數據報表差異大,為避免出現數據差異的問題,希望只要SAP數據有變更,就把變更ID的全量數據推送給中臺,中臺就不需要自己向數據庫寫數據,盡量保持兩邊系統數據一致。)
2 PPOSE部門定界
在頁面前臺定界,發現系統增強會抓取到本層節點的上級節點與本層節點的下級節點,也就是會出現父節點和子節點,這樣就不需要從歷史數據找記錄,這和rhgrenz4傳過來的數據不一樣,這個問題就復雜,因為想到增強做文章,就是希望我們有個共同點,只要修改一個地方就可以,所以如何處理這個復雜的問題。這里就想起是不是可以從程序名字入手,如果增強判斷是從rhgrenz4過來的,那么我修改邏輯,否則就按照原來的邏輯處理,這樣就不需要修改多個地方,避免問題復雜化。
3 解決思路
因為系統有個參數SY-CPROG的參數是調用的程序名,那是否能根據這個參數,判斷增強的地方是什么程序調用的,如果是rhgrenz4這個程序調用的,我把參數值修改成PPOSE調用的參數值一樣,那不就解決這個問題。所以判斷的條件分三個,SY-CPROG=rhgrenz4 and infotype=1000且enda不等于99991231,這樣就限制特定場景,然后把infotype=1000改成1001,然后用objid到OLD_IMAGE數據抓取到歷史數據,用新的ID與老的ID合并起來,重新從數據庫取一次數據,這樣數據就全。
4 總結
其實評估人天是一件技術活,如何能準確評估人天是IT的基礎功能,最近這幾次評估的人天都不靠譜,每次都少很多,其實很多原因就是沒有考慮到溝通成本,如果涉及的集成接口,評估的人天一定需要考慮和對方系統的業務溝通成本,對方系統的開發溝通成本,對方系統的測試溝通成本,對如果存在中間件,還需要考慮到與中間件的溝通成本,對應非常復雜的業務,還需要考慮特殊場景考慮不全的新方案設計成本,所以經驗還是比較重要的點。
2024年是忙碌的一年,除拿到一個最基本的證書,自己最關心的證書總是擦肩而過,2025年希望自己能有好的運氣,能拿到自己夢寐以求的證書,加油。