Skip to Content
-1
Jun 15, 2020 at 04:42 AM

Display only 10 days back data in report.

236 Views

Hi Experts,

I want to display only 10 days back data from current date in report. it just a simple report. No any select option is there. But dont understand how do i give Where condition in Select query.

REPORT ZDTUM.
TABLES: zdaily.
data: datum TYPE sy-datum.
DATA: tripdat TYPE zdaily-tripdat.
TYPES: BEGIN OF TY_ZDAILY,
         TRUCK_NO         TYPE ZDAILY-TRUCK_NO,
         VEHICLE_CATEGORY TYPE ZDAILY-VEHICLE_CATEGORY,
         TRIPDAT          TYPE ZDAILY-TRIPDAT,
         ON_OFF_HIRE      TYPE ZDAILY-ON_OFF_HIRE,
         P_FROM           TYPE ZDAILY-P_FROM,
         P_TO             TYPE ZDAILY-P_TO,
               END OF TY_ZDAILY.

DATA : IT_ZDAILY TYPE TABLE OF TY_ZDAILY,
       WA_ZDAILY TYPE TY_ZDAILY.

DATA : WA_FIELDCAT   TYPE  SLIS_FIELDCAT_ALV, "Field catalog work area
       IT_FIELDCAT   TYPE  SLIS_T_FIELDCAT_ALV, "field catalog internal table
       IT_LAYOUT     TYPE SLIS_LAYOUT_ALV, "ALV layout settings

*  FORM_CALLBACK TYPE SLIS_FORMNAME VALUE 'USER_COMMAND'. "For user command
START-OF-SELECTION.
datum = sy-datum.
datum = sy-datum - 10.

  SELECT * FROM ZDAILY INTO CORRESPONDING FIELDS OF TABLE  IT_ZDAILY.
  PERFORM BUILD_FCAT.
  PERFORM DISPLAY_ALV.
FORM BUILD_FCAT .
  WA_FIELDCAT-FIELDNAME   = 'Truck_no'.
  WA_FIELDCAT-SELTEXT_M   = 'Truck no'.
  WA_FIELDCAT-COL_POS     =  1.
  WA_FIELDCAT-KEY         = 'X'.
*  WA_FIELDCAT-HOTSPOT         = 'X'.
  APPEND WA_FIELDCAT TO IT_FIELDCAT.
  CLEAR WA_FIELDCAT.

  WA_FIELDCAT-FIELDNAME   = 'Vehicle_category'.
  WA_FIELDCAT-SELTEXT_M   = 'Vehicle_category'.
  WA_FIELDCAT-EDIT        = 'X'.
  WA_FIELDCAT-COL_POS     =  2.
  APPEND WA_FIELDCAT TO IT_FIELDCAT.
  CLEAR WA_FIELDCAT.

  WA_FIELDCAT-FIELDNAME   = 'Tripdat'.
  WA_FIELDCAT-SELTEXT_M   = 'Entry Date'.
  WA_FIELDCAT-EDIT        = 'X'.
  WA_FIELDCAT-COL_POS     =  3.
  APPEND WA_FIELDCAT TO IT_FIELDCAT.
  CLEAR WA_FIELDCAT.

  WA_FIELDCAT-FIELDNAME   = 'ON_OFF_HIRE'.
  WA_FIELDCAT-SELTEXT_M   = 'Truck Status'.
  WA_FIELDCAT-EDIT        = 'X'.
  WA_FIELDCAT-COL_POS     =  4.
  APPEND WA_FIELDCAT TO IT_FIELDCAT.
  CLEAR WA_FIELDCAT.

  WA_FIELDCAT-FIELDNAME   = 'P_FROM'.
  WA_FIELDCAT-SELTEXT_M   = 'From'.
  WA_FIELDCAT-EDIT        = 'X'.
  WA_FIELDCAT-COL_POS     =  5.
  APPEND WA_FIELDCAT TO IT_FIELDCAT.
  CLEAR WA_FIELDCAT.

  WA_FIELDCAT-FIELDNAME   = 'P_TO'.
  WA_FIELDCAT-SELTEXT_M   = 'To'.
  WA_FIELDCAT-EDIT        = 'X'.
  WA_FIELDCAT-COL_POS     =  6.
  APPEND WA_FIELDCAT TO IT_FIELDCAT.
  CLEAR WA_FIELDCAT.
ENDFORM.
" BUILD_FCAT

FORM DISPLAY_ALV .
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      I_CALLBACK_PROGRAM      = SY-REPID "program name
**      I_CALLBACK_USER_COMMAND = FORM_CALLBACK "user command subroutine name
*     I_CALLBACK_TOP_OF_PAGE  = FORM_TOP_OF_PAGE "sub routine for top of page
      IS_LAYOUT               = IT_LAYOUT
      IT_FIELDCAT             = IT_FIELDCAT
    TABLES
      T_OUTTAB                = IT_ZDAILY
    EXCEPTIONS
      PROGRAM_ERROR           = 1
      OTHERS                  = 2.
  IF SY-SUBRC <> 0.

*  MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
ENDFORM.                    " DISPLAY_ALV