Using RUID in OpenDocument

Is there anything special to know about using RUID in an OpenDocument statement? I'm writing a program to generate hyperlinks, and have found that RUID seems to be kept constant through server migration.
I've found that this works:
="<a href='http://MyServer/businessobjects/enterprise115/desktoplaunch/opendoc/openDocument.jsp?
sType=wid
&iDocID=AeG8ppyqd7tLtAaBBsOLOdY
&sIDType=GUID
... Other random options ...
+ "</a>"
This works too:
="<a href='http://MyServer/businessobjects/enterprise115/desktoplaunch/opendoc/openDocument.jsp?
sType=wid
&iDocID=AeG8ppyqd7tLtAaBBsOLOdY
&sIDType=CUID
... Other random options ...
+ "</a>"
But this produces an error (Internal error occured: Internal Error: the value of parameter id is invalid.):
="<a href='http://MyServer/businessobjects/enterprise115/desktoplaunch/opendoc/openDocument.jsp?
sType=wid
&iDocID=AeG8ppyqd7tLtAaBBsOLOdY
&sIDType=RUID
... Other random options ...
+ "</a>"
The only type that isn't accepted is the RUID. How can I make this work, so that I don't need to update hyperlinks every time something is migrated from our test system to our live system?

If you look at the documentation [here|http://devlibrary.businessobjects.com/BusinessObjectsXIR2SP2/en/en/BOE_SDK/boesdk_dotNet_doc/doc/boesdk_net_doc/html/Report_Linking13.html] it appears that it is only meant for use of OLAP and Crystal Reports.  Looking at the XI3 documentation, the use of RUID is no longer documented.

Similar Messages

  • Passing a Prompt value to Webi using Xcelsius with OpenDocument

    -Operating System: Windows XP
    -OS Patch level: Service Pack 3
    -Office Version: 2007
    -Flash Player version: 10
    -Xcelsius Version and Patch Level: Enterprise 2008 with SP2 (version: 5.2.0.0)
    -Xcelsius Build number (Help>About Xcelsius): 12,2,0,608
    -Business Objects Enterprise version/patch level (if applicable): Edge 3.1
    -Issue Description:
    I'm trying to open a Webi Document from my Xcelsius dashboard and pass the value for the prompt "Region".  Ultimately I want to have this value determined by the drill down from a chart but at the moment I cannot get it to work even by adding the value at the end of the URL.  The webi report opens but the user is given the prompt option and asked to select the value, where I want to pass this so it automatically shows the selected region.
    The URL I'm currently using is:
    http://"servername":8081/OpenDocument/opendoc/openDocument.jsp?sType=wid&sRefresh=Y&sDocName=Regional_Drilldown&mode=full&nbPrompts=1&lsSRegion=South
    I have double checked the report and the prompt is definitely called "Region" and "South" is a valid region.
    I would be very grateful for some help.
    Many thanks
    Robert Peters

    Hi Robert
    I would take out the reference to the number of prompts to give:
    http://"servername":8081/OpenDocument/opendoc/openDocument.jsp?sType=wid&sRefresh=Y&sDocName=Regional_Drilldown&mode=full&IsSRegion=South
    If you copy and paste the url into a browser does it sucessfully find the document?
    Regards
    Charles

  • Using opendocument for child report

    Hello Experts,
    One my webi report(parent) is likned with another wei report(child)using hyerlink and opendocument.
    Now my requirement is to hide refresh button of child whenever it would get opened (After clicking on hyperlink on parent)
    So every time, user clicks on hyperlink on parent report, child report should get opened without 'Refresh' button.
    Is there way out to this problem using SDK or url reporting?
    Regards,
    John

    With the SDK, you can create your own Web Intelligence viewer.  Other than that, there's not way to control the refreshability of a document other than using the security model (i.e., do not give rights to a user to refresh the document).
    Sincerely,
    Ted Ueda

  • Create ODF document using ABAP ?

    There any way to create ODF documents (Text/Spreadsheet) using ABAP + http://opendocument.xml.org standards ?
    Tks,
    Cleber

    There any way to create ODF documents (Text/Spreadsheet) using ABAP + http://opendocument.xml.org standards ?
    Tks,
    Cleber

  • How do we stop an extra window from opening when we use openDoc in 3.1?

    We have migrated content from XI r2 to 3.1 and when we use the opendoc/openDocument.jsp, it works but is also opening a blank browser window.  Any idea how to prevent this?  We've tested on 3 different versions of IE (6, 7 and 8).  It doesn't appear to be affected by user preference settings in InfoView and doesn't seem to matter if the new parameter is part of the URL.  Here's a sample URL:
    http://[server name]:[port]/OpenDocument/opendoc/openDocument.jsp?sPath=[ReportsByRole],[Shared]&sDocName=TrendedSupplyIndex+Report
    We get the same result if we're using Crystal, Webi or Xcelsius and we get the same result if we use the wizard and build the connection on a Webi report so it's using the opendocument.jsp file that's in AnalyticalReporting\opendoc

    Hi,
    Thanks for the reply.  We did try adding the window.close to the Tomcat55\webapps\OpenDocument\opendoc\isApplication.jsp file and that resolved the issue.  However, we eventually figured out that we could get by without the customization by using different parameters in the report links. 
    This example works for Xcelsius (to Xcelsius, Webi)- it has to have the appKind and isApplication parameter:
    /AnalyticalReporting/opendoc/openDocument.jsp?appKind=InfoView&isApplication=true&sPath=[ReportsByRole],[SHARED]&sDocName=DailyProductivityTool&lsSAU=406000&lsSFacility=Fa&lsSCompany=No
    This example works for Crystal (to Crystal):
    "../OpenDocument/opendoc/openDocument.jsp?sType=rpt&sPath=[Communications],[ReportLibrary]&sDocName=ReportProfile&sWindow=New&lsSReportID=" & {@ReportID}
    This example works for Webi (to Webi):
    ="<a href=../../opendoc/openDocument.jsp?iDocID=Ac20j.bpit1IrTJ5MYi6dvw&sIDType=CUID&sType=wid&sRefresh=Y&sWindow=New&NAII=Y&lsSPleaseentervalueforFiscalYear(YYYY)="[var_Year]"&lsSPleaseentervalueforStartFiscalMonth(MM)="[var_Start Month]"&lsSPleaseentervalueforStopFiscalMonth(MM)="[var_Stop Month]"&lsMSelectoneormoreAccountingUnit(s)="[var_CoEntAcctUnit]" title=\"Departmental Responsibility Summary\" href=\"#\" style=\"text-decoration:none; color:blue;\">"[var_Co]"-"[Account Unit]+"</a>"

  • Open hyperlink in a new browser

    Hello,
    All of our crystal reports are posted on Infoview. I need to create a report that would have a hyperlink to a different report also posted on Infoview. I want the second report opened in the new window. What formula should I use to open a second report in the new window?
    Thanks!!
    Olga

    hello all,
    you can do this using opendocument syntax. unfortunately opendocument syntax information is not that common.
    1) please do a search on your system for report_viewers.zip or report_viewer.chm. this is the help file that has the information on opendocument.
    2) once you have opened the chm go to the Search tab and type in opendocument
    3) select "URL Reporting Using openDocument" and press the "opendocument parameters" link
    4) scroll down and there is a "sWindow" parameter and use the value New
    in the chm there are examples on each opendoc parameter....i have pasted this particular page below as well.
    in cr2008 there is an Enterprise Hyperlink wizard which has open in new window as an option.
    there are a lot of things you can do with opendocument:
    a) go to the top of a report page
    b) use an "index" at the top of a report page to go to, for example, groups that start with the letter "G"
    c) go to a specific part of the report or another report
    d) hide the drilldown tabs
    e) hide the toolbar
    etc.
    i will endeavour to blog about this in the near future and have some sample reports.
    here's the info from the chm
    OpenDocument parameters
    There are two implementations of the openDocument function. The exact syntax of the <platformSpecific> parameter depends on your implementation:
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    The first parameter of the link
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?
    The first parameter, as displayed in the example above, must precede all other parameters. After this information, the parameters can appear in any order.
    The parameters of the function are displayed in the following table. The mandatory column indicates whether the parameter is required in the link.
    Note:    The document containing the openDocument link is called the parent document, and it resides on the parent system. The document to which the link points is called the target document, and it resides on the target system.
    Parameter syntax Description of parameter Mandatory? Values accepted for parameter
    sPath
    The name of the Crystal folder and subfolder containing the target document.
    Yes if sDocName is specified and is not unique.
    Crystal folder and/or subfolder:
    [folder],[subfolder]
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sPath=SalesReports,SubFolder
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    sType
    The file type of target document or report.
    Yes
    wid
    rpt
    car
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sType=wid
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    sDocName
    Document name.
    One of sDocName or iDocID is mandatory.
    Document name.
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sPath=SalesReports&sDocName=Salesin+2005
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    iDocID
    Document identifier.
    One of sDocName or iDocID is mandatory.
    Document identifier.
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sType=wid&sDocName=SalesReport&iDocID=2010
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    Replace 2010 with the document ID.
    Tip:   
    To obtain the document ID, navigate to the document in InfoView, hover your mouse over the document name hyperlink, and look for the ID number in the browser's status bar. You can also obtain the document ID from the Central Management Console.
    sIDType
    Crystal object type.
    Yes if the target is a Crystal report or OLAP Intelligence report (sType=rpt or =car) in an Object Package (otherwise, use sPath and sDocName)
    CUID
    GUID
    RUID
    ParentID
    InfoObjectID (default)
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sPath=SalesReports&sDocName=Salesin+2003&sIDType=InfoObject
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    sReportName
    Indicates which report to open if target document is multi-report.
    No (default is the first report)
    Report name for Web Intelligence documents, sub-report for Crystal Reports, pages for OLAP Intelligence reports.
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sType=wid&sDocName=Salesin2003&sReportName=FirstReportTab
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    sOutputFormat
    Indicates the format in which the target document is opened.
    No (default is HTML if the parameter is not specified in the link)
    H (HTML)
    P (PDF)
    E (Excel)
    W (Word)
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sPath=SalesReports&sDocName=Salesin+2003&sOutputFormat=E
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    sReportPart
    Indicates which specific part of the target report to open.
    No
    Name of the report part.
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sPath=SalesReports&sDocName=Salesin+2003&sReportPart=Part1
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    sPartContext
    In Crystal Reports, a report part is associated to a data context.
    Yes if a value is specified for sReportPart
    Data context of the report part.
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sPath=SalesReports&sDocName=Salesin+2005&sReportPart=Part1&sPartContext=0-4-0
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    sInstance
    Indicates which specific instance of the target report to open.
    No (use with sDocName and lsS[NAME])
    User (Link to latest instance owned by current user)
    Last (Link to latest instance for report)
    Param (Link to latest instance of report with matching parameter values)
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sPath=SalesReports&sDocName=Salesin+2003&sReportPart=Part1&sInstance=User
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    sReportMode
    For Crystal targets only, indicates whether the link should open the full target report or just the report part specified in sReportPart.
    No (default is Full)
    Only applies if a value is specified for sReportPart
    Full
    Part
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sPath=SalesReports&sDocName=Salesin+2003&sReportPart=Part1&sReportMode=Part
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    sRefresh
    Indicates whether a refresh should be forced when the target document or report is opened.
    No
    Y (forces the document's refresh)
    N (note that the refresh on open feature overrides this value)
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sType=wid&sDocName=SalesReport&iDocID=2010&sRefresh=Y
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    sWindow
    Indicates whether the target report will open in the current browser window or whether a new window will be launched.
    No
    Same (current browser window)
    New (new browser window is launched)
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sType=wid&sDocName=SalesReport&iDocID=2010&sWindow=New
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    lsS[NAME]
    Specifies a value for a single prompt. [NAME] is the text of the prompt.
    No
    A single prompt value.
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sType=wid&sDocName=SalesReport&iDocID=2010&lsSSelectaCity=Paris
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    lsM[NAME]
    Specifies multiple values for a prompt. [NAME] is the text of the prompt.
    No
    Multiple prompt values, separated by a comma. If the target is a Crystal report, each value must be enclosed in square brackets. If the target is a OLAP Intelligence report, use the MDX WITH clause (refer to Specifying prompts for OLAP Intelligence report targets).
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sType=rpt&sDocName=SalesReport&lsMSelect+Cities=[Paris],[London]
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    lsR[NAME]
    Specifies a range of values for a prompt. [NAME] is the text of the prompt.
    Note:    Not supported by OLAP Intelligence
    No
    A range of values for the prompt, separated by a double period (..). If the target is a Crystal report, the range must be enclosed in square brackets and/or parentheses (use a square bracket next to a value to include it in the range, and parentheses to exclude it). If the target is a OLAP Intelligence report, use the MDX WITH clause (refer to Specifying prompts for OLAP Intelligence report targets).
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sType=rpt&sDocName=SalesReport&lsRTime+Period:=[2000..2004)
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    lsU
    Specifies a URL to which the user is redirected.
    Note:    Not supported by OLAP Intelligence
    No
    A URL.
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sType=wid&sDocName=SalesReport&iDocID=2010&lsU=http://www.site.com
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    lsC
    Specifies a contextual prompt if there is an ambiguity during SQL generation (Business Objects and Web Intelligence documents only).
    Note:    Not supported by OLAP Intelligence
    No
    A prompt value that resolves the ambiguity in the SQL generation.
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sType=wid&sDocName=SalesReport&iDocID=2010&lsC=Sales
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter.
    NAII
    Forces the display of the prompt selection page.
    Note:    Not supported by OLAP Intelligence
    No
    Y (all prompts whose values are passed with lsS, lsM or lsR are pre-selected)
    N (displays only the prompts whose values passed with lsS, lsM or lsR)
    Example:
    http://<webserver>/businessobjects/enterprise11/<platformSpecific>?sType=wid&sDocName=SalesReport&iDocID=2010&NAII=Y
    For Java implementations, use desktoplaunch/opendoc/openDocument.jsp in place of the <platformSpecific> parameter.
    For .NET implementations, use InfoView/scripts/opendocument.aspx in place of the <platformSpecific> parameter
    Edited by: Jamie Wiseman on Dec 3, 2009 10:01 AM

  • Please, help me with with Report Engine SDK!

    I am using Report Engine SDK. This is my code:
    <%@ page import="com.crystaldecisions.sdk.framework.*"%>
    <%@ page import="com.crystaldecisions.sdk.exception.SDKException"%>
    <%@ page import="com.crystaldecisions.sdk.occa.infostore.IInfoStore"%>
    <%@ page import="com.crystaldecisions.sdk.occa.infostore.IInfoObject"%>
    <%@ page import="com.crystaldecisions.sdk.occa.security.ILogonTokenMgr"%>
    <%@ page import="com.crystaldecisions.sdk.occa.infostore.*"%>
    <%@ page import="com.crystaldecisions.report.web.viewer.CrystalReportViewer,
                     com.crystaldecisions.sdk.occa.report.application.OpenReportOptions,
                     com.crystaldecisions.sdk.occa.report.application.ReportClientDocument,
                     com.crystaldecisions.sdk.occa.report.exportoptions.ReportExportFormat,
                     java.io.ByteArrayInputStream"
    %>
    <%@ page import="java.util.Iterator"%>
    <%
         // Reference to the Report Engine:
    %>
    <%@ page import="com.businessobjects.rebean.wi.*"%>
    <%!IInfoObjects getList(IInfoStore iStore) {
              IInfoObjects list = null;
              String query = "SELECT SI_ID, SI_NAME, SI_PARENTID," + " SI_KIND, SI_INSTANCE, SI_DESCRIPTION FROM"
                        + " CI_INFOOBJECTS";
              try {
                   list = iStore.query(query);
              } catch (SDKException sdke) {
                   list = null;
              return list;
         }%>
    <%!     void see_all_objects(IInfoStore iStore){          
              IInfoObjects webiDocs = getList(iStore);
              Iterator infoObjectsIter = webiDocs.iterator();
              while (infoObjectsIter.hasNext()) {
                   IInfoObject folder = (IInfoObject) infoObjectsIter.next();
                   System.out.println(folder.getID());
                   System.out.println(folder.getTitle());
                   System.out.println(folder.getDescription());
         %>
    <%
         String CMS = request.getParameter("cms");
         String userID = request.getParameter("user");
         String password = request.getParameter("password");
         String auth = request.getParameter("auth");
         if (CMS == null)
              CMS = "";
         if (userID == null)
              userID = "";
         if (password == null)
              password = "";
         if (auth == null)
              auth = "";
         IEnterpriseSession enterpriseSession;
         try {
              ISessionMgr mySessionMgr = CrystalEnterprise.getSessionMgr();
              enterpriseSession = mySessionMgr.logon(userID, password, CMS, auth);
              if (enterpriseSession != null) {//Create and store useful objects for the session.
                   session.setAttribute("EnterpriseSession", enterpriseSession);
                   IInfoStore iStore = (IInfoStore) enterpriseSession.getService("InfoStore");
                   session.setAttribute("InfoStore", iStore);
                   //see_all_objects(iStore);
                   //String folderQuery = "SELECT * FROM CI_INFOOBJECTS WHERE SI_NAME='4.rpt'";
                        String folderQuery = "SELECT * FROM CI_INFOOBJECTS WHERE SI_NAME='5.rpt'";
                   IInfoObjects folders = iStore.query(folderQuery);
                   IInfoObject folder = (IInfoObject)folders.get(0);
                   //Instantiation of a Report Engine:
                   ILogonTokenMgr iLManager = enterpriseSession.getLogonTokenMgr();
                   ReportEngines repEngines = (ReportEngines) enterpriseSession.getService("ReportEngines");
                   ReportEngine widocRepEngine = (ReportEngine) repEngines
                             .getService(ReportEngines.ReportEngineType.WI_REPORT_ENGINE);//WI allows editing and creation
                   session.setAttribute("widReportEngine", widocRepEngine);
                   ReportEngine fcdocRepEngine = (ReportEngine) repEngines
                             .getService(ReportEngines.ReportEngineType.FC_REPORT_ENGINE); //FC just viewing
                   session.setAttribute("fcdReportEngine", fcdocRepEngine);
                   Opening documents:
                        1. Establish a BusinessObjects Enterprise session for the user
                        2. Get an identifier for the document
                        3. Retrieve the ReportEngine instance to open the document of desired type.
                        4. Open the document using the ReportEngine.openDocument method for Web
                        Intelligence or Desktop Intelligence documents.
                   int idReport = folder.getID();     
                   System.out.println("Document about to be opened "+idReport);
                   System.out.println("Name file: "+folder.getTitle());
                   DocumentInstance docInstance= widocRepEngine.openDocument(idReport);                
              //     DocumentInstance docInstance = fcdocRepEngine.openDocument(idReport);
                   System.out.println("Document opened");
                   String docToken = docInstance.getStorageToken();
                   //User perform actions on document
                   // Open the document using its repository ID
                   BinaryView docBinaryView = (BinaryView)docInstance.getView(OutputFormatType.PDF);
                   //Parameterize the response
                   response.setContentType("application/pdf");
                   response.setHeader("Content-Type", "application/pdf");
                   response.setDateHeader("expires", 0);
                   //output the binary stream via the response object
                   docBinaryView.getContent(response.getOutputStream());
                   System.out.println("Document converted");
                   //To view an individual report, call Report.getView
                   //Open the first version of the document and save.
                   DocumentInstance docToSave = repEngines.getDocumentFromStorageToken(docToken);
                   docToSave.save();
                   System.out.println("Document converted");
                   // Close of the reportEngine
                   repEngines.close();
                   response.sendRedirect("home.html");
              } else
                   response.sendRedirect("index.jsp");
         } catch (SDKException mySDKExept) {
              response.sendRedirect("index.jsp");
         Opening documents:
         //To view an entire document, call DocumentInstance.getView
    %>
    Edited by: Diego XMunch on Mar 10, 2011 3:41 PM

    But I have this error:
    com.businessobjects.rebean.wi.ServerException: Error interno al llamar a la API 'openDocumentMDP'. (Error: ERR_WIS_30270)
         at com.businessobjects.rebean.wi.occa.OccaDocumentComAdapter.checkOpenDocError(Unknown Source)
         at com.businessobjects.rebean.wi.occa.OccaDocumentComAdapter.openDocument(Unknown Source)
         at com.businessobjects.rebean.occa.OccaReportEngineComAdapter.openDocument(Unknown Source)
         at com.businessobjects.rebean.wi.ReportEngineImpl.openDocument(Unknown Source)
         at com.businessobjects.rebean.wi.occa.WebiReportEngine.openDocument(Unknown Source)
         at org.apache.jsp.login_jsp._jspService(login_jsp.java:163)
         at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334)
         at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
         at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
         at java.lang.Thread.run(Thread.java:619)

  • Passing the values to Hyperlink

    Hi,
    My requirement is I want to pass two values to hyperlink from a table. My table looks like
               <b>  Column 1; Column 2</b>
    Row 1     Value1 ;  Value 2
    Row 2     Value 3; Value 4.
    I want that If someone clicks on value1..... the Row1 and Column1 values should be passed in the URL...
    It would be great if some1 could help me on this..
    Thnx
    Bob

    Bob,
    The feature you want to use is called "OpenDocument".  The best way to learn how to use OpenDocument is by reading the correct user's guide for it based on your version.  If you're running XI 3.1, then look for this document:  xi3-1_url_reporting_opendocument_en.pdf on the Tech Support site.  If you have the previous version BOE (XI R2), then look for "be_xi_r2_opendocument.pdf".
    Thanks,
    John

  • Integration of WEBI report in SAP Enterprise portal

    Hi Colleagues,
    I want to create my adhco report using WEBI and want to publish it to SAP NW Enterprise portal .
    While creating the i view in the EP i dint find any option in i view template in order to create an i view for WEBI report .
    However there is an option to choose crystal report as a template while creating an i view but nothing for WEBI and Xcelsius as such. So how can we embedd our Xcelsius and WEBI report in SAP Enterprise portal .
    Is there any option to intergate the SAP NW Enterprise portal and BO Portal .
    Kindly sugest.
    Vibhav.

    You should be using opendocument links if using EP. with opendocument the URL contains all the pertinent info.
    refer to chapter 8 of the SAP Integration kit guide for more info.
    Post in the webi, general, or check out the outher documents link in the forum sticky post for the latest opendocument doc.
    Regards,
    Tim

  • Questions from a BO newbie

    Hi All,
    I am new to BO and have few queries in regards to using BO ( webi/deski) reports for Canned ( very few) and adhoc reports.
    Requirement:
    1) BO embedded within c# winapp. ( user to run reports from the winapp)
                - This is achieved by using SDK and opendocument API.
                - Relational database ( SQL server 2005) as Datasource.
    Questions:
    1) Can I use custom sytlesheets for all my Webi reports ( to standardise the report's look and feel) ?
    2) Can Alerters be shared across reports ? ( alerter at Universe level ???)
    3) BO reports with collapsable/expandable data rows ( similar to master\detail reports on .Net datagrid)
    4) Callback to the UI ( the parent C# winapp ) from within the BO report (via hyperlink / drilling ???)
    5) Display/hide specific toolbar controls  and othere features ( like template/properties tabs) when rendering an adhoc report from within the C# winapp  ?
    Any help on this is greatly appreciated.
    Thanks in Advance.
    - Mahesh
    Edited by: mahesh gopal on Feb 13, 2009 10:30 AM

    Umm, note Webi = web intelligence
    Your requirement; winapp
    Also, see the [Rules of Engagement|https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/rulesofEngagement]
    One query per thread.
    As a BO customer you should be able to create a phone incident. for the number of queries you have, I'd suggest doing so.
    Ludek

  • Drill down in crosstab report

    I'm working with a crosstab report displaying summary accounts on each row & current and prior year on each column. I'd like to create a drill down function for each of the summary accounts rows so that when I click on a summary account, the dept# that made up this summary total will be displayed either on a separate report or below the summary account that I click.
    Any help would be greatly appreciated.  Thank you.
    This is what I want to create:
    SUMMARY ACCOUNT               FY2014     FY2013
    600001 - SALARIES               500        380    (i.e. able to drill down to dept below when 600001 is clicked)
        701000 - ER DEPT            200        175
        757000 - CATH LAB           150        210
        848000 - INFO SYSTEM        100         65
        851000 - ACCOUNTING          50         50
    710002 - BENEFITS               150        140
        881000 - HUMAN RES          135        130
        900000 - OTHERS              15         10
    711003 - SUPPLIES               XXX        XXX

    Thank you for the referenced thread.  I've copied your answer on the thread to this reply below.
    However, I do have a few question in following thru your instructions:
    1.  How do you procede with the 1st 3 bullets below?
    2.  What or where is the Business Object Platform?
    3.  What or where is the "Repository"
    Please advice.  Thank you.
    Here are a few ways you can drill-down into a cross-tab (all of them are workarounds by the way).
    The first method is using Report Parts or ‘Another Report Object’ and the second method is using an ‘OpenDoc’ URL
    Both the methods need the target report (report that is opened when drilled into) to have the same groups as the Crosstab
    The ‘Another Report Object’ can be setup in the following way:
    The target report needs to saved to the BusinessObjects Platform first
    Open the target report in the Crystal Report designer from the ‘Repository’
    Assuming the groups have been setup properly, click on any field in the details section and ‘Copy’ (Ctrl+C)
    Open the Report with the Crosstab
    Right-click the Summary Field on the Crosstab and go to ‘Format Field’ > Hyperlink
    Then Check ‘Another Report Object’ and click on ‘Paste’
    All the required information should be populated automatically
    This is how the Data Context should look like:
    “/”+GridRowColumnValue(“Customer.Country”)+”/”+ GridRowColumnValue(“Customer.Region”)+”/”+ GridRowColumnValue(“Customer.Customer Name”)
    Where “Country” and “Region” are rows in the Crosstab, “Customer Name” is a column in the crosstab.
    Similarly, “Country”, “Region” and “Customer Name” are groups on the target report
    So, the above formula would make sure the report drills-down to the last group
    The next method using ‘OpenDoc’ makes use of the opendocument URL and passes values from the Crosstab to the target report’s parameters
    Here’s how we can set this up:
    The basic design of the Main report and the target report would be the same as in above, however we would need to create parameters that correspond to the groups on the target report
    In this case, we would create three parameters – Country, Region and Customer Name
    We would use these parameters as filters on the target report and our record selection formula would look like this:
    {Country} = {?Country} and {Region} = {?Region} and {Customer Name} = {?Customer Name}
    We would then link the Main reports ‘Country’, ‘Region’ and ‘Customer Name’ with these parameters
    Now on the Main report Right-click the Summary Field on the Crosstab and go to ‘Format Field’ > Hyperlink
    Check the option ‘A Website on the Internet’ and click on the formula button in ‘Hyperlink information:”; the formula should be as follows:
    “/OpenDocument/opendoc/openDocument.jsp?iDocID=6472&lsSCountry=”&GridRowColumnValue(“Customer.Country”)&” &lsSRegion=”&GridRowColumnValue(“Customer.Region”)&” &lsSCustomer+Name=”&GridRowColumnValue(“Customer.Customer Name”)
    When any summary value is clicked in the Cross-tab, the corresponding Country, Region and Customer Name are passed as values to the parameters of the target report
    Hope this helps!
    -Abhilash

  • Business Obeject XI 3.1 SP4 and Internet Explorer 8

    Hi,
    The Business Objects XI3.1 SP4 what's new notes specify Browser support as below
    Browser support
    SAP Business Objects applications that are viewed in a browser support Microsoft Internet Explorer 8
    in Compatibility mode only. Browsers running in Explorer 8 Standard mode are automatically switched
    to Compatibility mode when applications such as InfoView or the CMC are launched. Upon exiting the
    application, a browser reverts automatically to Internet Explorer 8 Standard mode. No user intervention
    is required to switch from one mode to another.
    Has anyone experienced issues running\editing webI reports using Infoview or OpenDocument in a corporate environment. Are there any known issues with using IE8 with SP4
    Kindly advice.
    Thanks & Regards,
    Piyush Pansare

    There are no real problems between IE8 and BI4 that I am aware of. By far the most 2 common problems with IE8 are if you don't use 'Compatibility Mode' or if your 'Zoom' is greater or less than 100%.
    With default IE8 settings, there's no issue, perhaps someone has blocked or disallowed certain Java scripts, applets, etc etc?
    Alex

  • Specify CrystalReportViewer virtual directory

    Post Author: craibuc
    CA Forum: .NET
    Is it possible to specify the location of crystalreportsviewer115 virtual directory in the BO .Net SDK?  I would like to use the virtual directory that is exposed by InfoView located on another server.
    Thanks,
    Craig Buchanan

    Post Author: craibuc
    CA Forum: .NET
    I solved this issue by using URL reporting (openDocument.jsp).  I use the BO .Net SDK to dynamically display folders and objects within folders.  I also use the SDK to create the URL to open the report (or instance) using the openDocument functionality.

  • Report window does not close properly when using openDocument

    XI R2 InfoView
    Windows 2003 server
    IIS
    IE7
    We have been experimenting with the use of openDocument and have managed to achieve what we wanted but have one small problem.  When the document is retrieved it is opened in a new browser window.  When Close is selected from the drop-down Document menu the document is closed but the window shrinks to approx 8.5cm x 6 cm and remains open.
    A similar thing happens when we use the Preview button to view a document in the CMC, except in that case the document does not close and closing the browser window leaves a button on the Windows taskbar.  There doesn't appear to be a related window as it cannot be restored but you have to right click and select Close to get rid of it.
    Any ideas what is causing these problems and how we can get round them?

    Anne,
    There are some parameters in opendocument (for ex. sWindow) that can help control certain things, have you tried employing anything like that?  What I find frustrating is the behavior of opendocument based on whether you're running Infoview or WebI -- each product, using the same exact opendocument syntax yields different results.  Based on the sample code below, what I'm seeing with Infoview is the same browser instance is used for calling the child report, however, in WebI, a new browser instance is started and the child report is rendered in Infoview.  In my case, when running within WebI and getting a new browser instance in Infoview, and then using the "Document", "close" workflow, the second instance is exiting and I'm back to the previous browser.  Staying within Infoview entirely through the process, when closing the child report I get brought back to the folder list page.  Who's to know?
    ="<a href=https://<server>/businessobjects/enterprise115/InfoView/scripts/opendocument.aspx?
    idocid=100798&lsSInput_Pos_Nbr="+[Position Number Tracking]+">"+[Position Number Tracking]
    +"</a>"
    (double spaced on purpose)
    Thanks,
    John

  • CR Server 2008 / Using openDocument interface with a no-logon wrapper

    Hi, all!
    I had a problem with the openDocument.jsp interface and a no-logon wrapper which took me quite a while to figure out. I'm now posting these results here in the hopes that someone else will find them useful. Of course, if anyone has input how to improve the solution, it's also welcome!
    The system on which this was developed and tested was a vanilla Crystal Reports Server 2008 installation on Tomcat / MySQL / Windows Server 2003.
    The problem was that calls to openDocument interface left sessions open and this quickly led to the situation where all the concurrent access licenses (CALs) were used. It seemed nondeterministic when a session was released; it could have been minutes or hours.
    The solution: write a HTTP session timeout listener which logoffs the CRS-backend session. (The code below has still some dubug output enabled.)
    package fi.niscayah.util;
    import com.crystaldecisions.sdk.framework.IEnterpriseSession;
    import javax.servlet.http.*;
    import java.util.Date;
    import java.util.Enumeration;
    import java.text.SimpleDateFormat;
    public class KillSession implements HttpSessionListener
        public void sessionCreated(HttpSessionEvent event)
            debug("sessionCreated()", event);
        public void sessionDestroyed(HttpSessionEvent event)
            HttpSession session = event.getSession();
            try {
                java.util.Enumeration name = session.getAttributeNames();
                while (name.hasMoreElements()) {
                    String attributeName = (String)name.nextElement();
                    Object attribute = session.getAttribute(attributeName);
                    if((attribute != null) && (attribute instanceof IEnterpriseSession)) {
                        debug("  attribute : " + attributeName);
                        debug("  type      : " + attribute.getClass().getName());
                        IEnterpriseSession ies = (IEnterpriseSession)attribute;
                        ies.logoff();
                debug("sessionDestroyed()", event);
            } catch (Exception ex) {
                debug("sessionDestroyed() exception");
        private void debug(String msg)
            SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
            String timestamp = sdf.format(new Date());
            System.err.println("[KillSession] [" + timestamp + "] " + msg);
        private void debug(String msg, HttpSessionEvent event)
            HttpSession session = event.getSession();
            String id = session.getId();
            String context = session.getServletContext().getServletContextName();
            debug("[" + context + "] [" + id + "] " + msg);
    (If you want to test the above code, create a .jar package out of it and put it in webapps/OpenDocument/WEB-INF/lib.)
    Next we need to register our listener. I noticed that the openDocument-webapp's web.xml-file already contained a listener definition that claimed to expire enterprise sessions on HTTP timeout. I never saw such results; I tested it by registering my own listener, which only outputted debug information, and then when ever a session timeout happened, I checked the amount of licenses in use via the CMC - it never dropped predictably.
    So, comment out the SessionCleanupListener and add KillSession.
    <!-- SK: Added own listener. -->
    <listener>
        <listener-class>fi.niscayah.util.KillSession</listener-class>
    </listener>
    <!-- SK: Commented out. -->
    <!-- SessionCleanupListener is used to expire the EnterpriseSession when the web session is timeout -->   
    <!-- <listener>
        <listener-class>com.businessobjects.sdk.ceutils.SessionCleanupListener</listener-class>
    </listener> -->
    After the above, change the HTTP session timeout to something more suitable. If you're creating really big reports, one minute might be too little. Also notice, that the value is an approximation. The timeout event might happen just as one minute has passed, but usually it takes more.
    <session-config>
        <session-timeout>1</session-timeout>
    </session-config>
    Now we're good to go and test the openDocument interface. The result should be that every time a HTTP session timeouts, an enterprise session (which was initialized via the openDocument call) is logged off.
    Next the no-logon wrapper.
    I found a lot of examples for logging in automatically, but every one of them exhibited a strange behavior (at least when used in conjunction with the openDocument interface) where the session count was increased by two. A lot of head scratching later, the solution below was devised.
    <%@ page language="java"
        import = "com.crystaldecisions.sdk.framework.CrystalEnterprise,
                  com.crystaldecisions.sdk.framework.IEnterpriseSession,
                  com.crystaldecisions.sdk.framework.ISessionMgr,
                  com.crystaldecisions.sdk.exception.SDKException"
    %>
    <%
    ISessionMgr sessionManager = CrystalEnterprise.getSessionMgr();
    IEnterpriseSession entSession = sessionManager.logon("Guest", "", "<server>:6400", "secEnterprise");
    String entToken = entSession.getLogonTokenMgr().createWCAToken("", 1, 1);
    // So that this can be logged off when the session timeouts
    HttpSession httpSession = request.getSession();
    httpSession.setAttribute("nologon_SESSION", entSession);
    String query = request.getQueryString();        
    String redirectURL = "http://<server>:8080/OpenDocument/opendoc/openDocument.jsp?" +
        query + "&token=" + entToken;
    response.sendRedirect(redirectURL);
    %>
    You can put the above .jsp-file where you like, but I dropped it in webapps/openDocument, since it's no use by itself.
    The use of nologon.jsp is simple: use it as you would openDocument.jsp.
    And there you have it. A word of warning though, if you're not sure what you're doing, I wouldn't recommend trying these things out. And you certainly shouldn't deploy these on a production environment.
    As said before, any input is welcome!

    I'll comment on the BusinessObjects Enterprise logon tokens that you may generate via the Enterprise SDK.
    DefaultToken - this is used for failover - i.e., if the original EnterpriseSession object is destroyed without having logoff() method invoked, the failover can be used to re-connect to Enterprise without redo-ing authentication.  This token is immediately invalidated with EnterpriseSession.logoff().
    CreateLogonToken - token represents an EnterpriseSession independent of the original EnterpriseSession that generates it.  So you should generated the CreateLogonToken and log off the EnterpriseSession before using the token, or you'll have two licenses being used.
    CreateWCAToken - the Web Component Adapter token - this token is tied to the EnterpriseSession used to create it.  If this EnterpriseSession is invalidated, the WCA token can no longer be used.  Since this is essentially re-use of the original EnterpriseSession, license count is not increased with its use.
    So in your application, you're generating the WCA Token, and using the Session Listener to explicitly log off the originating EnterpriseSession.  The SessionCleanupListener is for cleaning up sessions created within InfoView on Web Application Server Session timeout.
    Sincerely,
    Ted Ueda

Maybe you are looking for

  • How can I define "java.util.ResourceBundle" in my Code ?

    Dear Mr. MLRon, Thanks to you for your replying to me. How can I define "java.util.ResourceBundle" in my Code ? To more understanding about my problem I can say that the Persian Font is Like as Arabic, but the Java can not Recognize it. please tell m

  • Updated to iOS 7.1.2 - Can no longer connect to WiFi

    There is clearly a bug introduced after updating to iOS 7.1.2 and I inadvertently repeated this mistake on two iPhones (5 and 4S). Immediately after updating to the latest iOS, I was experiencing sporadic WiFi drop outs, especially for short time imm

  • Can anybody tell me how to fix this error...

    [#|2005-07-07T14:21:32.199-0400|SEVERE|sun-appserver-pe8.0.0_01|javax.enterprise.system.container.web|_ThreadID=12;|StandardWrapperValve[Faces Servlet]: Servlet.service() for servlet Faces Servlet threw exception com.sun.faces.el.impl.ElException: En

  • Wire trick

    A quick question- can I use a very thin wire using the wire trick, or does it need to carry a lot of current? I took apart some monstercable speaker wire, which is 100% ofc.  One strand is very thin, is that a problem? We're talking hair thin almost.

  • How to call methods defined in another class ? is it possible?

    Hi all, I am new to using JNI, was wondering if this is possible and how I might be able to do this. I'm trying to call some set/get functions defined in a class that is not part of the class where I have my native code defined and called... Let me e