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

Tabstrip control hidden

Former Member
0 Likes
303

Hi ,

I am facing a very peculiar problem.

In my application I have to dynamically load tabs. For that I am looping into the screen and setting the SCREEN-ACTIVE = 'X' or ' ' when the SCREEN-NAME is tabname. Now I have a menu option Load dataset on press of which one more tab appears. If the order of that tab is after the currently loaded tab, then its working fine but if the new tab should come before the already loaded tab then it is hidden behind the already loaded tab.

eg. Suppose we have 2 tabs TAB1 and TAB2 such that TAB1 should come before TAB2. Currently TAB2 is loaded. If we select a menu option so that TAB1 is now loaded then it is hidden behind TAB2. Setting the active tab to TAB1 is also not solving the problem.

Please suggest some solutions for this problem .

Best Regards,

Saurabh

<removed_by_moderator>

Sample implementation -

  • Here I have 3 screen 100(main screen), 200 ( tab subscreen) and 300(tab subscreen)

REPORT zfilter.

DATA : flag.

DATA : dynnr TYPE sy-dynnr.

CONTROLS tabst TYPE TABSTRIP.

CALL SCREEN 100.

&----


*& Module USER_COMMAND_0100 INPUT

&----


  • text

----


MODULE user_command_0100 INPUT.

IF sy-ucomm = 'TT3'.

flag = 'X'.

ENDIF.

IF sy-ucomm = 'LVE'.

LEAVE PROGRAM.

ENDIF.

ENDMODULE. " USER_COMMAND_0100 INPUT

&----


*& Module STATUS_0100 OUTPUT

&----


  • text

----


MODULE status_0100 OUTPUT.

SET PF-STATUS 'ZSTAT'.

LOOP AT SCREEN.

IF screen-name = 'TT1' AND flag IS INITIAL.

screen-active = 0.

MODIFY SCREEN.

ENDIF.

IF screen-name = 'TT1' AND flag IS NOT INITIAL.

screen-active = 1.

tabst-activetab = 'T1'.

dynnr = '0200'.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

IF sy-ucomm IS INITIAL.

tabst-activetab = 'TT2'.

dynnr = '0200'.

ELSEIF sy-ucomm EQ 'T1'.

tabst-activetab = 'T1'.

dynnr = '0200'.

ELSEIF sy-ucomm EQ 'T2' .

tabst-activetab = 'T2'.

dynnr = '0300'.

ENDIF.

ENDMODULE. " STATUS_0100 OUTPUT

Edited by: Julius Bussche on Jun 23, 2008 8:44 PM

1 REPLY 1
Read only

Former Member
0 Likes
276

LEAVE TO SCREEN ?