Application Development and Automation 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: 
Read only

Set Screen

Former Member
0 Likes
343

Hi Friends,

I just want to know the differnce between these two

a) Set screen 9003.

leave screen.

b) Call screen 9003.

Both of the above 2 scenarios calls the screen 9003 then what is exact difference between these two?.

Regards,

Dinesh

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
314

HI Dinesh,

Read the difference

<b>What is the difference between SET SCREEN and CALL SCREEN ?</b>

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. This statement lets us insert such a sequence into the current one.

<b>What is a “call mode” ?</b>

In the ABAP/4 world, each stackable sequence of screens is a "call mode". This is important because of the way you return from a given current sequence. To terminate a call mode and return to a suspended chain, set the "next screen" to 0 and leave to it:

LEAVE TO SCREEN 0 or ( SET SCREEN 0 and LEAVE SCREEN ). When you 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 is itself is a

calling mode. If you LEAVE TO SCREEN 0 in this sequence ( that is, without having stacked any additional call modes ), you return from the transaction altogether.

Reward points if this Helps.

Manish

1 REPLY 1
Read only

Former Member
0 Likes
315

HI Dinesh,

Read the difference

<b>What is the difference between SET SCREEN and CALL SCREEN ?</b>

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. This statement lets us insert such a sequence into the current one.

<b>What is a “call mode” ?</b>

In the ABAP/4 world, each stackable sequence of screens is a "call mode". This is important because of the way you return from a given current sequence. To terminate a call mode and return to a suspended chain, set the "next screen" to 0 and leave to it:

LEAVE TO SCREEN 0 or ( SET SCREEN 0 and LEAVE SCREEN ). When you 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 is itself is a

calling mode. If you LEAVE TO SCREEN 0 in this sequence ( that is, without having stacked any additional call modes ), you return from the transaction altogether.

Reward points if this Helps.

Manish