ALV GRID

ALV 화면 분리 (CL_GUI_SPLITTER_CONTAINER)

 

 

사용자의 요청에 따라 ALV GRID 화면을 분할해서 개발하는 경우가 있습니다.

화면 분할하는 방법에 대해서 알아보겠습니다.

 

 

<변수선언>

 

DATA : gv_docking_container TYPE REF TO cl_gui_docking_container,  
          gv_splitter                TYPE REF TO cl_gui_splitter_container,
          gv_container_1          TYPE REF TO  cl_gui_container,
          gv_container_2          TYPE REF TO  cl_gui_container,

          gv_grid_1                TYPE REF TO cl_gui_alv_grid,

          gv_grid_2                TYPE REF TO cl_gui_alv_grid,

 

 

 

<화면 분할>

 

1. CREATE docking_container

 

  CREATE OBJECT gv_docking_container
    EXPORTING
      REPID      SY-REPID
      DYNNR     SY-DYNNR
      SIDE         = gv_docking_container->DOCK_AT_TOP
      EXTENSION 3000.

 

 

 

2. CREATE splitter container


  CREATE OBJECT gv_splitter
    EXPORTING
      PARENT  = gv_docking_container
      ROWS    = 2      *몇개의 행으로 나눌것인지
      COLUMNS 1 *몇개의 열로 나눌것인지

 

 

 

3. 분할한 컨테이너를  gird를 올릴 컨테이너와 연결


  CALL METHOD gv_splitter->GET_CONTAINER
    EXPORTING
      ROW         1    
      COLUMN    1
    RECEIVING
      CONTAINER = gv_container_1.
  

    => 첫번째 행의 첫번째 열을 gv_container_1 과 연결하겠다는 구문


  CALL METHOD gv_splitter->GET_CONTAINER
    EXPORTING
      ROW         = 2   
      COLUMN    = 1
    RECEIVING
      CONTAINER = gv_container_2.
  

    => 두번째 행의 첫번째 열을 gv_container_2 과 연결하겠다는 구문

 

 

 

4. gird를 올릴 컨테이너 높이(너비) 설정

  CALL METHOD
gv_splitter->SET_ROW_HEIGHT

    EXPORTING
      ID      = 1
      HEIGHT  = 50.

 

=> 해당 컨데이터는 두개의 행과 한개의 열로 분리했기 때문에 SET_ROW_HEIGHT를 사용하여

     행의 높이를 설정하는것입니다. (두개의 행으로 나눴으니 순서대로 IID = 1, 2 이다)

     만약 여러개의 열로 분리를 했으면 SET_COLUMN_WIDTH 로 가로너비를 설정해주면됩니다.

 

 

5. ALV GIRD와 연결

 

    CREATE OBJECT gv_grid_1

      EXPORTING
        i_parent = gv_container_1.

 

    CREATE OBJECT gv_grid_2

      EXPORTING
        i_parent = gv_container_2.

 

 

 **참고:  메소드 간단하게 사용방법

    gv_container_1  = gv_splitter->get_container( row = 1 column = 1 ).


 

 

'ALV GRID' 카테고리의 다른 글

ALV Grid Edit 기능  (0) 2022.01.19
ALV GRID 툴바 제거 방법  (0) 2021.09.09
ALV GRID에 SEARCH HELP 추가하기  (0) 2021.07.14
ALV 색상 표  (0) 2021.07.01
ALV GRID 색상 추가 3가지 방법  (0) 2021.07.01