利用SAP應用事務開發功能的表格控件(Table Control),此控件主要應用于數據的批量輸出或輸入。
1) Tcode:se38,新建程序:Z_INPUT_SAMPLE
2) 定義內表IT_ITAB
[plain] view plain copy REPORT Z_INPUT_SAMPLE. TABLES:ZMARKET_MESSAGE. DATA: BEGIN OF IT_ITAB OCCURS 0, CHK TYPE C, SUPPERID LIKE ZMARKET_MESSAGE-SUPPERID, SUPPER LIKE ZMARKET_MESSAGE-SUPPER, MARKETID LIKE ZMARKET_MESSAGE-MARKETID, MARKET LIKE ZMARKET_MESSAGE-MARKET, END OF IT_ITAB.2)我們可以用Tcode:SE51來實現Screen的創建和維護,當然使用該工具需要提供剛建的程序名及Screen編號。
注意:1000為SAP預留屏幕號,這里自定義的屏幕號必須定義1000以外的其他數字,且最多不能超過4位,本例定義屏幕號為100.
點擊創建后,進入Screen設置界面。界面分3個部分,如下面的圖
3) 你也可以使用Tcode:SE80來創建Screen及ABAP設計。
4) 單擊ScreenPainter 按鈕,繪制一表格區域,系統將彈出表格創建向導。
單擊:繼續,在Name of table control這里輸入屏幕表格元素名稱,例如:T_TEST
單擊:繼續,在Internal PRogram talbe 處按F4會自動出現剛我們創建的內表IT_ITAB.
Table work area也是如此。加入進去。
單擊:繼續,可以看到我們定義內表的Field,多選需要input數據的這幾行。
單擊:繼續,因為我們要寫入表格,所以單選Input control。With column headers是設置是否顯示每欄的標題,CHK這個字段就是我們內表中第一個字段,就是為在此出現特別定義的。按F4會自動加顯示出來
單擊:繼續,看到3個復選框,第一個是:是否滾動,第二個是:是否自動加載增加和刪除按鈕,第三個是:是否增加全選和全不選按鈕,我們這里都選中,這樣向導會自動加載程序代碼,省事省力省時。
單擊:繼續,下面這些,可以保持默認就可。
單擊:繼續,最后一步,點擊:complete,至此用向導就將Table control畫好了。
雙擊標簽欄的字段,出現屬性窗口,更改下名稱。
最后保存激活。再回到我們的代碼,發現通過向導建Table Control給我們做了很多便利的事情,如圖,生成了方法,區分了類別。還生成不少代碼。
回到ABAP編輯界面,我們給代碼中加幾句:
保存激活后,就可以看到如下效果:你會發現狀態欄的按鈕都不起作用。接下來,我們來設計它,讓它起作用。
在邏輯流里將這兩段被注釋的語句解封。
然后雙擊:STATUS_0100,創建該對象
在出現的對話框中選擇第二項提交。
點擊是,界面轉到ABAP編輯界面,出現如下代碼:
將 SET PF-STATUS 'xxxxxxxx'.SET TITLEBAR 'xxx'.解封,并重命名。
雙擊重命名后的名稱:ZCREEN0100 創建該對象
點擊確定后,系統帶我們進入如下界面:
將功能鍵區打開,我們可以看到我們經??吹降膱D標都在此聚集著
在每個ico圖標上方命名
然后再雙擊每一個ico圖標進行設置
完成后保存激活。這時你會發現右邊樹形結構處多了一欄。
進入PAI模塊的T_TEST_USER_COMMAND,雙擊進去,在后面的代碼欄輸入如圖代碼。
保存激活后,再運行狀態欄這行就可以正常使用了。
本文轉自:http://blog.csdn.net/szlaptop/article/details/8116441?locationNum=7&fps=1
新聞熱點
疑難解答