CALL DIALOG

Short Reference

Syntax

CALL DIALOG dialog [ {AND SKIP FIRST SCREEN}
                   | {USING bdc_tab [MODE mode]} ]
                   [EXPORTING p1 FROM a1 p2 FROM a2 ...]
                   [IMPORTING p1 TO a1 p2 TO a2 ...].

Extras:

1. ... AND SKIP FIRST SCREEN

2. ... USING bdc_tab [MODE mode]

3. ... EXPORTING p1 FROM a1 p2 FROM a2 ...

4. ... IMPORTING p1 TO a1 p2 TO a2 ...

Effect

The statement CALL DIALOG calls the dialog module whose name is contained in the character-like data object dialog. The data object dialog must contain the name in uppercase. If the dialog module specified in dialog is not found, an exception that cannot be handled is raised.
When calling the dialog module, the assigned ABAP program is loaded in a new internal session. The session of the calling program is still available. In contrast to CALL TRANSACTION, the called program runs in the same SAP LUW as the calling program.

After loading the ABAP program, the event LOAD-OF-PROGRAM is triggered and the screen defined as the initial screen of the dialog module is called. The dialog module is terminated when the corresponding screen sequence terminates upon reaching the next screen with screen number 0 or the program is exited using the statement .

Note

Dialog modules are the only language resource that can be used to open a new session without changing the SAP LUW. Be aware of the following:

Addition 1

... AND SKIP FIRST SCREEN

Effect

Under the same conditions as for the statement CALL TRANSACTION, this addition surpresses the display of the screen of the initial screen. If the called dialog module has input parameters for the obligatory input fields of the initial screen, they can also be filled using a parameter transfer instead of SPA/GPA parameters.

Addition 2

... USING bdc_tab [MODE mode]

Effect

This addition controls the called program as in the statement CALL TRANSACTION using the specification of a batch input folder in an internal table bdc_tab of the line type BDCDATA. In this case, only MODE can be used as an addition for the control of the batch input processing.
If a message is sent in the called program, this message is available in the system fields sy-msgid, sy-msgty, sy-msgno, sy-msgv1, ..., sy-msgv4 after the call.

Addition 3

... EXPORTING p1 FROM a1 p2 FROM a2 ...

Addition 4

... IMPORTING p1 TO a1 p2 TO a2 ...

Effect

These additions can be used to assign the appropriate actual parameters a1, a2, ... to the formal parameters p1, p2, ... of the dialog module. The formal parameters of a dialog module are always optional. They can have all data types except for reference types.
When loading the called program, the values of the actual parameters are assigned to the global data objects of the called program that are defined as formal parameters. If this data is associated with screen fields of the same name, they are not overwritten by possible SPA/GPA parameters. If you specify IMPORTING, the system field sy-subrc is implicitly adopted by the called dialog module and unknown formal parameters are ignored by the system.

Note

Outside of classes, the additions FROM a1, FROM a2, ... und TO a1, TO a2, ... in the parameter lists can be omitted if the formal parameters and actual parameters have the same names.

Example

Calling a dialog module DEMO_DIALOG_MODULE which is associated with the program SAPMDEMO_TRANSACTION.

DATA spfli_wa TYPE spfli.
spfli_wa-carrid = 'LH'.
spfli_wa-connid = '0400'.

CALL DIALOG 'DEMO_DIALOG_MODULE'
  EXPORTING
    spfli-carrid FROM spfli_wa-carrid
    spfli-connid FROM spfli_wa-connid
  IMPORTING
    spfli_wa     TO spfli_wa.

Exceptions

Non-Catchable Exceptions