interactive list techniques

35
List2-1 ABAP 楊楊楊 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 楊楊楊楊

Upload: alana-coffey

Post on 01-Jan-2016

32 views

Category:

Documents


0 download

DESCRIPTION

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 顯示資料. 1. Detail Lists. Program Flow in Detail Lists. Creating Data Lists. - PowerPoint PPT Presentation

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.