2007 May 02 10:37 AM
what is the difference between set screen and call screen.plz give me relavent answer in short.
Hi Pinky,
<u>Call Screen <2000></u> : It will call the given screen.when this statement is executed.scr no is stored into memory and control goes to that screen and then again came back to the next statement aftet this.
<u>set screen <2000>.
leave screen. </u> : these both statements work together.set screen will store the scr no into memory and leave screen took the conrol to respective screen.and control doesn't come back to the next statement after it.we have to forcefully took the control to the initial screen by giving below command.
<u>leave to screen <1000>.</u>
Rewards points if helpful.
Regards,
Hemant
2007 May 02 10:40 AM
Hi..,
When u use<b> call screen</b> .. the control comes back to the statement after this call screen statement after processing the called screen..
But when u use SET <b>SCREEN and Leave to screen.</b>. then it wont come back after processing the called screen.
Hope u understood !!
Plz do remember to close the thread, when your problem is solved !!
reward all helpful answers !!
regards,
sai ramesh
2007 May 02 10:40 AM
hi,
SET SCREEN <next screen no>.
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.After the screen has been processed, control returns to the point from which the screen sequence was called.
To leave a screen, use the ABAP statement LEAVE .
LEAVE SCREEN.
or
LEAVE TO SCREEN <next screen>.
CALL SCREEN <screen no>.
You can start a screen sequence from an ABAP program At the end of the screen sequence (next screen 0), the program continues processing directly after the CALL SCREEN statement. If you use the CALL SCREEN statement within a screen sequence that is already running, the new screen sequence is inserted into the current sequence.
This works as a kind of stack, since the 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.
reward if helpful
ravi
2007 May 02 10:45 AM
hi,
<b>call screen</b> calls the given screen instantly irrespective of how many screens u come across.
<b>set screen</b> 0 used to go back to the previous screen
rewards iof useful
regards,
nazeer
2007 May 02 10:49 AM
Hi
<b>Call screen</b> :
When u use call screen .. the control comes back to the statement after processing the called screen..
<b>SET SCREEN</b> : Set screen is used to forcefully set the next screen.
Regards,
Sreeram
2007 May 02 10:50 AM
Hi,
1) Call Screen: Calling a single screen can be used for embedding a screen sequence. If you want to prevent the called screen from covering the current screen completely (say u want 2 display both screen) you can use the CALL SCREEN statement with the STARTING AT and ENDING AT
CALL SCREEN 200
If we write this statement in screen 100 ,it will goto screen 200 and it will retain screen 100(ie u can come back)
and moreover u have options using this
CALL SCREEN 200 STARTING AT x1 y1 ENDING AT x2 y2
2) If we use set screen first the processing blocks in the present screen will be executed and control goes to the screen which is called.
in this control remains in that calling screen only, it doesnt come back to our screen.
3)In screen 100,we call screen 200.The PBO and PAI of screen 200 is processed.Now in screen 200,if we use leave to screen 100,the processing starts from screen 100 after the call screen 200 statement.The PBO and the PAI of screen 100 need not be processed again from the beginning in this case.
4) That is if we use leave to screen,the control goes back to the screen from which the present screen was called and continues with the processing.
SET SCREEN 200
1) With the above statement , it will goto screen 200 and screen 100 no more remains
2) Screen No 0 : This special screen number causes the screen to jump back to the calling screen.
set screen 0 used to go back to the previous screen.
Do reward if found useful.
Regards,
Varun.
2007 May 03 6:40 AM
Hi,
Call screen :-
syntex are-
CALL SCREEN dynnr
[STARTING AT col1 lin1
[ENDING AT col2 lin2]].
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.
When u use call screen .. the control comes back to the statement after processing the called screen..
SET SCREEN : Set screen is used to forcefully set the next screen.
Syntax
SET SCREEN dynnr.
This statement sets thescreen with the screen number specified in dynnr, as the next screen for processing of the current screen.
do reward if usefull
regards,
vijay
2007 May 03 6:49 AM
Hi Pinky,
<u>Call Screen <2000></u> : It will call the given screen.when this statement is executed.scr no is stored into memory and control goes to that screen and then again came back to the next statement aftet this.
<u>set screen <2000>.
leave screen. </u> : these both statements work together.set screen will store the scr no into memory and leave screen took the conrol to respective screen.and control doesn't come back to the next statement after it.we have to forcefully took the control to the initial screen by giving below command.
<u>leave to screen <1000>.</u>
Rewards points if helpful.
Regards,
Hemant
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |