Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Difference "Call Screen", "Set Screen", "Leave Screen" & "Leave to Screen".

Former Member

Hi All,

Please help me know the difference between "Call Screen", "Set Screen", "Leave Screen" & "Leave to Screen" in Dialog Programming. Is there any performance related difference between all these events?

Thanks in Advance.

Sreedhar.

1 ACCEPTED SOLUTION

Former Member

Hi Sreedhar,

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.

If we use SET SCREEN without LEAVE SCREEN, the program finishes processing for the current screen before branching to <scr no>. If we use LEAVE SCREEN without a SET SCREEN before it, the current screen process will be terminated and branch directly to the screen specified as the default next-screen in the screen attributes.

-

LEAVE TO SCREEN 0 or (SET SCREEN 0 and LEAVE SCREEN) .When u return to the suspended chain execution resumes with the statement directly following the original CALL SCREEN statement.The original sequence of screens in a transaction (that is , without having stacked any additional call modes),you returned from the transaction altogether.

LEAVE TO SCREEN 0 or (SET SCREEN 0 and LEAVE SCREEN) .When u return to the suspended chain execution resumes with the statement directly following the original CALL SCREEN statement.The original sequence of screens in a transaction (that is , without having stacked any additional call modes),you returned from the transaction altogether

Regards,

Narasimha

7 REPLIES 7

Former Member
0 Kudos

HI,

0 Kudos

Hi Jeevitha,

Please if you don't mind may I know the difference as your message shows only HI and nothing else. May be you tried to send a link but unfortunately I didn't receive it.

Regards,

Sreedhar

0 Kudos

HI,

The SET SCREEN and LEAVE SCREEN statements controls screen flow.

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 into the current one.

If we use SET SCREEN without LEAVE SCREEN, the program finishes processing for the current screen before branching to <scr no>. If we use LEAVE SCREEN without a SET SCREEN before it, the current screen process will be terminated and branch directly to the screen specified as the default next-screen in the screen attributes.

These are different purposes of above commands.

Performance wise useful when you don't want to process current screen skip to next that time you can use leave to screen <scr.no.>

Former Member
0 Kudos

Hi Shreedhar,

http://sap.ittoolbox.com/groups/technical-functional/sap-dev/difference-between-setleave-and-call-sc...

Reward if helpful,

Regards,

Esha Raj

Edited by: Esha Raj on May 6, 2008 6:32 AM

Former Member

Hi Sreedhar,

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.

If we use SET SCREEN without LEAVE SCREEN, the program finishes processing for the current screen before branching to <scr no>. If we use LEAVE SCREEN without a SET SCREEN before it, the current screen process will be terminated and branch directly to the screen specified as the default next-screen in the screen attributes.

-

LEAVE TO SCREEN 0 or (SET SCREEN 0 and LEAVE SCREEN) .When u return to the suspended chain execution resumes with the statement directly following the original CALL SCREEN statement.The original sequence of screens in a transaction (that is , without having stacked any additional call modes),you returned from the transaction altogether.

LEAVE TO SCREEN 0 or (SET SCREEN 0 and LEAVE SCREEN) .When u return to the suspended chain execution resumes with the statement directly following the original CALL SCREEN statement.The original sequence of screens in a transaction (that is , without having stacked any additional call modes),you returned from the transaction altogether

Regards,

Narasimha

Former Member

Hi

difference between call Screen and Set Screen

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.

difference between Call Screen and Leave Screen

Call Screen: Calling a single screen is a special case of embedding a screen sequence. If you want to prevent the called screen from covering the current screen completely, you can use the CALL SCREEN statement with the STARTING AT and ENDING AT

CALL SCREEN 1000.

CALL SCREEN 1000 STARTING AT 10 10 ENDING AT 20 20.

LEAVE SCREEN statement ends the current screen and calls the subsequent screen.

LEAVE SCREEN.

LEAVE TO SCREEN 2000.

thnx

sravani

Plz reward if helpful..

Edited by: sravani batchu on May 6, 2008 6:43 AM

0 Kudos

Hi,

Call Screen: It calls the new screen. If the user clicks on back button then it come back to pervious screen. Here it will interpret the current screen and execute called screen then again come back and continues execution.

Set screen: It calls the new screen. If the user clicks on back button in the new screen, then it never come back to previous screen. Here if set screen is there then first current screen will be executed and it will go to set screen.

Leave screen:leave screen means leave to program or leave to previous screen.

regards,

Nasreen