cancel
Showing results for 
Search instead for 
Did you mean: 

Webdynpro application with multiple DCs

Former Member
0 Kudos

Hi,

I have an application where it is splitted in to multiple DCs for the team development. Now at runtime there are navigation happenening across DCs, means on click of a button in view1 of DC1, it needs to call view2 of DC2. What is the best way to achive it? Is there a way to direcly call a DC component at runtime?

Any help?

regards,

Sujesh

Accepted Solutions (1)

Accepted Solutions (1)

BeGanz
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hallo Sujesh,

I wrote an <a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/sdn/downloaditem?rid=/library/uuid/751d003a-0b01-0010-8996-afbaa3fd5339">sdn article on 'Cross-Component Navigation'</a>. This article should answer your question.

Regards, Bertram

Former Member
0 Kudos

Thanks Bertram. I have been going though the pdf since morning. It, as far as i understand, talks about inter component navigation. My requirement is Inter DC calls which also involves inter component calls. How can multiple DCs can communicate each other? whats the best design for it?

regards,

Sujesh

BeGanz
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Sujesh,

First I want to point out, that DCs do not communicate with each other. DCs are designtime constructs which comprise development entities with runtime and/or designtime relevance. Inter-DC calls are Inter-DC-object calls.

Is your question related with the problem how to communicate between Web Dynpro components of separate DCs? To answer this question you must know how to develop Web Dynpro applications based on using separate DCs. This is done by defining DC-usage relations based on Public Part Definitons. When these DC-relations are correctly set up you can use Web Dynpro entities from other child DCs in a parent DC as if these entites would be contained in the parent DC. The runtime dependencies (sharing references etc.) are defined automatically.

Regarding your "Best Design" question I reply with a simple but quite effective principle: <b>"Favor DC-separation of Web Dynpro development entities!":</b>

- Separate Web Dynpro components in separate DCs

- Separate Web Dynpro Models in separate DCs

- Separate Local Dictionaries in separate DCs

- Separate Web Dynpro Component Interface Definitions in separate DCs

- Seaprate reusable Web Dynpro components in seaprate DCs.

Best regards, Bertram

P.S.: Look at my corresponding tutorial dealing with multi-component application design: https://www.sdn.sap.com/irj/sdn/downloaditem?rid=/library/uuid/bd0e0401-0801-0010-aaab-d0e1742da383

Former Member
0 Kudos

Thanks Bertram.

My web dynpro application will be constituted by multiple DCs. on click of a button in view1 of DC1, view2 of DC2 needs to be opened up. So i guess we need to carryout this using public part and used DCs. Can you please let me know the steps to be done during design time for inter DC communication.

Also is there any other way, during runtime to call a particular view of a DC from another DC.

your suggestions?

regards,

Sujesh

BeGanz
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Sujesh,

sorry me, but I do not get the picture. What do you really need to know. I sent you the links to in-depth learing material on Web Dynpro componentization.

Again, you do not call a view from DC 1 in another view from

DC 2. As soon as views are located in separate DCs you must traverse Web Dynpro component borders.

"Call a particular view of DC A from DC B" should better be written as "Navigate/Display a view SomeView, which is located in Web Dynpro Component A (contained in Web Dynpro Development Component A) inside another Web Dynpro Component B (contained in Web Dynpro Development Component B)". The "Cross-Component Navigation" tutorial deals with component navigation, the other material in combination with the SAP Online help describes how to develop WD applications using Web Dynpro DCs (Public Parts, DC Usages ...).

Why do you ask for "other ways", what are you looking for when there is a practical solution. Could you please give some reasons why this given solution does not fulfill your requirements.

Regards, Bertram

Former Member
0 Kudos

Thanks Bertram.

I understand the concept of public parts and used DCs.

Let me detail my requirements.

I have need to develop a web dynpro application. We are about 5-6 people working in it and we are using NWDI. We have seggregated our application into multiple DCs for parellel development. Now all these DCs are to be integrated together which means each view of each of these DCs have multiple buttons, on click of which view of another DC needs to open up. Also we will need to send some parameters from 1 view of a DC to another view of another DC.

I think that this can be achieved only by using public parts and used DCs funda. But as every view has link to another view of another DC, designing the interdependencies is complex(using public part/used DCS, DC1 used by DC2 and DC2 used by DC3 and so on)

Do you have any suggestions to achive this?

I was trying to figureout if there is any other way out so that designing would be less complex. Any suggestions?

thanks a lot in advance,

Sujesh

Former Member
0 Kudos

Hey Bertram,

If you can please suggest me some solution for the following problem:

I created two SCs and (SC1) consists of 3 DCs:

1) External library

2) J2EE server library component

3) Web Module DC

The first one is for all the external libraries,the second one includes all the libraries from the first one as DC of type ext. library is not deployable and the third DC of type Web MOdule is to hold all the class files during run time.

Now in my (SC2), i need to include some of this DCs, in the USed DC, but i cannot, it does not allows me to do so.I mean it does not allows me to expand the node of (SC1).

Any kind of help will be highly appreciated.

Thank You,

With Regards,

Krunal Rana.

Ivan-Mirisola
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Sujesh KC,

I have the same design paradigm here. I modeled my SC into multiple DCs for parallel development. Component DCMaster embeds the public parts of components DC1 and DC2. Therefore you are able to call one View2 of DC2 from View1 of DC1. This is explained perfectly inside the "How to Navigate Inside Web Dynpro Component Interface Views.pdf" This is explained in detail on the first example of this document on page 3.

The other thing you are trying to do is to send some information from one DC to another one. You might be interested in looking into the Componentization Example (n# 38) found on SDN. It explains how you can map contexts from the public part of a DC1 into a MasterDC and back to a DC2.

I would approach your particular problem with context mapping between DC's and firing the corresponding plugs of each window you want to choose.

If, you want to fire a plug from a particular View in DC2 from within DC1, you need to follow though the howto document "How to Navigate Inside Web Dynpro Component Interface Views.pdf". If explains why you will need an inner outbound plug and how you can achieve this with the current NW04 and NW04s. Currently there is no simple solution to it. Next releases will provide a thing called Window Plug. Meanwhile, you MUST use the PDF HowTo to perform this type of action.

I found Bertram's answer much better than mine. I also do not understand what problem you are really facing here. If you think the DC's design paradigm is too complex do define, I do not know how this can be better achieved. Can you tell me what more did you expect from WebDynpro DC development?

Kind regards,

Ivan

Answers (0)