메뉴 건너뛰기

SAP 한국 커뮤니티

다중 ALV Grid 사이즈 조절 Tip

꿀꿀윤뚱67 2019.11.27 13:57 조회 수 : 1977

MODULE PREPARE_ALV_GRID_0100 OUTPUT.
  G_CALL_ALV = '1'.
  PERFORM CREATE_AND_INIT_ALV USING GR_CONT1  GR_GRID1
                                    100  "HEIGht
                                    1    "ROWS
  IF GT_011T[] IS NOT INITIAL.
    G_CALL_ALV = '2'.
    PERFORM CREATE_AND_INIT_ALV USING GR_CONT2  GR_GRID2
                                      60  "HEIGht
                                      2    "ROWS
  ENDIF.
  IF GT_012T[] IS NOT INITIAL.
    G_CALL_ALV = '3'.
    PERFORM CREATE_AND_INIT_ALV USING GR_CONT3   GR_GRID3
                                      60  "HEIGht
                                      3    "ROWS
  ENDIF.
  IF GT_013T[] IS NOT INITIAL.
    G_CALL_ALV = '4'.
    PERFORM CREATE_AND_INIT_ALV USING GR_CONT4  GR_GRID4
                                      60  "HEIGht
                                      4    "ROWS
  ENDIF.
ENDMODULE.                 " PREPARE_ALV_GRID_0100  OUTPUT

-----------------------------------------------------------------------------------

FORM CREATE_AND_INIT_ALV
            USING PR_CONT   TYPE REF TO CL_GUI_CONTAINER
                  PR_GRID   TYPE REF TO CL_GUI_ALV_GRID
                  P_HEIGHT
                  P_ROW_ID
                  PS_LAYO   TYPE LVC_S_LAYO
                  PT_FCAT   TYPE LVC_T_FCAT
                  PT_OUTTAB TYPE STANDARD TABLE.

  IF GR_GRID1 IS INITIAL.
    CREATE OBJECT GR_CONTAINER
      EXPORTING
        CONTAINER_NAME = 'G_CON'.
    CREATE OBJECT GR_SPLITTER
      EXPORTING
        PARENT  = GR_CONTAINER
        ROWS    = 4
        COLUMNS = 1.

    GR_SPLITTER->SET_ROW_MODE(
                    MODE = CL_GUI_SPLITTER_CONTAINER=>MODE_RELATIVE ).

    GR_SPLITTER->SET_ROW_HEIGHT( ID = 1 HEIGHT = 1 ).  " %

*   HTML TOP-OF-PAGE
    CALL METHOD GR_SPLITTER->GET_CONTAINER
      EXPORTING
        ROW       = 1  "TOP-OF-PAGE
        COLUMN    = 1
      RECEIVING
        CONTAINER = GR_CONT1.
*
  ELSE. "MAIN LIST 아니면 데이타 있을때만 출력
*    CHECK PT_OUTTAB IS NOT INITIAL.

    CASE G_CALL_ALV.
      WHEN '1'.  "GR_GRID2
        GR_SPLITTER->SET_ROW_HEIGHT( ID = 1 HEIGHT = 100 ).  "%

      WHEN '2'.  "GR_GRID3
        GR_SPLITTER->SET_ROW_HEIGHT( ID = 1 HEIGHT = 50 ).  "%
        GR_SPLITTER->SET_ROW_HEIGHT( ID = 2 HEIGHT = 50 ).  "%

      WHEN '3'.  "GR_GRID
        GR_SPLITTER->SET_ROW_HEIGHT( ID = 1 HEIGHT = 30 ).  "%
        GR_SPLITTER->SET_ROW_HEIGHT( ID = 2 HEIGHT = 30 ).  "%
        GR_SPLITTER->SET_ROW_HEIGHT( ID = 3 HEIGHT = 30 ).  "%
      WHEN '4'.  "GR_GRID
        GR_SPLITTER->SET_ROW_HEIGHT( ID = 1 HEIGHT = 25 ).  "%
        GR_SPLITTER->SET_ROW_HEIGHT( ID = 2 HEIGHT = 25 ).  "%
        GR_SPLITTER->SET_ROW_HEIGHT( ID = 3 HEIGHT = 25 ).  "%
        GR_SPLITTER->SET_ROW_HEIGHT( ID = 4 HEIGHT = 25 ).  "%
    ENDCASE.

  ENDIF.
  GR_SPLITTER->SET_ROW_HEIGHT( ID = P_ROW_ID HEIGHT = P_HEIGHT ).  "%

  IF PR_GRID IS INITIAL.
    CALL METHOD GR_SPLITTER->GET_CONTAINER
      EXPORTING
        ROW       = P_ROW_ID
        COLUMN    = 1
      RECEIVING
        CONTAINER = PR_CONT.

    CREATE OBJECT PR_GRID
      EXPORTING
        I_PARENT      = PR_CONT
        I_APPL_EVENTS = 'X'.

    PS_LAYO-COL_OPT = 'X'.
    PS_LAYO-ZEBRA   = 'X'.

    CALL METHOD PR_GRID->SET_TABLE_FOR_FIRST_DISPLAY
      EXPORTING
        IS_LAYOUT            = PS_LAYO
        IT_TOOLBAR_EXCLUDING = GT_EXCLUDE
      CHANGING
        IT_FIELDCATALOG      = PT_FCAT
        IT_OUTTAB            = PT_OUTTAB.

    IF GR_GRID1 IS NOT INITIAL.
      SET HANDLER GR_RECEIVER->HANDLE_TOP_OF_PAGE FOR GR_GRID1.
      PERFORM CREATE_TOP_OF_PAGE  USING GR_GRID1.
    ENDIF.
  ENDIF.

ENDFORM.                               "CREATE_AND_INIT_ALV

번호 제목 글쓴이 날짜 조회 수
527 data [2] sapjoy 2006.12.03 16719
526 Abap Dump Top 10 [5] 양키 2013.01.14 15741
525 BAPI_GOODSMVT_CREATE 입고/출고/재고이동시에 사용하세요. [5] 노름마치 2007.12.10 15085
524 Dynamic Internal Table 생성 꿀꿀윤뚱67 2019.11.27 14849
523 <img src=b.gif>Windows 7 에서 SAP GUI ALV 반응느림 해결방법 공유 (GUI720 기준)[추천:e-abap][추천:유리선율][추천:보나] [17] 점점 2010.07.02 14780
522 텍스트파일 다운받을때 유니코드 문제 해결 [8] file 솔로몬 2007.06.28 13767
521 SAP GUI WINDOW TITLE BAR 정보 표시 설정 방법 / 색상 설정 [15] file 미소 2010.12.26 13448
520 SAP 데이터 EXCEL로 내리는 절차 [6] sapjoy 2007.06.04 13341
519 Useful SAP System Administration Transactions [2] 홍성현 2007.08.08 12752
518 사업장 변경 [J_1BBRANCH] [1] Alexhong 2012.03.07 12625
517 테이블 변경 이력 테이블 [5] sapjoy 2006.12.12 12623
516 SAP GUI 7.10 patch level 14 Download Link 입니다. [2] 방배 2009.10.13 12607
515 오라클 힌트 리스트 정리 [3] sapjoy 2012.03.08 12533
514 native sql 사용 [8] sapjoy 2006.12.28 12373
513 GUI 720에서 ALV Grid 느린 현상 [26] 벗님 2011.10.12 12363
512 SELECT 문의 종류 및 CONCATENATE의 사용 [24] file iceout 2010.08.20 11785
511 delete 인터널 테이블 [7] ecbase 2006.12.02 11556
510 Batch JOB이 수행중인지 여부체크 [5] deepbluesea 2011.04.05 11393
509 클라이언트간 CTS로 데이타이관 [15] file 노름마치 2008.07.11 11075
508 ALV 엑셀 다운로드시 한글깨짐 해결 [7] sapjoy 2008.06.12 11051