[ABAP] Debug心得
? ? 最近跟了CO01的標準程序,業務顧問懷疑組件替代組取值有問題,所以去跟標準程序的組件取值。眾所周知跟標準程序是件很頭疼的事,需要耐心細心更需要技巧,通過這次解決問題的過程得到一些心得記錄分享一下。
? ? 基本情況是成品物料直接下工單得到的組件數量和計劃訂單轉工單得到的組件數量不一致。取數方向的問題首先想到ST05獲取SQL路徑,實際試了一下發現冗雜進程過多,果斷放棄。然后想到取數過程是否是點擊組件按鈕時發生的,然后直接上手去跟了程序,結果發現在當前屏幕PAI事件中就已經發生了取數,點擊組件只是進行跳轉屏幕展示。看屏幕邏輯流代碼Method名字將取數部分鎖定在BOM_EXPLOSION內,好一個跟結果發現直到Method結束數據依然是和標準BOM一致的,此時心態有點崩,冷靜下來想想其實這種問題出現的時候就應該想到關鍵點在于數據的變化點發生在哪里而不是整個的取數過程,頓時信心倍增。既然從前往后跟不能達到目的,就選擇從結果往前看,進入組件子屏幕PBO第一個Mothed下斷點,果然跟到我們想要的最終數據,進入函數我們可知RESB_BT就是我們要研究的變量內表,而數據變化的過程就在當前函數組內,這時候我們只需要找到任意一個調用的當前函數組的函數,然后將RESB_BT[]設置為觀察點,即可捕捉到我們想要的數據變化過程,由于程序處理過程中涉及的組件數據很多,這時候我們還要靈活運用觀察點的激活和取消激活 設置臨時變量觀察點來跳過一些我們不需要的跟蹤過程,最終我們確認問題發生在可用性檢查過程中,問題解決。
? ? ? ?事后再來回憶整個過程,我們發現跟蹤BOM原始的讀數這個過程是沒有必要的,要更精準的瞄準我們所需要的數據變化點,在一開始我們可以直接從組件子屏幕顯示著手,獲取到研究變量的名字,從而獲取到觀察點位置,然后再一步步的向前推演數據變化過程,事情就會變得事半功倍。
?
?
?
總結
以上是生活随笔為你收集整理的[ABAP] Debug心得的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [转]浅说软件需求分析
- 下一篇: PP点点通主要功能