OpenDocument is functionality in BusinessObjects which enables URL reporting and linking documents. It processes incoming URL requests for documents in the Central Management Server (CMS) and delivers the correct document to the end user.
OpenDoc basically provides URL access to documents and avoid having them to navigate through a folder hierarchy.
Using OpenDoc you can link to the viewable objects like:
Ø Crystal Reports
Ø Web Intelligence documents (WebI)
Ø Dashboards
Ø Interactive Analysis documents
Ø BI launch pad workspaces
Note: This document deals with linking of Webi documents.
The OpenDoc syntax and its parameters allow you to construct URLs that link to viewable objects.
Server specific:
http://< servername >:< port >/BOE/OpenDocument/opendoc/openDocument.jsp?< parameter1 >&< parameter2 >&...&< parameterN >
Note: Once the report is moved from one server to another i.e. Dev to QA to Production server. Administrator has to modify the OpenDoc URL to current server name & port.
Non-Server specific:
../../opendoc/openDocument.jsp?< parameter1 >&< parameter2 >&...&< parameterN >
Note: This syntax doesn’t require any modification.
· Ampersand (&) is used to join all the parameters
· Server name and port refers to the BO Enterprise server name and port.
· Parameter link cannot contain spaces or special characters. Replace the space with plus sign (+). Eg. &sDocName=Sales+Report
· All OpenDoc parameters and parameter values are case sensitive.
· OpenDoc URL cannot exceed the maximum character limit. Therefore, know the browser character limit to ensure you URL will be within the limit.
Identifier Parameters are used to identify the target document by its ID, Name, Type and Instance.
Parameter Description
Parameter
|
Description
|
Mandatory
|
Code Sample
|
iDocID
|
Specifies the unique identifier of the viewable object.
|
Yes, but can be replaced by sDocName
|
iDocID= Aa6GrrM79cRAmaOSMGoadKI
|
sDocName
|
Specifies the name of the viewable object.
|
No
|
sDocName=Sales+in+2003
|
sIDType
|
Specifies the type of object identifier used.
|
If you pass in an InfoObject ID as a value to iDocID rather than CUID, you do not need to specify this parameter
|
sIDType=CUID
|
sInstance
|
Specifies the scheduled instance of the target document to open.
|
No
|
sInstance=Last; sInstance=User;
sInstance=Param;
|
sType
|
Specifies the type of the target document
|
No
|
sType=wid
|
Example:
http://< servername >:< port >/BOE/OpenDocument/opendoc/openDocument.jsp?iDocID=Aa6GrrM79cRAmaOSMGoadKI&sIDType=CUID&sInstance=Last
Or
http://< servername >:< port >/BOE/OpenDocument/opendoc/openDocument.jsp?iDocID=346&sInstance=Last
Input parameters are used to pass the parameter values to the target document.
Parameter
|
Description
|
Mandatory
|
Code Sample
|
lsC
|
Specifies a contextual prompt for Web Intelligence documents if there is an ambiguity during SQL generation.
|
No
|
openDocument.jsp?iDocID=346&sType=wid
&sRefresh=Y&lsC=Reservations
|
lsI
|
Specifies index or key value. This parameter must be associated with one of the parameters lsS, lsM or lsR.
|
No
|
lsMStore=e-Fashion New York Magnolia&lsIStore=2
|
lsM[NAME]
|
Specifies multiple values for a prompt.
|
No
|
lsMSelectState=[Alberta],[Washington]
|
lsR[NAME]
|
Specifies a range of values for a prompt.
|
No
|
lsRparamNumberR=[1..3]
|
lsS[NAME]
|
Specifies a value for a single prompt.
|
No
|
lsSparamCurrency=121
|
sRefresh
|
Indicates whether a database refresh should be forced when the target document is opened.
|
No
|
sRefresh=Y or sRefresh=N
|
sReportName
|
Specifies the report to open if the target document contains multiple reports.
|
No
|
sReportName=First+Report+Tab
|
Example:
http://< servername >:< port >/BOE/OpenDocument/opendoc/openDocument.jsp?sDoc=IndexTest&sType=wid&lsMStore=[caption]&lsIStore=[index]&sRefresh=Y
http://< servername >:< port >/BOE/OpenDocument/opendoc/openDocument.jsp?iDocID=Aa6GrrM79cRAmaOSMGoadKI&sIDType=CUID&sRefresh=Y&lsMSelect+Cities=[Paris],[London]&sRefresh=Y
http://< servername >:< port >/BOE/OpenDocument/opendoc/openDocument.jsp?iDocID=Aa6GrrM79cRAmaOSMGoadKI&sIDType=CUID&sRefresh=Y&lsSSelect+Cities=[Paris]&sRefresh=Y
http://< servername >:< port >/BOE/OpenDocument/opendoc/openDocument.jsp?iDocID=Aa6GrrM79cRAmaOSMGoadKI&sIDType=CUID&sRefresh=Y&lsRparamNumberR=[1..3]&sRefresh=Y
Output parameters are used only if the report output is required in specific format or force to display any prompt values not specified in the URL.
Parameter
|
Description
|
Mandatory
|
Code Sample
|
NAII
|
Indicates whether to force the display of the prompt selection page.
|
No
|
NAII=Y (prompt values that are passed with lsS, lsM, or lsR in the URL are applied and not displayed in the "Prompts" dialog box)
|
noDocument
|
A value of true forced a report to open in design mode using the existing report template.
|
No
|
noDocument=true automatically forces a Web Intelligence report into design mode.
|
sViewer
|
Specifies the selected report viewer.
|
No
|
sViewer=html
|
sOutputFormat
|
Specifies the format in which to open the target document
|
No
|
sOutputFormat=H;
sOutputFormat=P
(H- HTML, P- PDF)
|
sWindow
|
Indicates whether the target report will open in the current browser instance or launch a new one
|
No
|
sWindow= Same;
sWindow= New
|
Example:
http://< servername >:< port >/BOE/OpenDocument/opendoc/openDocument.jsp?iDocID=Aa6GrrM79cRAmaOSMGoadKI&sIDType=CUID&lsSYear=FY1999&NAII=Y&sRefresh=Y
http://< servername >:< port >/BOE/OpenDocument/opendoc/openDocument.jsp?iDocID=Aa6GrrM79cRAmaOSMGoadKI&sIDType=CUID&sViewer=html
http://< server >:< port >/BOE/OpenDocument/opendoc/openDocument.jsp?iDocID=6471&noDocument=true
http://< servername >:< port >/BOE/OpenDocument/opendoc/openDocument.jsp?iDocID=Aa6GrrM79cRAmaOSMGoadKI&sIDType=CUID&sRefresh=Y&lsRparamNumberR=[1..3]&sRefresh=Y&sWindow=New
OpenDocument work with the web version of WebIntelligence (WebI) and it is not supported by client version. We can create OpenDoc URL in client version. But, to test the OpenDoc URL we need to export the reports to CMS.
OpenDoc URL can be created by two ways
· Using Wizard
· Custom Linking
Now let us create an OpenDoc link by passing parameters between two WebI reports.
Report 1: Sales report (summarized report).
I have Quarter, Month and Week fields in the report filter section & Store name, Year, Category and Sales Revenue in report layout.
Report 2: Details of sales report (the complete details of the Sales report) which has prompts to filter the report for the parameter value picked by OpenDoc URL from Report 1.
Step 1: Logon into BI launch pad using your login credentials.
Step 2: Open your preferences and make sure you have below settings.
Step 3: Open the report (Design mode) in which you want to have the OpenDoc URL.
In this report, we have Quarter, Month and Week as report filters and Category, Year, Store name (Section) and Sales revenue as report objects.
Step 4: Right click on the Sales revenue measure in the report. Select “Linking -> Add Document link”.
Step 5: A new window will open. Click on browse and select the target document.
Step 6: Select all prompts available in report 2 for OpenDoc URL. Click Ok.
Step 7: Check the option “Use complete URL path to create hyperlink”. Accept the message by clicking ‘Yes’.
You can also check the other available options as per your requirement.
Link to document instance: If this is checked, the OpenDoc URL is linked to the latest refreshed instance of the target report.
Target area within the document: If this is checked, the OpenDoc URL jumps to the specific report tab of the target report.
Step 8: Choose “Select Object” for the document prompt values from the dropdown. I am using this, to filter the target report by picking the dimension values of the corresponding quantity and show the details in the target report.
Step 9: Click OK and check the report. You’ll be seen with “#Multivalue” error.
#Multivalue error:
Cause: In the report layout we have only 3 Dimensions and Sales Revenue is aggregated by those 3 dimensions whereas when we are linking the document to the target document we also did with Quarter, Month and Week.
By default, the wizard picks only single parameter value for the specified prompt i.e. it uses only lsS[NAME]. In this case, we need to have only those dimensions which are in the report layout to avoid this error or create a custom URL to pick multiple parameter values.
Note: Refer “Custom linking Webi documents” to write you own custom OpenDoc URL.
Step 10: Now, go to step 6 to select only the dimensions as prompts which are in the report layout and follow the same steps to complete the URL.
Click Ok and proceed to assign the dimension for the selected prompts.
Leave the rest of the prompts value as “Use document default” and click ok.
Note: In this case, the target document shows perfect data only when the source report is not filtered by any dimension.
Step 11: Finally, we have linked two Webi reports. Click on the Quantity value and the second report open up showing the details of the quantity.