cancel
Showing results for 
Search instead for 
Did you mean: 

Open view in new browser window

Former Member
0 Kudos

Hi all,

I have got a webdynpro-application, which contains two windows and two views.

Actually each window contains one view. The second window is opened as a pop-up-window right now.

Instead of the pop-up, I just want to open a new external browser window which contains the view.

Moreover the context of the external browser window has to exchange data with the application itself.

Does anybody know how realize this?

Thank you in advance.

Kind regards, Patrick.

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Thank you for your help,

but I am not really convinced about building or getting the url of the view, which should be displayed in the external window.

does anybody know how to get it?

thank you, Patrick.

roberto_tagliento
Active Contributor
0 Kudos

Not view, but application!

In same project you can have different APPLICATION, where each application work with same object but in different way!

And each application can launch different window!

Where all window can work with same object (views) but in a different way.

I gived you the solution.

I realized what are you asking.

Message was edited by:

Roberto Tagliento

Former Member
0 Kudos

Hi,

WDDeployableObjectPart deployableObjectPart =WDDeployableObject.getDeployableObjectPart(deployableObjectName,"App",WDDeployableObjectPartType.APPLICATION);

url = WDURLGenerator.getApplicationURL(deployableObjectPart);

// Get target URL based on deployable object part and URL parameters

urlToTargetApp =WDURLGenerator.getApplicationURL(deployableObjectPart,urlParameters);

// Fire exit plug to target URL

IWDWindow window =wdComponentAPI.getWindowManager().createExternalWindow(urlToTargetApp,"window title",true);

window.open();

This is for generating the external window using for two applications.

Try this.

Thanks

Lohi.

Former Member
0 Kudos

Ok, I now understand, that I have to create a new application, which will be called with an url in createExternalWindow.

Can I create this application in the same project? With the same oder new component? And if yes, how I can define, that this application opens a specific view in specific window?

Thank you, Patrick.

roberto_tagliento
Active Contributor
0 Kudos

But did you read me 😄

Yes you can.

Same component!

When create the new application, specify to create a <b>new</b> Window.

Nothing is different from a normal developing, only different object but how to work is the same.

Bye

Former Member
0 Kudos

Patrick,

<i>Can I create this application in the same project</i>

Yes, sure. The only requirement is that qualified app name must be unique.

<i>With the same oder new component?</i>

Either. You may use same component but different interface views, or different components. You may even create 2 apps based on the very same component and interface view with same start-up plug -- but this has no sence

<i>And if yes, how I can define, that this application opens a specific view in specific window?</i>

The simplest way is to create new window with necessary view as default.

For ad-hoc solution please read <a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/a137c339-0b01-0010-a688-a87b88706845">How to Navigate Inside Web Dynpro Component Interface Views</a> by Bertram Ganz (applicable if you have complex navigation inside window and do not want to duplicate it into another one).

Valery Silaev

SaM Solutions

http://www.sam-solutions.net

Former Member
0 Kudos

Hello,

just one additional question, as I am facing a similar problem at the moment. I created two applications, which refer to the same Component, but different interface views. As I understand, I should be able to get hold of the Component Controller Context from both applications, but actually I don´t.

Thanks,

Ilona

roberto_tagliento
Active Contributor
0 Kudos

You must create 2 application, one application for each window.

The first launch by default first window and

the second launch by default second window.

Get the application url of second window and use this:

https://www.sdn.sap.com/irj/sdn/downloaditem?rid=/library/uuid/f1cfe990-0201-0010-22ac-dbe4cbdef504

Use the code for open "www.google.com".

roberto_tagliento
Active Contributor
0 Kudos

can help

some information

.....

String strURL = WDURLGenerator.getApplicationURL("WebDynpro_PATH", "WindowApp");

Now u can use this strURL for opening your external window.

wdControllerAPI.getComponent().getWindowManager().createExternalWindow(strURL,"TITLE",false);

*****************************************

IWDWindowInfo windowInfo = wdComponentAPI.getComponentInfo().findInWindows("CallTreeWindow");

//create the "AddressbookWindow"

IWDWindow window = wdComponentAPI.getWindowManager().createWindow(windowInfo, true);

WDWebContextAdapter.getWebContextAdapter().getParameter("param");

WDWebContextAdapter.getWebContextAdapter().getRequestParameter(key)

****************************************

you should call not "http://www.google.it" but result of something like this:

public static String resolveURL(String dcName, String applicationName) throws EntryNotFoundException, WDURLException

{

IWDDeployableObject deployableObject = WDDeployableObject.getDeployableObject(dcName);

if(null!=deployableObject && WDDeployableObjectState.STARTED.equals(deployableObject.getState()))

{

boolean found = false;

int i = 0;

WDDeployableObjectPart[] parts = deployableObject.getParts(WDDeployableObjectPartType.APPLICATION);

if(parts!=null)

{

for(;i<parts.length;i++)

{

if( applicationName.equals(parts.getShortName()))

{

found = true;

break;

}

}

}

if(found)

{

return WDURLGenerator.getApplicationURL(parts, null);

}

else

{

throw new EntryNotFoundException( "Application '" + applicationName + "' not found" );

}

} else {

throw new EntryNotFoundException( "Application '" + applicationName + "' not found in '" + dcName + "'" );

}

}

Former Member
0 Kudos

Hi,

your requirement is seems to be like export Excel example.

Please go thru that PDF once.

go thru this link

https://www.sdn.sap.com/irj/sdn/downloaditem?rid=/library/uuid/1208c2cd-0401-0010-4ab6-f4736074acc6

Thanks

kris

Message was edited by:

gopi krishna