cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Open document URL through SDK functions?

Former Member
0 Likes
242

Dear all,

I am an ABAP and Webdynpro Developer.

Out client system is BOBJ 3.1 and BW  release 701 systems.


We have a requirement to call the  BOBJ Webi Report through a Webdynpro program from BI system.

We need to provide a link of thie WEBI report to user , where he does not required to navigate through the document list  and even no need to enter input values also.


I came to know that this is possible through Open document URL approach.


Please let me know how to achieve it.

If possible, please provide any sample examples.


Thanks,

Vamshi

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Likes

Hi Vamshi,

Yes, OpenDocument URL can be used to open a Report using simple url's as below:

http://<servername>:<port>/OpenDocument/opendoc/openDoc

ument.jsp?iDocID=Aa6GrrM79cRAmaOSMGoadKI&sIDType=CUID

You just need to change the URL according to your enviorment. You can also give parameters to your report in the above url.

You can find the OpenDocument Guide from the below link:

http://help.sap.com/businessobject/product_guides/boexir31/en/xi3-1_url_reporting_opendocument_en.pd...

I am not aware of  WebDynpro programming so I can't help you in consuming the above url using the same.

However, below is the .jsp script that can be used to consume the OpenDocument URL(if this can give you some idea)

<%@page import="com.crystaldecisions.sdk.framework.*" %>

<%@page import="com.crystaldecisions.sdk.occa.infostore.*" %>

<%@page import="com.crystaldecisions.sdk.occa.security.ILogonTokenMgr" %>

<%

//CMS logon information - customize....

String cms = "lmo-sca-xi31sp2"; //Enterprise CMS Server

String webServer = "lmo-sca-xi31sp2"; //Infoview Web Application Server

String webPort = "8080"; // Infoview Web Application Server's port

String userid = "Administrator";

String pwd = "";

String auth = "secEnterprise";

String reportName = "World Sales Report"; //Hard coded for this example

//Log onto the CMS

ISessionMgr entSessionMgr = CrystalEnterprise.getSessionMgr();

IEnterpriseSession entSession = entSessionMgr.logon(userid, pwd, cms, "secEnterprise");

//Get the report id to redirect to

String infoStoreQuery = "select si_id from ci_infoobjects where si_instance=0 and si_name='" + reportName + "'";

IInfoStore infoStore = (IInfoStore) entSession.getService("", "InfoStore");

IInfoObjects infoObjects = infoStore.query(infoStoreQuery);

if ( infoObjects.isEmpty() )

{

out.println("[" + reportName + "] not found.");

}

else

{


IInfoObject report = (IInfoObject) infoObjects.get(0);

String rptID = "" + report.getID();

//BOE XI 3.x URL

String urlRedirection = "http://" + webServer + ":" + webPort + "/OpenDocument/opendoc/openDocument.jsp?iDocID=" + rptID + "&sIDType=InfoObjectID";

response.sendRedirect(urlRedirection);

}

%>

Hope this helps.

Regards,

Rajarsh

Former Member
0 Likes

Hi Rajarsh,

Thank you for your reply.

I too found the Open document URL and in BOBJ we have generated a sample URL.

Managed to prepare the URL in webdynpro.

Thanks,
Vamshi

Answers (0)