Skip to Content
-1
Mar 14, 2019 at 08:27 AM

Convert to ALV output

252 Views Last edit Mar 14, 2019 at 08:29 AM 2 rev

Hi All,

Can anyone help me convert the following code to ALV instead of Write command for its output?

REPORT Z_TEST2. "NO STANDARD PAGE HEADING.
PARAMETERS p_sys TYPE tmssysnam DEFAULT sy-sysid NO-DISPLAY.

SELECTION-SCREEN BEGIN OF BLOCK time WITH FRAME TITLE text-001 NO INTERVALS.
  SELECTION-SCREEN BEGIN OF LINE.
  SELECTION-SCREEN COMMENT 1(25) text-002 FOR FIELD strtdate.
  PARAMETERS strtdate LIKE sy-datum OBLIGATORY DEFAULT sy-datum.
  PARAMETERS strttime LIKE sy-uzeit DEFAULT '000000'.
  SELECTION-SCREEN END OF LINE.
  SELECTION-SCREEN BEGIN OF LINE.
  SELECTION-SCREEN COMMENT 1(25) text-003 FOR FIELD enddate.
  PARAMETERS enddate  LIKE sy-datum DEFAULT sy-datum.
  PARAMETERS endtime  LIKE sy-uzeit DEFAULT '240000'.
  SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK time.

DATA: it_tmslog TYPE tmstpalogs.

CALL FUNCTION 'TMS_TM_GET_HISTORY'
 EXPORTING
   IV_SYSTEM               = p_sys
   IV_ALLCLI               = 'X'
   IV_IMPORTS              = 'X'
   IV_MONITOR              = 'X'
 IMPORTING
   ET_TMSTPALOG            = it_tmslog
 CHANGING
   CV_START_DATE           = strtdate
   CV_START_TIME           = strttime
   CV_END_DATE             = enddate
   CV_END_TIME             = endtime
          .

IF SY-SUBRC = 0.
  IF it_tmslog[] IS NOT INITIAL.
    LOOP AT it_tmslog ASSIGNING FIELD-SYMBOL(<fs_tmslog>).
      MOVE: <fs_tmslog>-trtime(8) TO enddate,
            <fs_tmslog>-trtime+4(6) TO endtime.
      WRITE: / enddate(8), endtime(6),<fs_tmslog>-trkorr(20),<fs_tmslog>-truser(12),<fs_tmslog>-as4text(60),<fs_tmslog>-retcode(4).
    ENDLOOP.
  ELSE.
    WRITE: 'No import logs found.'.
  ENDIF.
ENDIF.