cancel
Showing results for 
Search instead for 
Did you mean: 

WD DC usage - problem

Former Member
0 Kudos

Hello,

I followed the following thread:

I have 2 WD DC's DCA and DCB, I want to use the model and the DC of DCA in DCB.

"3. At "Used Models" of the component which shall reference the exposed model of DCA, select "Add" and the model."

I cannot see / select the model which was exposed. I did not get any errors or warning while building the Development Component. I also cannot add the used component. I do see the reference of the component and the model in DCB.

Any ideas???

Many thanks,

Dharmi

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi Dharmi,

Please check the public part of DCA oncegaian.

1. Try to create a seperate public part and makesure to include the component as well as your Model into the public part.

2. Add the above public part in DCB.

3. Refresh DC settings of the DCB.

Regards, Anilkumar

Former Member
0 Kudos

Dear Anil and Nibu,

Thanks much for the quick reply. Your answers were very helpful. I actually came to mark it as solved. What i did was deleted the DCB and then in its used DC's tried to add the seperate public parts (as Anil suggested) and it worked.

But I have however one more question that is in the DCA I have the ViewSet with 2 rows (having view X and view y)and the 1st row (view X)is common to DCB and in the 2nd row (view Z)is unique. Any ideas on how to do that.

Regards,

Dharmi

Former Member
0 Kudos

Hi Dharmi,

So DCA has a viewset with two views - View1 which belongs to DCB and shared with DCA and View2 of it's own.

After you have successfully added DC B's Usage to to DC A, you can embed the interface view into any view container. So create a Grid layout viewset with two rows. On the first cell, right click and select 'Embed View' -> 'Embed Interface view of a component Instance'. then from the tree structure you will be able to select the Interface view.

In the second cell, embed a view of DC A and proceed.

Hope this helps,

Best regards,

Nibu.

Former Member
0 Kudos

Hello Nibu,

Thank you for your reply.

The scenario is

<u><i><b>DCA</b></i></u> (The DC which is going to get used in DCB) has 3 Windows:

<u>Window A</u> - Has viewset with 2 rows - First row has <b>view X</b> and the second row has <b>view Y</b>

<u>Window B</u> - <b>view M</b><u>Window C</u> - view N

<u><i><b>DCB</b></i></u> (The DC which makes use of DCA's Component and the model) has 1 window:

<u>Window P</u> - Has viewset with 2 rows - First row <i>should contain</i> <b>View X</b> (which is the view of DCA in the window X) and the second row has View Z.

So if you see Views Y, Z ,N are not going to be used but View X and View M are the usable ones.

When I say embed interface view of a component Instance I am able to select the Interface view but then <i>would not my viewset of Window P have in it's first row View X and View Y (from the DCA) and in the second row View Z???</i> I hope you understand what I am trying to explain.

Finally, I would like to call the view M (with window M) from the click of the button so I am also trying to get to that. Any ideas for this one is also appreciated.

Regards,

Dharmi

Former Member
0 Kudos

Hi Dharmi,

There are many things you can do...of cource <i>which are out of the normal and beat the purpose</i> of a DC based design.

Something I haven't tried, but I think may work...<b>experts please validate this</b>.

The Interface controller is the first to get initiated of your DCA when an instance of this is created in DCB.

Keep the lifecycle of DCA to manual.

What you can do is map a context attribute of DCA's interface controller to DCB.

Also, map this attribute to view X.

<b>After</b> you create the instance (wdThis.wdGet<DCA>Usage().createComponent();), set this attribute to some value from DCB.

When the view X of DCA is first called, in the init, you can fire a plug to an empty view or to view Y, according to the value set in this context attribute (in this case, set the attribute so that the view X triggers a plug to an empty view instead of view Y).

All this again is assuming that you can make chnages to the DCA (which ideally should not be the case and the practice in a DC based design).

Regards,

Nirav

Message was edited by: Nirav Mehta

Former Member
0 Kudos

Hi Dharmi,

Under your component controller of DCB, you need to add the component of DCA under 'Used webDynpro Components'. You will be able to browse & add the component.

Hope this helps,

Best Regards,

Nibu.