Skip to content

ABAP Keyword Documentation →  ABAP - Reference →  User Dialogs →  Screens →  ABAP Statements for Screens 

CALL SCREEN

Short Reference

Other versions: 7.31 | 7.40 | 7.54

Syntax


 CALL SCREEN dynnr 
            [STARTING AT col1 lin1
            [ENDING   AT col2 lin2]].

Addition

... STARTING AT col1 lin1 [ENDING AT col2 lin2]

Effect

This statement calls the dynpro with the dynpro number specified in dynnr. For dynnr, a data object of type n and length 4 is expected. The call starts a new dynpro sequence, which is embedded into the current dynpro sequence. The dynpro with dynpro number dynnr is the initial dynpro of the dynpro sequence. In a dynpro sequence started by a transaction code, you can nest up to 50 other dynpro sequences.

The called dynpro sequence is terminated as soon as one of the involved dynpros branches to a next dynpro with number 0. The program continues after CALL SCREEN.

The statement CALL SCREEN accesses the dynpros of the relevant main program of the current program group and these use the global data and dialog modules of the main program. Except when calling a dynpro in an externally called subroutine, the main program usually is the current program. If the specified dynpro does not exist in the main program of the program group, an untreatable exception occurs.

By default, the screens of all dynpros of the called dynpro sequence are displayed in the current window. Use addition STARTING AT to open a modal dialog window.

Addition

... STARTING AT col1 lin1 [ENDING AT col2 lin2]

Effect

Use addition STARTING AT to open a new popup level and to display all screens of the called dynpro sequence in a modal dialog window. The upper left corner of the dialog window is determined by the values col1 and lin1 for column and line. The values refer to the window with popup level 0. The lower right corner is set automatically or you can use col2 and lin2 to specify it after ENDING AT. For col1, lin1, col2 and lin2, data objects of type i are expected. The values of col1, lin1 should be smaller than those of col2, lin2, because otherwise the behavior is undefined. The maximum popup level is 9.


Notes

  • The called dynpro should not be a selection screen. To call a selection screen, use the statement CALL SELECTION-SCREEN.
  • When nesting dynpro sequences and creating popup levels, remember that usually during the program execution, you are already within a (nested) dynpro sequence and that the system itself can also create other dynpro sequences or popup levels (for example, field or input help or messages in dialog windows). For this reason, you should never use the maximum values of 50 dynpro sequences or nine popup levels within a program to capacity.
  • If during the processing of a modal dialog window a new dynpro sequence is called, it must be started in another popup level. You cannot use the statement CALL SCREEN without addition STARTING AT in this case.
  • When calling a dynpro in a dialog window, specify the window as a modal dialog window in its properties and set an appropriate GUI status beforehand. We recommend that a dynpro sequence in a modal dialog window consists of one dynpro only.
  • If there is an open spool request during the execution of the statement CALL SCREEN, a new print list level is created. The first list output in the new print list level creates a new spool request.

Exceptions


Non-Catchable Exceptions

  • Cause: Dynpro not found.
    Runtime Error: DYNPRO_NOT_FOUND