SAP_ABAP ALV GRID 요소

2021. 11. 11. 10:33SAP_ABAP

728x90

신호등(Exceptions) 처리

  • Exceptions는 경계값을 가지는 펄드를 구간에 따라 데이터를 조회한다.
1
2
3
4
5
6
7
DATA: light TYPE c.
 
 
FORM setting_layout CHANGING p_layout TYPE lvc_s_layo.
 p_layout-excp_fname ='LIGHT'.
ENDFORM.
 
cs
  1.  Exceptions 필드 추가 -> 인터널 테이블(OUTPUT)에 신호등을 표시할 필드를 TYPE C로 선언
  2.  Exceptions 필드 설정 -> ALV 레이아웃 설정에서 excp_fname 속성을 이용하여 신호등 필드 설정

Coloring Rows

  • 강조하고 싶은 라인의 색상을 변경
    • DATA: linecolor(4) TYPE c.​
       인터널 테이블에 linecolor 필드를 추가
    • INFOR_FNAME 필드 설정
      • ALV 레이아웃 설정에서 컬러 지정 필드설정

Coloring Cells

  • ALV GRID에서 강조하고 싶은 셀의 색상을 변경
    1.  인터널 테이블에 line color를 표시할 필드를 TYPE LVC_T_SCOL로 선언하여 추가
    2.  
    3. DATA: cellcolor TYPE LVC_T_SCOL.
    4. CTAB_FNAME 필드 설정
    5. CELL 색상 지정
      IF ls_color-fname EQ 'PLANETYPE'.
      
      
      
      INSERT ls_color INTO TABLE lt_color. 
      
      
      
      INSERT LINES OF lt_color INTO TABLE gt_sflight-cellcolor.​

셀을 Pushbutton으로 보이기

  • ALV GRID 셀을 Pushbutton으로 나타냄.
  • 사용자가 셀을 클릭하면 다른 트랜잭션 화면으로 이동하거나 정보를 조회할 수 있다
    1. DATA: Chk TYPE C.
      DATA: cellbtn TYPE lvc_t_styl.
      Pushbutton 필드와 CELL 스타일 필드 추가: CHK 필드는 Pushbutton으로 보이는 필드,  CELLBTN은 Pushbutton과 같은 스 타일 정보틀 저장하는 칼럼
    2. p_layout-stylefname = 'CELLBTN' .
      ALV 레이아웃 설정에서 STYLEFNAME을 설정 필드 지정
    3. IF ls_cellbtn-fieldname EQ 'CHK'.
      	ls_cellbtn-fieldname = 'CHK'.
      	ls_cellbtn-style = cl_gui_alv_grid=>mc_style_button.
      ENDIF.
      Pushbutton 처리
    4. 버튼 클릭의 이벤트 등록
    5. 이벤트 메서드 정의
    6. 이벤트 메서드 구현
728x90

'SAP_ABAP' 카테고리의 다른 글

[SAP/ABAP] 관계연산자 / 산술연산자  (0) 2021.12.27
SAP_ABAP 매크로 macro 만들기  (0) 2021.11.24
SAP_ABAP ALV 필드 카탈로그  (0) 2021.11.10
SAP_ABAP ALV_이벤트  (0) 2021.11.01
SAP_ABAP ALV 메서드  (0) 2021.10.29