cancel
Showing results for 
Search instead for 
Did you mean: 

How to "close" a view

Former Member
0 Kudos

Dear all,

in my application, when I call a view for the first time WDDOMODIFYVIEW gets executed with FIRST_TIME = 'X'.

the second time I call the view even when I already left it to another one in the meanwhile, FIRST_TIME is not X anymore. How can I really "close" a view completly?

The problem is that this view has three inbound plugs, one for creation, one for maintenance and one for display.

In display mode I want to set "READ_ONLY = X" for all my elements. I have a lot of DropDownByIndex elemtents and need to set the leadselection to the values which are assigned to my data record. I wanted to do this in WDDOMODIFYVIEW because during execution of the inbound plug by contextsnodes are not yet updated.

But anyhow: how can I simple free all stuff that is bound to a loaded view when I leave it? I think this is also a question of memory consumption.

Thanks,

Hendrik

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Found the answer myself: set the life time within WDOINIT

data: l_view_api type ref to IF_WD_VIEW_CONTROLLER.

data:

l_api type ref to if_wd_view_controller,

l_view_info type ref to if_wd_rr_view.

l_view_api = wd_this->wd_get_api( ).

l_view_info = l_view_api->get_view_info( ).

l_view_info->SET_LIFESPAN( exporting LIFESPAN = IF_WD_RR_VIEW=>CO_LIFESPAN_WHEN_VISIBLE ).