‎2012 Jan 18 9:06 AM
Hi,
I am having 1 main screen in which there are 4 buttons on application toolbar.
On 1st button i have table control and on other 3 there are ALV.
on execution repoort display table control and if i click on 4th button alv is displayed
after displaying of alv if i click on any other button it is displaying same alv and not refreshing subscreen.
Please suggest ?
Ankesh
‎2012 Jan 18 9:11 AM
In the ALV have you used the USER_COMMAND. Just put a debuger after pressing the button and see where control goes. If it gies to standard then please pass user_command parameter in your alv. The control will come here if you press this button and proceed as you want.
Nabheet
‎2012 Jan 18 9:22 AM
Hi,
Please call the method 'REFRESH_TABLE_DISPLAY' of class CL_CUI_ALV_GRID when the butto is pressed and then display the new list.
Regards
Haritha
‎2012 Jan 18 9:42 AM
These are not working , i have tried it .
Actually i have taken docking container , the error is coming because of this.
do u have any idea how i will refresh docking container and where
‎2012 Jan 18 9:46 AM
why dont you define a subscreen area and keep calling different subscreens on different fcodes?
‎2012 Jan 18 9:52 AM
I am doing the same but it is appending screen area inspite of refreshing the earlier screen.
it is due to docking contaner which i have used.
‎2012 Jan 18 9:55 AM
Hi,
Can you please explain in detail what is happening.. Like you have a tabstrip or single subscreen used for multiple purposes and all
Nabheet
‎2012 Jan 18 10:30 AM
you need to destroy the previous ALV instance before displaying other ALV using FREE method of class CL_GUI_ALV_GRID and also free the object reference of ALV using FREE statement.
let say ALV object reference name is lo_alv
so on click of each button first check if lo_alv is bound.
if yes then first call destructor lo_alv->free( ).
and then free the object reference FREE lo_ALV.
then go ahead and instantiate another ALV.
Edited by: Gaurav B. on Jan 18, 2012 4:35 PM