(ALV) ALV-1
ALV그려야함 -> 'SCR'EEN만 기억하자
1. S = 'S'CREEN
위에
2. C = 'C'ONTAINER
위에
3. R = G'R'ID
을 얹는 식으로 진행할 거다.
*SCR 만들기(TOP)
1. S
프로그램에 100번 SCREEN CREATE
2. C
CONTAINER 선언
높은 확률로 커스텀 컨테이너를 그릴 것이니, SCREEN PAINTER로 그려주자
도킹이나 스플리터 컨테이너는 맞딱드리게 되면 그 때 생각하고 잊고 지내면 됨.
DATA : go_container TYPE REF TO cl_gui_custom_container.
3.R
DATA : go_alv TYPE REF TO cl_gui_alv_grid.
*이제 따로 따로 떨어진 SCR이어주기(PBO)
1. S-C 붙이고
CREATE OBJECT go_container
EXPORTING
container_name = 'CON100'.
2. C-R 붙이면 끝
CREATE OBJECT go_alv
EXPORTING
i_parent = go_container.
*이제 R위에 낙서하면 됨 = 결과화면 출력
CALL METHOD go_alv->set_table_for_first_display
EXPORTING
i_structure_name = 'SFLIGHT' "낙서장의 포맷은 SFLIGHT.
CHANGING
it_outtab = gt_itab[].
*낙서내용
보통 쿼리가 많이 오는데, 여기서는 사용자가 CARRID 값 입력하면 그에 해당하는 SFLIGHT 정보 보여주기
SELECT-OPTIONS : s_carrid FOR scarr-carrid.
SELECT * FROM sflight WHERE carrid IN @s_carrid
INTO CORRESPONDING FIELDS OF TABLE @gt_itab[].
<암기할 것>
뼈대는 무조건 암기해야함.
외우는 방법 : SCR! 만들고, 이어주고, 낙서하자.
-만들고,
스크린 100번 커스텀으록 그려주고!
DATA : go_container TYPE REF TO cl_gui_custom_container,
go_alv TYPE REF TO cl_gui_alv_grid.
-이어주고,
CREATE OBJECT go_container
EXPORTING
container_name = 'CON100'.
CREATE OBJECT go_alv
EXPORTING
i_parent = go_container.
-낙서하자.
CALL METHOD go_alv->set_table_for_first_display
EXPORTING
i_structure_name = 'SFLIGHT'
CHANGING
it_outtab = gt_itab[].