How to make an abap program pause?

21,886

Solution 1

2 solutions:

1) Either use WAIT UP TO ... SECONDS.

WAIT UP TO 42 SECONDS.
WAIT UP TO '0.5' SECONDS. " decimals are possible since ABAP 7.40 SP 8
  • Does a roll-out and releases the work process to the listener
  • Does an implicit Database commit

Use it when CPU processes are at a premium and when the implicit commit will not corrupt your data or cause a short dump because of an open database cursor.

2) Or use the function module ENQUE_SLEEP:

    CALL FUNCTION 'ENQUE_SLEEP'
      EXPORTING
        seconds = 42.
  • Does not release the work process
  • Does not cause an implicit Database commit

Use it when you cannot afford an implicit commit, and the system can handle the work process(es) being tied up for the duration of the SLEEP command.

Solution 2

ABAP WAIT UP TO SAP Documentation

WAIT statement has an implicit COMMIT which is something that should be avoided.

Solution 3

Do you really need it to pause? You could trace through it by entering /h into the transaction field before you execute the program or by setting a breakpoint in the code.

Share:
21,886

Related videos on Youtube

Igal Serban
Author by

Igal Serban

יגאל סרבן http://serban.pw http://www.facebook.com/igalse http://il.linkedin.com/pub/igal-serban/22/52/823

Updated on September 09, 2020

Comments

  • Igal Serban
    Igal Serban over 3 years

    For testing purposes I need my ABAP program to wait for few seconds. How can this be done?

  • Igal Serban
    Igal Serban over 15 years
    So simple. And I couldn't find it on this thing called internet. Thanks!
  • Igal Serban
    Igal Serban over 15 years
    I don't think that it should be down voted. There are cases were it is the desired effect. And many that it does not matter ( which is my case). Thanks for the addition.
  • Igal Serban
    Igal Serban about 15 years
    Frankly, I don't remember why I needed the pause.

Related