on 09-27-2007 10:19 AM
hi fans,
I am resuming my monsterthread "dynamically change embedded interface view in window" here now and still have problems.
the problem is that I want to embedd an interface_view V_L from cid_L in the Mainwindow W_MAIN in a component M.
the cid_L-implementating component (e. g. L1 or L2) which delivers the in the cid_L determined interfaceview V_L which is embedded in Mainwindow W_MAIN is changing at runtime.
so my plan was:
1. creating outboundplugs in M to e. g. L1 and L2 dynamically via:
l_view_controller_api->PREPARE_DYNAMIC_NAVIGATION(
source_window_name = 'W_MAIN'
source_vusage_name = 'V_L_USAGE_1'
source_plug_name = OB_PLUG_NAME
target_component_name = used_component_name_l
target_component_usage = 'COMPONENT_USAGE_CID_L'
target_view_name = 'V_L'
target_plug_name = 'FROM_V_AUSWAHL'
target_embedding_position = '' ).
I leave the target_embedding_position empty because V_L is embedded directly in W_MAIN (without a viewcontainer).
2. fire this ob-plug via
l_view_controller_api->fire_plug(
exporting
plug_name = OB_PLUG_NAME
).
the target_plug_name (ib-plug) 'FROM_V_AUSWAHL' is determined in CID_L and is so also existing in L1 and L2 (Lx...).
so I create dynamical ob-plugs in M (store it in a hashtable) to one existing inboundplug
in Lx.
but it didn´t work:
the result is that when I start the application I get the error that the ob-plug OB_Z_CID_L2 (= OB_PLUG_NAME in prepared...method) is not existing in view V_AUSWAHL (view of M) of the component Z_CID_MAIN_TEST_UIDYNAMIC (= M).
what can I do?
EDIT: I didn´t create any ob-plug in M at designtime. perhabs this is helpful.
Message was edited by:
Thorsten Winter
Hi ,
Check the Source view name passed to the method.
Regards,
Nirupamaa.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
thanks Nirupamaa for your answer.
But I think the Source view name (= SOURCE_VUSAGE_NAME) is correct because I looked in the tree at window-perspective and at runtime the PREPARE_DYNAMIC_NAVIGATION method is executed and if the parameters are wrong in my opinion I will get errors.
But the PREPARE_DYNAMIC_NAVIGATION method is executed (I think the ob-plug is created and the parameters are all accepted) and the plug "OB_PLUG_NAME" is fired and then I get the error.
is it really possible to create navigation links and the outboundplugs (parameter source_plug_name) at runtime (both in the PREPARE_DYNAMIC_NAVIGATION- or DO_DYNAMIC_NAVIGATION-method)?
or do I have to create the outboundplug in parameter source_plug_name at designtime and the navigation link at runtime?
EDIT:
is it perhabs necessary to make the navigation link first and then create the component which is concerned by this navigation link? or makes it no difference if I created the component before the navi link?
Message was edited by:
Thorsten Winter
no one an idea?
EDIT: I made a simple test scenario now and made a component M which has in its main_window a view with a viewcontainer and 2 buttons. the viewcontainer embedds an interface view V_L from cid L. 1 button for showing L1 and one for showing L2 in the view of M.
cid L has two implementating variants L1 and L2.
this scenario works (creating ob-plugs in M and navigation links to the default-ib-plug in L dynamically) and I try to do this with my more complex scenario and this doesn´t work.
the difference concerning to my more complex scenario is that in my test scenario I only embedd one view (of L1 or L2) and not a complexer view which which embedds other views itself.
what can I do?
Message was edited by:
Thorsten Winter
User | Count |
---|---|
85 | |
10 | |
10 | |
10 | |
7 | |
6 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.