sapdev logo background
sapdev logo sapdev logo
Comments

SAP progress indicator bar to count number of records processed within ABAP report and stop timeout




The progress indicator adds a small timer in the lower left corner of the SAP screen. It not only provides the user with the number of records processed but also stops reports timing out. It does this by reseting the timeout timer whenever it is called.

UPDATE!!!
Progress indicator no-longer prevents timeout in later versions of SAP so you can use TH_REDISPATCH


*&*******************************************************
*& DESCRIPTION: Demonstrate Progress indicator          *
*&*******************************************************
REPORT  zprogind.

TYPES: BEGIN OF t_mara,
         matnr LIKE mara-matnr,
       END OF t_mara.
DATA: it_mara TYPE STANDARD TABLE OF t_mara INITIAL SIZE 0,
      wa_mara TYPE t_mara.
DATA: gd_count(6)    TYPE n,
      gd_outtext(70) type c.


*********************************************************
*START-OF-SELECTION.
START-OF-SELECTION.

  SELECT matnr
   UP TO 500 ROWS
    INTO TABLE it_mara
    FROM mara.

  CHECK sy-subrc EQ 0.

  LOOP AT it_mara INTO wa_mara.
  add 1 to gd_count.
  concatenate 'Processing personnel data'(m10) gd_count into gd_outtext
            separated by ' '.

* Display indicator for employee count
  perform progress_indicator using gd_outtext.
  ENDLOOP.

  WRITE: /20 'Report is "Complete" OK'.


*&---------------------------------------------------------------------*
*&      Form  PROGRESS_INDICATOR
*&---------------------------------------------------------------------*
*       Displays progress indicator on SAP screen
*----------------------------------------------------------------------*
form progress_indicator using p_text.
  call function 'SAPGUI_PROGRESS_INDICATOR'
      exporting
*         PERCENTAGE = 0
           text       = p_text.
endform.                    " PROGRESS_INDICATOR



comments powered by Disqus