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: 

what is difference between SET SCREEN and CALL SCREEN?

Former Member
0 Kudos

what is difference between SET SCREEN and CALL SCREEN?

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hello,

SET SCREEN

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.

CALL SCREEN

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.

Regards.

3 REPLIES 3

Former Member
0 Kudos

Hi,

CALL SCREEN and SET SCREEN

The difference lies in the NEXT Statement...

When Call Screen, the new screen comes, and after that new screen is exited, the control COMES BACK TO THE ORIGNAL SCREEN.

Whereas in SET SCREEN,

The PAI is FIRST COMPLETED, and then, independetly,

the another screen comes, and proceeds further independently.

see this therd

https://forums.sdn.sap.com/click.jspa?searchID=12321512&messageID=5068564];

Regards

Kiran Sure

Former Member
0 Kudos

Hello,

SET SCREEN

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.

CALL SCREEN

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.

Regards.

Former Member
0 Kudos

SET SCREEN: Sets the number of the next screen.

CALL SCREEN scr: Calls the screen scr; scr is the number of a screen of the main program. You use SET SCREEN 0. or LEAVE SCREEN. to define the return from the CALL screen.

Call screen has additional options like 'STARTING AT x1 y1 ENDING AT x2 y2 ' so as to specify the co-ordinates.

Please rewars useful replies.