Skip to Content
author's profile photo
Former Member

dynamically created navigation links

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

Add comment
10|10000 characters needed characters exceeded

  • Follow
  • Get RSS Feed

1 Answer

  • author's profile photo
    Former Member
    Posted on Sep 27, 2007 at 10:11 AM

    Hi ,

    Check the Source view name passed to the method.

    Regards,

    Nirupamaa.

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member Former Member

      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