2008 Mar 19 5:06 AM
What is set screen?difference between set screen &call screen
2008 Mar 19 5:09 AM
hi,
The SET SCREEN <nnnn> statement temporarily overwrites the Next screen attribute.
The screen <nnnn> must belong to the same program.
The next screen is processed either when the current screen processing ends, or when you terminate it
using the LEAVE SCREEN statement.
To specify the next screen and leave the current screen in a single step, use the
LEAVE TO SCREEN <nnnn> statement.
You can insert a screen sequence. This adds another layer to a stack.
You insert a screen sequence using the CALL SCREEN <nnnn> statement.
Note: Layers created in this way must be removed afterwards. You can do this by setting the next screen
statically or dynamically to the initial value (0) an the end of the inserted screen sequence.
To interrupt processing of the current screen and branch to a new screen (or sequence of screens), use
the CALL SCREEN <nnnn> statement. The screen <nnnn> must belong to the same program.
In the program, the system constructs a stack. The stack has to be destroyed before the end of the
program.
To return to the statement following the CALL SCREEN statement, you can use either SET SCREEN 0.
LEAVE SCREEN. or LEAVE TO SCREEN 0. The screen that called the other screen is then processed
further.
If you use the above statements outside a call chain, the program terminates, and control returns to the
point from which it was called. You can also terminate a program using the ABAP statement LEAVE
PROGRAM.
In the CALL SCREEN statement, you can use the STARTING AT and ENDING AT additions to specify
the position and size of the screen that you are calling. The screen in the CALL SCREEN statement
must be defined as a modal dialog box (to comply with SAP's ergonomic standards).
If you omit the ENDING AT statement, the size of the dialog box is determined by the Used size in its
screen attributes. The system then determines the dialog box size using the Occupied size screen
attribute.
If you use the ENDING AT addition, the system displays as much of the dialog box as will fit into the
available space. If there is not enough room to show the entire dialog box, it appears with scrollbars.
Hope this helps, Do reward.
What is set screen?difference between set screen &call screen
2008 Mar 19 5:09 AM
hi,
The SET SCREEN <nnnn> statement temporarily overwrites the Next screen attribute.
The screen <nnnn> must belong to the same program.
The next screen is processed either when the current screen processing ends, or when you terminate it
using the LEAVE SCREEN statement.
To specify the next screen and leave the current screen in a single step, use the
LEAVE TO SCREEN <nnnn> statement.
You can insert a screen sequence. This adds another layer to a stack.
You insert a screen sequence using the CALL SCREEN <nnnn> statement.
Note: Layers created in this way must be removed afterwards. You can do this by setting the next screen
statically or dynamically to the initial value (0) an the end of the inserted screen sequence.
To interrupt processing of the current screen and branch to a new screen (or sequence of screens), use
the CALL SCREEN <nnnn> statement. The screen <nnnn> must belong to the same program.
In the program, the system constructs a stack. The stack has to be destroyed before the end of the
program.
To return to the statement following the CALL SCREEN statement, you can use either SET SCREEN 0.
LEAVE SCREEN. or LEAVE TO SCREEN 0. The screen that called the other screen is then processed
further.
If you use the above statements outside a call chain, the program terminates, and control returns to the
point from which it was called. You can also terminate a program using the ABAP statement LEAVE
PROGRAM.
In the CALL SCREEN statement, you can use the STARTING AT and ENDING AT additions to specify
the position and size of the screen that you are calling. The screen in the CALL SCREEN statement
must be defined as a modal dialog box (to comply with SAP's ergonomic standards).
If you omit the ENDING AT statement, the size of the dialog box is determined by the Used size in its
screen attributes. The system then determines the dialog box size using the Occupied size screen
attribute.
If you use the ENDING AT addition, the system displays as much of the dialog box as will fit into the
available space. If there is not enough room to show the entire dialog box, it appears with scrollbars.
Hope this helps, Do reward.
2008 Mar 19 5:09 AM
Hi,
CALL SCREEN statement interrupts the current screen sequence and starts a new one. When you start a screen sequence with a transaction code, you can stack up to 50 other screen sequences on top of it. However, you should not exceed 40 sequences, since help and error dialogs also use internally-implemented screen sequences.
Every screen has a static next screen that specifies the next screen to be called after the current one, as long as it is not overwritten dynamically. In the processing logic, that is, a dialog module called by the screen, you can use the SET SCREENstatement to overwrite the statically-defined next screen dynamically:
SET SCREEN Folgedynpro.
This statement defines a new next screen for the current program run. You can also specify the number of the next screen as a field containing a screen number. The statically-defined next screen is ignored. However, this only overrides the static screen sequence temporarily. The static value for the next screen, as defined in the Screen Painter, is always retained.
The LEAVE SCREEN statement ends the current screen and calls the subsequent screen. The next screen is either the static next screen or a dynamic next screen. In the second case, you must override the static next screen using the SET SCREEN statement before the LEAVE SCREEN statement
Reward if useful..
2008 Mar 19 5:10 AM
Hi,
With SET SCREEN, the current screen simply specifies the next screen in the chain. control branches to this next screen as soon as the current screen has been processed. Return from next screen to current screen is not automatic. It does not interrupt processing of the current screen. If we want to branch to the next screen without finishing the current one, use LEAVE SCREEN.
With CALL SCREEN, the current (calling) chain is suspended, and a next screen (or screen chain) is called in. The called screen can then return to the suspended chain with the statement LEAVE SCREEN TO SCREEN 0. Sometimes we might want to let an user call a popup screen from the main application screen to let them enter secondary information. After they have completed their entries, the users should be able to close the popup and return directly to the place where they left off in the main screen. Here comes CALL SCREEN into picture.
R/points if useful...
Regards
AK
2008 Mar 19 5:11 AM
With SET SCREEN the current screen simply specifies the next screen in the chain , control branches to this next screen as sonn as th e current screen has been processed .Return from next screen to current screen is not automatic .It does not interrupt processing of the current screen.If we want to branch to the next screen without finishing the current one ,use LEAVE SCREEN.
- With CALL SCREEN , the current (calling) chain is suspended , and a next screen (screen chain) is called .The called can then return to the suspended chain with the statement LEAVE SCREEN TO SCREEN 0 .Sometime we might want to let an user call a pop up screen from the main application screen to let him enter secondary information.After they have completed their enteries, the users should be able to close the popup and return directly to the place where they left off in the main screen.Here comes CALL SCREEN into picture .This statement lets us insert such a sequence intp the current one.
Regards
Giridhar
2008 Mar 19 5:13 AM
Hi Praveena,
In the screen attriutes there is field for NEXT SCREEN.This means the next screen for thr current screen.
This SET SCREEN is used to dynamically set the NEXT SCREEN.
See this code
SET SCREEN 9000.
LEAVE SCREEN.
This means it will leave current screen and got SCREEN 9000.
If we directly call CALL SCREEN 9000, it will also got screen 9000, but will internally create a new session inside
Please reward if useful
Thanks Arjun
| User | Count |
|---|---|
| 3 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |