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: 

Assign subscreen to the tabstrip pushbutton

Former Member
0 Kudos

Hi,

I have made a tabstrip in the dialog program and there are 3 tabs in it. For that I have made 3 subscreens.I have done all the relevant coding in flowlogic of the main acreen like this:

PROCESS BEFORE OUTPUT.

MODULE status_5001.

CALL SUBSCREEN: SUB1 INCLUDING sy-cprog '0100',

SUB2 INCLUDING sy-cprog '0110',

SUB3 INCLUDING sy-cprog '0120'.

PROCESS AFTER INPUT.

CALL SUBSCREEN: SUB1,

SUB2,

SUB3.

MODULE USER_COMMAND_5001.

The module coding :

MODULE user_command_5001 INPUT.

IF sy-ucomm EQ 'SCREEN1'.

screen_no = 100.

tabstrip-activetab = 'SCREEN1'.

ENDIF.

IF sy-ucomm EQ 'SCREEN2'.

screen_no = 110.

tabstrip-activetab = 'SCREEN2'.

ENDIF.

IF sy-ucomm EQ 'SCREEN3'.

screen_no = 120.

tabstrip-activetab = 'SCREEN3'.

ENDIF.

ENDMODULE.

But still I am getting the error message "No suscreen is assigned to tabstrip pushbutton SCREEN1".When I am running the subscreens seperately they are working but when I am running the main screen I am getting the error message.

In the element list of the main screen I am able to see SCREEN1, SCREEN2, SCREEN3

4 REPLIES 4

Former Member
0 Kudos

HI,

Refer to the demo program

DEMO_DYNPRO_TABSTRIP_LOCAL

DEMO_DYNPRO_TABSTRIP_SERVER

Former Member
0 Kudos

Hi

Check the layout properties for the tabstrip.

Reference field and subscreen properties in the control elements part of the tab strip control

Former Member
0 Kudos

Hi Shashi

Try this

use sy-repid instead of sy-cprog.

PROCESS BEFORE OUTPUT.

MODULE status_5001.

CALL SUBSCREEN: SUB1 INCLUDING sy-repid '0100',

SUB2 INCLUDING sy-repid '0110',

SUB3 INCLUDING sy-repid '0120'.

Hope it will work

Regards

Natasha Garg

0 Kudos

Store the values of system variable in some program variable and check the name of the subscreen area which u have used in the screen painter