abap 楊子青 list2-1 interactive list techniques n detail lists –program flow in detail lists...
TRANSCRIPT
List2-1ABAP 楊子青
Interactive List Techniques Detail Lists
– Program Flow in Detail Lists– Events– Page Headings– SET TITLEBAR
Data Transport Selecting Multiple Lines Field Selection System Fields for interactive Lists 補充:利用 ALV GRID 顯示資料
List2-2ABAP 楊子青
1. Detail Lists
List2-3ABAP 楊子青
Program Flow in Detail Lists
List2-4ABAP 楊子青
Creating Data Lists
List2-5ABAP 楊子青
Creating Data Lists
List2-6ABAP 楊子青
練習 1-1
REPORT Z9901_0518A.
START-OF-SELECTION.
WRITE:/ 'BASIC LIST', SY-LSIND.
AT LINE-SELECTION.
WRITE:/ 'DETAIL LIST', SY-LSIND.
List2-7ABAP 楊子青
練習 1-1 執行結果
List2-8ABAP 楊子青
Events: Overview
List2-9ABAP 楊子青
Page Headings
List2-10ABAP 楊子青
練習 1-2REPORT Z9901_0518A.
START-OF-SELECTION. FORMAT HOTSPOT ON COLOR 3 INVERSE ON. WRITE:/ 'BASIC LIST', SY-LSIND.
TOP-OF-PAGE. WRITE: 'TITLE1:', SY-TITLE. ULINE.
AT LINE-SELECTION. WRITE:/ 'DETAIL LIST', SY-LSIND.
TOP-OF-PAGE DURING LINE-SELECTION. write:/ 'TITLE2'.
List2-11ABAP 楊子青
練習 1-2 執行結果
List2-12ABAP 楊子青
SET TITLEBAR
List2-13ABAP 楊子青
練習 1-3REPORT Z9901_0518A NO STANDARD PAGE HEADING.
START-OF-SELECTION. SET TITLEBAR 'T01' WITH SY-DATUM. FORMAT HOTSPOT ON COLOR 3 INVERSE ON. WRITE:/ 'BASIC LIST', SY-LSIND.
TOP-OF-PAGE. WRITE: 'TITLE1:', SY-TITLE. ULINE.
AT LINE-SELECTION. SET TITLEBAR 'T02' WITH SY-LSIND. WRITE:/ 'DETAIL LIST', SY-LSIND.
TOP-OF-PAGE DURING LINE-SELECTION. write:/ 'TITLE2'.
List2-14ABAP 楊子青
練習 1-3 執行結果
List2-15ABAP 楊子青
2. Data Transport
List2-16ABAP 楊子青
The HIDE Technique
List2-17ABAP 楊子青
練習 2
REPORT Z9901_0518B.
START-OF-SELECTION. TABLES Z9901SELECTION. SELECT * FROM Z9901SELECTION. FORMAT HOTSPOT ON COLOR 5 INVERSE ON. WRITE:/ Z9901SELECTION-SNO, Z9901SELECTION-SNAME, Z9901SELECTION-
CNO. HIDE: Z9901SELECTION-CNO. ENDSELECT.
AT LINE-SELECTION. TABLES Z9901COURSE. SELECT * FROM Z9901COURSE WHERE CNO = Z9901SELECTION-CNO. WRITE:/ Z9901COURSE-CNO, Z9901COURSE-CNAME, Z9901COURSE-CGRADE,
Z9901COURSE-TEACHER. ENDSELECT.
List2-18ABAP 楊子青
練習 2 執行結果
List2-19ABAP 楊子青
3. Selecting Multiple Lines
DATA MARK.WRITE:/ MARK AS CHECKBOX,…
AT LINE-SELECTION.
DO. CLEAR MARK. READ LINE SY-INDEX FIELD VALUE MARK. IF SY-SUBRC <> 0. EXIT. ENDIF.
IF MARK <> SPACE. WRITE:/ Z9901SELECTION-SGRADE, Z9901SELECTION-SNAME. MODIFY CURRENT LINE FIELD VALUE MARK FROM SPACE. ENDIF.ENDDO.
List2-20ABAP 楊子青
練習 3
REPORT Z9901_0518C.
DATA MARK.
START-OF-SELECTION. TABLES Z9901SELECTION. SELECT * FROM Z9901SELECTION. FORMAT HOTSPOT ON COLOR 5 INVERSE ON. WRITE:/ MARK AS CHECKBOX, Z9901SELECTION-SNO, Z9901SELECTION-SNAME,
Z9901SELECTION-CNO. HIDE: Z9901SELECTION-SGRADE, Z9901SELECTION-SNAME. ENDSELECT.
List2-21ABAP 楊子青
練習 3 ( 續 )
AT LINE-SELECTION.
DO. CLEAR MARK. READ LINE SY-INDEX FIELD VALUE MARK. IF SY-SUBRC <> 0. EXIT. ENDIF.
IF MARK <> SPACE. WRITE:/ Z9901SELECTION-SGRADE, Z9901SELECTION-
SNAME. MODIFY CURRENT LINE FIELD VALUE MARK FROM SPACE. ENDIF.ENDDO.
List2-22ABAP 楊子青
練習 3 執行結果
List2-23ABAP 楊子青
4. Field Selection
List2-24ABAP 楊子青
5. System Fields for interactive Lists
List2-25ABAP 楊子青
Creating Lists in Model Dialog Boxes
List2-26ABAP 楊子青
6. 補充:利用 ALV GRID 顯示資料( 應用物件導向及 dialog programming)
List2-27ABAP 楊子青
實作: (1) SE38 查詢 SAPBC400*
List2-28ABAP 楊子青
實作: (2) 複製 SAPBC400RUS_ALV_GRID 為
zpu101_xx_alv_grid
List2-29ABAP 楊子青
實作: (3) 修改程式
List2-30ABAP 楊子青
修改程式碼REPORT zpu101_01_alv_grid2 .
DATA gdt_spfli TYPE STANDARD TABLE OF zpu101_01_art.
DATA ok_code LIKE sy-ucomm.
DATA: container_r TYPE REF TO cl_gui_custom_container, grid_r TYPE REF TO cl_gui_alv_grid.
START-OF-SELECTION.
* fill internal table
SELECT * FROM zpu101_01_art INTO TABLE gdt_spfli.
CALL SCREEN 100.
List2-31ABAP 楊子青
修改程式碼MODULE create_control OUTPUT.
IF container_r IS INITIAL.
CREATE OBJECT container_r EXPORTING container_name = 'CONTAINER_1'.
CREATE OBJECT grid_r EXPORTING i_parent = container_r.
CALL METHOD grid_r->set_table_for_first_display
EXPORTING i_structure_name = ' zpu101_01_art ' CHANGING it_outtab = gdt_spfli.
ENDIF.
ENDMODULE.
List2-32ABAP 楊子青
實作: (4) 存檔, Activate
List2-33ABAP 楊子青
實作: (5) 執行結果
List2-34ABAP 楊子青
練習:讓使用者以進階查詢方式,輸入團體編號範圍,進行查詢
List2-35ABAP 楊子青
修改程式碼參考REPORT zpu101_01_alv_grid2 .
DATA gdt_spfli TYPE STANDARD TABLE OF zpu101_01_art.
DATA ok_code LIKE sy-ucomm.
DATA: container_r TYPE REF TO cl_gui_custom_container, grid_r TYPE REF TO cl_gui_alv_grid.
tables zpu101_01_show.SELECT-OPTIONS team for zpu101_01_show-team.
START-OF-SELECTION.
* fill internal table SELECT * FROM zpu101_01_art INTO TABLE gdt_spfli where artid in team.
CALL SCREEN 100.