cancel
Showing results for 
Search instead for 
Did you mean: 

Navigating between applications

former_member187658
Participant
0 Kudos

Hi,

I have an application in the detailed navigation. It has radio button, input field, a button and a link to action. There are two scenarios:

1. On click of link to action, another application should open up in the portal content area:

For this, i tried using WDPortalNavigation.navigateAbsolute(). But it opens the application in new window. I also set th eproperty of the iview so that it opens in portal content area, but still it is opening up in a new window.

2. The second scenario is:

On selection of a radio button and putting data in input field, i click a button which should open another application in the portal content area. i need to take both these values to the second application based on which the data will be displayed on the screen.

I went through docs about fire and subscribe method, but i am a bit confused. Has anyone worked on this?

Any help will be valuable.

Both of these applications are in same DC, each having different components.

Thanks & regards,

Anupreet

Accepted Solutions (0)

Answers (1)

Answers (1)

sridhar_k2
Active Contributor
0 Kudos

1)

Calling iview from WD iview (External / Internal)

http://help.sap.com/saphelp_erp2004/helpdata/en/b5/424f9c88970f48ba918ad68af9a656/frameset.htm

2)

Sending URL Params

http://help.sap.com/saphelp_nw70/helpdata/en/44/be65751c743959e10000000a1553f6/frameset.htm

Sending parameters, this code is working for me.

WDPortalNavigation.navigateAbsolute(

"ROLES://portal_content/com.test/ViewConfirmation",

WDPortalNavigationMode.SHOW_EXTERNAL,

(String) null,

(String) null,

WDPortalNavigationHistoryMode.NO_DUPLICATIONS,

(String) null,

(String) null,

"P_BNKLND="+BankCountry"&P_XSIMUL= ");

In your application parameters (iview), use this 'P_BNKLND=XX(val)&P_XSIMUL='

'P_BNKLND - is static value and

P_XSIM - is your Radio Button values, which you want to send it to the other application.

Hope it is working for you.

Regards,

Sridhar

Message was edited by:

Sridhar k

former_member187658
Participant
0 Kudos

Hi Sridhar

I tried the navigationAbsolute for the first point (where i need not pass any values, just have to click on a link to open the application). But it is not opening. On click of the link, it shows me a blank screen in the content area. Following is the code i wrote:


	WDPortalNavigation.navigateAbsolute("ROLES://portal_content/com.abc.xyz.Applic/com.abc.xyz.Iview/com.abc.xyz.AdvanceSearch_WD",WDPortalNavigationMode.SHOW_INPLACE,null,null,WDPortalNavigationHistoryMode.NO_DUPLICATIONS,null,null,null);

Is there something which i am missing?

As for the sending parameters, how do you capture these parameters in the second application from this link?

Thanks & regards,

Anupreet

former_member485701
Active Participant
0 Kudos

Hi ,

if you have obnMetaDATA.. use the following code.

String navigationTarget = obnMetadata.getOBNUrl(false);//if you are not passing URL

String businessParameters = obnMetadata.getOBNUrlParametersString();

WDPortalNavigation.navigateAbsolute(

navigationTarget,

// headerless is a most common mode for A1S

WDPortalNavigationMode.SHOW_INPLACE, null, null,

WDPortalNavigationHistoryMode.NO_HISTORY, null, null,

businessParameters, null, false, true);

Before this I want to ask that you have created an iview for these applications in the portal.

And for navigation from one application to other you have to create some business object and operations. I hope it is done on your side.

Regards,

Praveen

former_member187658
Participant
0 Kudos

Hi

I tried passing the values through fire and subscribe methods. But ti doesnt do anything.

The application from where i am passing the value, i have written the following code:


WDPortalEventing.fire("urn:com.abc.xyz.search","Go",combString);

In the target application, following code is written in the init:


WDPortalEventing.subscribe("urn:com.abc.xyz.search","Go",wdThis.wdGetReactPortalEventingAction());

Code for wdGetReactPortalEventingAction() is:


  String val = dataObject;
 wdComponentAPI.getMessageManager().reportSuccess("value:"+val);

here, dataObject is the parameter of wdGetReactPortalEventingAction() and is of type string.

Is there anything which is being missed?

Another thing is, if i want to pass application parameter values to the iview at runtime, how do i make an entry in iview properties?

Thanks & regards,

Anupreet