SAP/ABAP 코드

(ABAP 코드) Selected Cells & Rows

haramang 2022. 2. 8. 06:25

FORM ADD_LINE .

   DATA: LT_CELL TYPE LVC_T_CELL,
        LS_CELL TYPE LVC_S_CELL,
        LT_ROW  TYPE LVC_T_ROW,
        LS_ROW  TYPE LVC_S_ROW.

   CLEAR: GS_DATA, LT_ROW[], LS_ROW, LT_CELL[], LS_CELL.

   " ### CELL# #### ##,
   CALL METHOD GO_GRID->GET_SELECTED_CELLS
     IMPORTING
       ET_CELL = LT_CELL.

   " CELL# #### ##.
   IF LT_CELL[] IS INITIAL.

     " ROW ### #### ##
     CALL METHOD GO_GRID->GET_SELECTED_ROWS
       IMPORTING
         ET_INDEX_ROWS = LT_ROW.

     LOOP AT LT_ROW INTO LS_ROW.
       INSERT  GS_DATA INTO GT_DATA INDEX LS_ROW-INDEX.
       CLEAR: GS_DATA.
     ENDLOOP.
   ELSE.
     LOOP AT LT_CELL INTO LS_CELL.
       INSERT  GS_DATA INTO GT_DATA INDEX LS_CELL-ROW_ID-INDEX.
       CLEAR: GS_DATA.
     ENDLOOP.
   ENDIF.

ENDFORM.