‎2013 Feb 19 1:24 PM
Hi Gurus,
How to show the running clock on output screen in SAP.
Thanks.
‎2013 Feb 19 1:32 PM
Hi,
Following code may direct you to the answer.
REPORT Z_RUNNING_CLOCK NO STANDARD PAGE HEADING.
CLASS lcl_timer DEFINITION DEFERRED .
DATA :
obj_receiver TYPE REF TO lcl_timer,
obj_timer TYPE REF TO cl_gui_timer.
CLASS lcl_timer DEFINITION.
PUBLIC SECTION.
METHODS:
handle_finished FOR EVENT finished OF cl_gui_timer.
ENDCLASS.
CLASS lcl_timer IMPLEMENTATION.
METHOD handle_finished.
SKIP TO LINE 1.
WRITE AT 1 sy-uzeit. " Display time at every interval
CALL METHOD obj_timer->run.
ENDMETHOD.
ENDCLASS.
START-OF-SELECTION .
* Object for Time control
CREATE OBJECT obj_timer.
* Object to receive event
CREATE OBJECT obj_receiver.
* Bind the event to method
SET HANDLER obj_receiver->handle_finished FOR obj_timer. "
* Set Interval (in seconds)
obj_timer->interval = 1.
* Start the Timer
CALL METHOD obj_timer->run.
* Session should still remain
WRITE sy-uzeit.
Rewards helpful.
‎2013 Feb 19 1:29 PM
Use CL_GUI_TIMER
e.g.
PARAMETERS : p_time type t DEFAULT 300.
*Class to handle the FINSHED Event Raised by CL_GUI_TIMER
CLASS my DEFINITION.
PUBLIC SECTION.
METHODS : run_handler FOR EVENT finished OF cl_gui_timer.
ENDCLASS.
DATA timer TYPE REF TO cl_gui_timer.
DATA myh TYPE REF TO my.
CLASS my IMPLEMENTATION.
METHOD run_handler.
CALL METHOD timer->run.
call method CL_GUI_CFW=>SET_NEW_OK_CODE
EXPORTING
new_code = ‘REFR’.
ENDMETHOD.
ENDCLASS.
at SELECTION-SCREEN OUTPUT.
p_time = P_time - 1.
CREATE OBJECT timer.
CREATE OBJECT myh.
timer->interval = ‘1′.
CALL METHOD timer->run.
SET HANDLER myh->run_handler FOR ALL INSTANCES.
Reg
Soumya
‎2013 Feb 19 1:30 PM
‎2013 Feb 19 1:32 PM
Hi,
Following code may direct you to the answer.
REPORT Z_RUNNING_CLOCK NO STANDARD PAGE HEADING.
CLASS lcl_timer DEFINITION DEFERRED .
DATA :
obj_receiver TYPE REF TO lcl_timer,
obj_timer TYPE REF TO cl_gui_timer.
CLASS lcl_timer DEFINITION.
PUBLIC SECTION.
METHODS:
handle_finished FOR EVENT finished OF cl_gui_timer.
ENDCLASS.
CLASS lcl_timer IMPLEMENTATION.
METHOD handle_finished.
SKIP TO LINE 1.
WRITE AT 1 sy-uzeit. " Display time at every interval
CALL METHOD obj_timer->run.
ENDMETHOD.
ENDCLASS.
START-OF-SELECTION .
* Object for Time control
CREATE OBJECT obj_timer.
* Object to receive event
CREATE OBJECT obj_receiver.
* Bind the event to method
SET HANDLER obj_receiver->handle_finished FOR obj_timer. "
* Set Interval (in seconds)
obj_timer->interval = 1.
* Start the Timer
CALL METHOD obj_timer->run.
* Session should still remain
WRITE sy-uzeit.
Rewards helpful.
‎2013 Feb 19 1:38 PM