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

hi

Former Member
0 Likes
711

hi all,

what is diff between in call screen and set screen?

Regards,

s.suresh

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
692

Hi,

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

http://help.sap.com/saphelp_nw04/helpdata/en/9f/dbab0235c111d1829f0000e829fbfe/content.htm

Regards,

Priyanka.

7 REPLIES 7
Read only

Former Member
0 Likes
693

Hi,

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

http://help.sap.com/saphelp_nw04/helpdata/en/9f/dbab0235c111d1829f0000e829fbfe/content.htm

Regards,

Priyanka.

Read only

Former Member
0 Likes
692

Hi,

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.

Check this link...

http://help.sap.com/saphelp_nw04/helpdata/en/9f/dbab0235c111d1829f0000e829fbfe/content.htm

Regards,

Sankar

Read only

varma_narayana
Active Contributor
0 Likes
692

Hi Suresh..

SET SCREEN 20.

this statement will overwrite the Next screen Attribute dynamically. that means now the next Screen becomes 20. but the Control is not transferred immediately.

CALL SCREEN 20.

this Statement interrupts the processing of Current screen and Calls the Screen 20.

in this case We can use the Statement LEAVE TO SCREEN 0. to resume the processing of Calling Screen....

<b>Reward if Helpful</b>

Read only

Former Member
0 Likes
692

hi,

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

SET SCREEN 200

with the above statement , it will goto screen 200 and screen 100 no more remains

And no additional options for this

LEAVE SCREEN

Leaves the current screen and processes the next screen.

LEAVE TO SCREEN 200

it leaves the current screen and processes screen 200

Please search in the forums, you will get more answers..No need to wait for the reply

rewards if useful,

regards,

nazeer

Read only

Former Member
0 Likes
692

Hi

<u><b>SET SCREEN dynnr.</b></u>

This statement sets thescreen with the screen number specified in dynnr, as the next screen for processing of the current screen. For dynnr, a data object of type n and length 4 is expected. It must contain either the screen number of a screen in the main program of the current program group or the value 0, otherwise a non-catchable exception will be triggered. The specified next screen overwrites the previously-set next screen.

The next screen is automatically called when the system finishes the PAI processing of the current screen. If the screen number of the next screen is 0, the current next screen is ended.

One next screen is always set during the processing of a screen. After you call a screen, the next screen whose characteristics are defined statically, applies; this next screen can be overwritten with the SET SCREEN statement for the duration of the actual next screen processing.

<u><b>CALL SCREEN dynnr

[STARTING AT col1 lin1

[ENDING AT col2 lin2]].</b></u>

This statement calls the dynpro with the dynpro number specified in dynnr. For dynnr, a data object of type n and length 4 is expected. The call starts a new dynpro sequence, which is embedded into the current dynpro sequence. The dynpro with dynpro number dynnr is the initial dynpro of the dynpro sequence. In a dynpro sequence started by a transaction code, you can nest up to 50 other dynpro sequences.

The called dynpro sequence is terminated as soon as one of the involved dynpros branches to a next dynpro with number 0. The program continues after CALL SCREEN.

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.

By default, the screens of all dynpros of the called dynpro sequence are displayed in the current window. Use addition STARTING AT to open a modal dialog window.

reward if usefull

Read only

Former Member
0 Likes
692

hi

good

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

SET SCREEN 200

with the above statement , it will goto screen 200 and screen 100 no more remains

And no additional options for this

LEAVE SCREEN

Leaves the current screen and processes the next screen.

LEAVE TO SCREEN 200

it leaves the current screen and processes screen 200

thanks

mrutyun^

Read only

Former Member
0 Likes
692

The SET SCREEN 1000 statement temporarily overwrites the Next screen attribute.

To interrupt processing of the current screen and branch to a new screen (or sequence of screens), use the CALL SCREEN 1000 statement