Data Remove 程序总结
Data remove是一個根據(jù)指定的PLANT刪除數(shù)據(jù)庫表數(shù)據(jù)的程序。該程序提供了刪除測試的功能,可以在刪除操作之前查看有多少條數(shù)據(jù)可以被刪除。
?
由于特定的業(yè)務(wù)需求,業(yè)務(wù)人員要根據(jù)PLANT字段在數(shù)據(jù)庫表zmvr01,zmvr02,zmvr03中刪除相應(yīng)的數(shù)據(jù),在刪除之前要查看有多少條記錄滿足刪除條件。
?
所以SAP ABAP編程人員要通過編程實現(xiàn)該功能,業(yè)務(wù)人員也可以通過該程序完成相應(yīng)的刪除操作。
?
以下是具體的開發(fā)流程
?
需求
1.??????程序名:ZMRP_VSS_CLEANUP (需要新建)
2.??????Title :Vendor schedule sharing data cleanup
3.??????Development class: ZMM_INTF
4.??????根據(jù)Plant聲明select-option(no intervals, obligatory)
5.??????建立CheckBox –Test run (default checked )
6.??????如果test run被選中,則只顯示可能被刪除的數(shù)據(jù)的數(shù)量
7.??????如果test run沒有被選中,就根據(jù)條件到數(shù)據(jù)庫表ZMVR01, ZMVR02 &ZMVR03中刪除數(shù)據(jù)。在用戶進行刪除操作時,要彈出確認對話框讓用戶再次確認該操作。
8.??????當數(shù)據(jù)刪除后,要顯示已被刪除數(shù)據(jù)的數(shù)量
?
其實整個程序的開發(fā)邏輯比較簡單, 但是有幾個問題需要特別注意。
1.??????在SAP中新建的程序一定要為它建立一個Tansaction Code,由于業(yè)務(wù)人員沒有權(quán)限到開發(fā)環(huán)境中測試,所以他們只能通過T-code來運行程序
2.??????T-CODE的命名要滿足規(guī)范 Zxxnn (xx: 具體設(shè)計的業(yè)務(wù)模塊 例如:MM ;nn:編號:不能隨意命名,要選擇最新的編號,可以在SE93中查看)
3.??????彈出確認對話框需要調(diào)用 Function modulePOPUP_TO_CONFIRM,輸入?yún)?shù)為對話框顯示的一系列信息,輸出參數(shù)代表用戶的操作, 參數(shù)為1代表用戶選擇確認。
4.??????在SAP2中,報表中一定要加入指定的報表頭,需要調(diào)用自定義 funtion moduleZS_STANDARD_REPORT_HEADING. 該調(diào)用要放在TOP-OF-PAGE事件里
?
BUGSOLUTION
?
?
兩個BUG:
1.??????在程序中設(shè)置斷點后,無法正常啟動Debugger
2.??????test mode下可以成功查看需要刪除的數(shù)據(jù)數(shù)目,但是刪除操作無法成功進行
?
?
解決方案:
1.??????由于新建程序時,Status屬性設(shè)置成了system program ,在這種情況下,需要先在程序中設(shè)置斷點, 然后在commandfield(輸tcode的地方)輸入 /h, 然后在下一個屏幕中的settings選項中選擇systemdebugging,然后執(zhí)行程序,這樣就可以進入debugger了。 還有一種方法就是將程序的Status類型設(shè)置成Customerproduction program。
2.??????起初的想法是,由于需要通過內(nèi)表對數(shù)據(jù)庫的數(shù)據(jù)進行刪除,所以在往內(nèi)表中放數(shù)據(jù)的時候,只選擇了數(shù)據(jù)庫表的主鍵字段,因為根據(jù)內(nèi)表刪除數(shù)據(jù)庫數(shù)據(jù)時,系統(tǒng)會查看內(nèi)表和數(shù)據(jù)庫表中的主鍵字段是否一致,如果一致,就會將符合的數(shù)據(jù)刪除。但是在往內(nèi)表中放數(shù)據(jù)的過程中,抽取的字段寫成了 INTO TABALE ,這便導(dǎo)致數(shù)據(jù)不能正常導(dǎo)入到內(nèi)表中,將關(guān)鍵字改為INTO CORRESPONDINGFIELDS OF TABLE就可以解決這個問題了。
總結(jié)
以上是生活随笔為你收集整理的Data Remove 程序总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ABAP data extract 数
- 下一篇: ABAP 面试题