Automatic Refresh Report - periodically refreshes results

The below code demonstrates how to create a simple report which automatically updates itself every 10 seconds and displays the new results on screen. This is without any intervention from the user.

The report calls a custom abap function module which also needs to be created with the following signiture / abap code

*Signiture for creating Function module used above
FUNCTION Z_ENQUE_SLEEP.
*"-----------------------------------------------
*"*"Local interface:
*"-----------------------------------------------
 wait up to 10 seconds.
ENDFUNCTION.


ABAP code to create the automatically refreshing report

* Automatic refresh report *............................................................. *: Report: ZAUTO_REFRESH : *: : *: Author: SAP Development : *: : *: Description: Display a report which automatically updates : *: itself every 10 seconds : *: : *:...........................................................: REPORT zauto_refresh . DATA: g_init_once, ok_code(20), g_ref_from_timer. TYPES: BEGIN OF t_ekko, ebeln TYPE ekpo-ebeln, ebelp TYPE ekpo-ebelp, statu TYPE ekpo-statu, aedat TYPE ekpo-aedat, matnr TYPE ekpo-matnr, menge TYPE ekpo-menge, meins TYPE ekpo-meins, netpr TYPE ekpo-netpr, peinh TYPE ekpo-peinh, END OF t_ekko. DATA: it_ekko TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0, wa_ekko TYPE t_ekko. IF g_init_once <> 'X'. g_init_once = 'X'. CALL FUNCTION 'Z_ENQUE_SLEEP' STARTING NEW TASK 'WAIT' PERFORMING when_finished ON END OF TASK. ENDIF. WRITE:/ 'wait for 10 sec....'. AT USER-COMMAND. CASE ok_code. WHEN 'FCT_R'. SELECT ebeln ebelp statu aedat matnr menge meins netpr peinh UP TO 10 ROWS FROM ekpo INTO TABLE it_ekko. WRITE:/ sy-uzeit. "Time LOOP AT it_ekko INTO wa_ekko. WRITE:/ wa_ekko-ebeln, wa_ekko-ebelp. ENDLOOP. sy-lsind = 0. IF g_ref_from_timer = 'X'. CALL FUNCTION 'Z_ENQUE_SLEEP' STARTING NEW TASK 'INFO' PERFORMING when_finished ON END OF TASK. g_ref_from_timer = ''. ENDIF. ENDCASE. *---------------------------------------------------------------------* * FORM WHEN_FINISHED * *---------------------------------------------------------------------* * ........ * *---------------------------------------------------------------------* * --> TASKNAME * *---------------------------------------------------------------------* FORM when_finished USING taskname. RECEIVE RESULTS FROM FUNCTION 'Z_ENQUE_SLEEP'. g_ref_from_timer = 'X'. * Trigger an event to run the at user-command SET USER-COMMAND 'FCT_R'. ok_code = 'FCT_R'. sy-ucomm = 'FCT_R'. ENDFORM. " WHEN_FINISHED

Related Articles

SAP ALV Reports - ABAP or Advanced List Viewer reports
ALV grid reports using the object methods functionality
ALV TREE Example ABAP code and information for creating ALV tree based reports
SAP Dynamic documents in ABAP objects
SAP dynamic document example screens
ABAP report Progress indicator - When added also Stops report timeout
SAP progress indicator bar to count number of records processed within ABAP report and stop timeout
SAP percentage complete progress indicator bar for your ABAP reports
Prevent ABAP report timeout by Reseting the SAP runtime value using TH_REDISPATCH
ABAP Reporting - Example code and information on various areas of ABAP reporting
ABAP Automatic refresh report to retrieve real time live data from SAP database
Capture ABAP report using WRITE statement to internal table with SAP
Write report straight to printer
Convert Spool request to PDF and send as e-mail
Convert Spool request to PDF and send as e-mail
Execute ABAP Report using the SUBMIT statement
ABAP report to display all the selection screen fields and any values input by the user