Business Intelligence - Oracle

Customizing OBI EE – GO URL Parameters

Posted by Venkatakrishnan J on July 30, 2007

While I was working on the data mining pieces, I got a request from a customer who basically wanted to completely customize OBI EE. Well, it got me thinking about the various customization options that we have with OBI EE. In my customer’s case, they wanted to integrate OBI EE into their web application. Let’s see what options we have with OBI EE customizations.

Using OBI EE GO URL parameters

Almost most of the functionality that a customer would need or expect out of OBI EE is available for them via URL parameters. One can leverage these URL parameters into their application. What this would do is that rather than having OBI EE as a separate reporting tool, it would enable an end customer to call various reports via iframes into their application.
 
 A sample URL with the parameters for OBI EE would look like this

 http://hostname:port/analytics/saw.dll?GO&NQUser=Administrator&NQPassword=Administrator&
Path=/Users/administrator/GEC_DW/Regional+Sales/Profit+per+Category+Pie+Chart&Options=md

When one needs to use the URL parameters the fundamental part of the URL should include http://hostname:port/analytics/saw.dll?GO and following that options are to be entered. Lets look at the various URL parameters for OBI EE

        1. &NQUser – Username for logging into Answers

        2. &NQPassword – Password for login. One must realize that entering password directly into the URL is not very secure. Its recommended to use    the post method wherein the password is not explicitly shown. (People who know discoverer, entering password, as a parameter is no more   available. Only post method is supported)
 
        3. &Options=mdfr – Each of the letters in mdfr have a specific function.
            m - To include the modify report link under the report
            d - To include the download link under the report
            f - To include the printer friendly link under the report
            r - To include the refresh report link under the report

  All the above can be interchangeably used. For example &Options=md for including modify and download links alone.

        4. &Action – This allows the developers to request specific formats for the reports. For example, &Action=print (can also have excel etc)
 
        5. &ViewName – This argument allows one to specify a view. For example, &ViewName=Chart1

        6. &Style – Specify a style sheet For example, &Style=Lime

        7. &Format – Specify the format of the output, html or xml
 
        8. &Path – Specify the path for the report. For example, &Path=/Shared/administrator/testReport

        9. &SQL - Logical Sql – One can even issue logical sql via the URL parameter. For example,  &SQL=select+region+from+Sales. Here Sales is the   subject area.

The above are some of the parameters that you might find useful. But for more detailed and some parameters refer the Documentation here.

 
The above picture is actually a simple application that calls out 2 different reports based on the data entered. This kind of integration is very strong and infact the entire OBI EE is integrated into the Oracle Siebel CRM using this methodology. One can use Post methods; execute scripts etc using this type of methodology.

Following are some examples for simple HTML form elements using post method.

 Access to Answers:
     <form action=”http://hostname:port/analytics/saw.dll?” method=”post”>
     <input type=”hidden” name=”Cmd” value=”Answers”>
     <input type=”hidden” name=”nqUser” value=”Administrator”>
     <input type=”hidden” name=”nqPassword” value=”Administrator”>
     <input type=”submit” value=”Answers”>
     </form>

To open a report in Answers (for edit), include the Path parameter:
     <form action=”http://hostname:port/analytics/saw.dll?” method=”post”>
     <input type=”hidden” name=”Cmd” value=”Answers”>
     <input type=”hidden” name=”nqUser” value=”Administrator”>
     <input type=”hidden” name=”nqPassword” value=”Administrator”>
     <input type=”hidden” name=”Path” value=”/Shared/SH/Category analysis”>
     <input type=”submit” value=”Open a Report for editing in Answers”>
     </form>

To open BI Publisher use “AdvancedReports” as the Cmd value
     <form action=”http://hostname:port/analytics/saw.dll?” method=”post”>
     <input type=”hidden” name=”Cmd” value=”AdvancedReports”>
     <input type=”hidden” name=”nqUser” value=”Administrator”>
     <input type=”hidden” name=”nqPassword” value=”Administrator”>
     <input type=”submit” value=”BI Publisher”>
     </form>
 

37 Responses to “Customizing OBI EE – GO URL Parameters”

  1. Len Says:

    Hello, Can you please explain how to pass parameter values in the url. For example, I want to run an answers query and pass into the url something like this: &Region=West

  2. Venkatakrishnan J Says:

    Yes, this absolutely possible. You can get the details from the Web Services guide since it has all the necessary examples and more explanation. Thats why i did not include it in the blog. You can get it from page 213 of the Docs http://download.oracle.com/docs/cd/B40078_02/doc/bi.1013/b31766.pdf

  3. Ralph Says:

    Hi Venkat,

    Again, very informative entry, although some typos
    like &Options instead of &mdfr and the picture in this entr
    points to the web services stuff instead
    of your sample application.

  4. Venkatakrishnan J Says:

    Thanks for the feedback Ralph. I have updated both.

  5. Iris Says:

    The site’s very professional! Keep up the good work! mapquest satellite direction driving in spanish maps directions free maps directions mapquest direction main mapquest maps death direction driving full hollywood scandal site sixteen story tour mapquest montreal
    8d45f8vmd477

  6. suresh Says:

    Hi Venkat, When I use the GO URL for a request which contain the column filter prompt then the column filter prompt is not appearing, instead I am directly being directed to request. How do I make sure that , I get proper column filter prompt before displaying the data.

    http://dev:9704/analytics/saw.dll?GO&NQUser=Administrator&NQPassword=&Path=/shared/OH/graph1

  7. Venkatakrishnan J Says:

    Use this sample Go URL for filtering columns http://localhost:9704/analytics/saw.dll?GO&NQUser=Administrator&NQPassword=Administrator&Path=/shared/Paint+Demo/Mapviewer/City+Sales&Options=md&Action=Navigate&P0=1&P1=eq&P2=”Dimension%20-%20Customer”.CITY&P3=”OAKLAND”

  8. suresh Says:

    Hi Venky,
    I want use to use the prompt list to select the data rather then specifying the data in URL.
    What I am trying to achive here is the a link in our application which will take the user to request and user should be able to select the data (, from prompt filter dropdown list )before displaying the table/chart.

  9. Venkatakrishnan J Says:

    In that case you can create a dashboard having a dashboard prompt and the report. Then in the link just have a go url to the dashboard.

  10. Manohar Says:

    Hi Venky,

    How can we pass dashboard Group as a variable in the URL?

  11. Manohar Says:

    I meant dashboard Group as a Parameter in the URL

  12. Venkatakrishnan J Says:

    I dont understand what you mean by Dashboard Group. Do you mean Presentation Catalog Group?

  13. Manohar Says:

    Yes

  14. Venkatakrishnan J Says:

    No. Its not possible. They are not supported.

  15. Raghuraman Says:

    How Does External Authentication Work When You Do External Launch

    That is Presentation Manager Lauches BI Publisher.

    http://l000702057.hphc.org:9704/analytics/saw.dll?AdvancedReports&_scid=uFQ9jZvvsXM does not work

    http://l000702057.hphc.org:9704/analytics/saw.dll?Answers&SubjectArea=%22Payables%20Operations%20Analysis%22&acf=450519630

    Works

  16. Vinayak Says:

    Hi,

    Is there a way I can specify which particular page in a dashboard should be displayed on clicking the url?

    Like in my Dashboard I have the default page, then another for sales info , another for profits etc…

    I want to provide separate links to each of these pages..
    Is is possible?

    -Vinayak

  17. Vinayak Says:

    Sorry, what I actually wanted to ask in my previous comment was that how can I specify to go to a required dashboard. Ex: If I have more than one dashboard, Dashboard1 and Dashboard2 along with the default one, how do I specify in the URL that I want to display Dashboard1 when I click?

    -Vinayak

  18. Venkatakrishnan J Says:

    You should use Bookmark or Prompted links. Check my blog entries here http://oraclebizint.wordpress.com/2007/11/13/oracle-bi-ee-101331-bookmark-and-prompted-links-passing-prompt-values-to-dashboards/ and here http://oraclebizint.wordpress.com/2007/11/01/oracle-bi-ee-101332-hiding-banner-in-dashboards-using-go-url/

  19. MahendraKumar Says:

    Hi Venkat,
    I created three repository. Now I want to create different url for different repository. How can I Create? Please help me out.

    Regards
    Mahi

  20. Jelle Says:

    Deear Venkat,

    Is it also possible to use the parameters to authenticate via SSO. In the documentation I read something about SSO and HTTP Headers. Do you (or someone) else have experience on this topic?

    Thanks and thumbs up for this nice OBIEE community
    Best regards,
    Jelle

  21. juanc llanes Says:

    How to Pass Parameters to external URL page. How to use Action Link with external url page?

  22. Steve Jones Says:

    I want to build a dashboard with two pages.

    Page 1 will be a Chart view with drill capability, built from a very stripped down Answers Request.

    Page 2 will be a different Answers Request, with a lot of detail. I built it with 4 “Is Prompted” filters.

    I want users to be able to drill down to any level in the Chart on Page 1 and then navigate to Page 2.
    The Page 2 Request will take the context from Page 1 at whatever level the user has drilled down
    to in the Chart.

    On my Page 1, I added a Guided Navigation Link. I set the Source Request to be the Page 1 Request.
    I set the Target to be a URL, and I specified the Request on Page 2.

    When I tried it out, I got an error: Path not found (/users/sjones/Quote+Counts/quote_count_SLAVE)

    Here’s my URL:
    saw.dll?Go&Path=/users/sjones/Quote+Counts/quote_count_SLAVE
    &Action=Navigate&P0=4&P1=eq&P2=”Products.Business%20Group”&p4=eq&P5=”Products.Business%20Code”
    &P7=eq&P8=”Products.Family%20Code”
    &P10=eq&P11=”Products.Product%20Line%20Code”

    First, is my design supported?
    Second, what’s wrong with my Path?
    Third, how do I dynamically pass values for the Prompts in the request on Page2?

    — Steve

  23. Aneesh Says:

    Hi,

    I am trying to display BI Portlet within webcenter, but it is giving an authentication error.

    According to the guide - “Authenticate with administrative credentials — With this approach, the Portlet remembers the credentials of the Oracle BI Administrator (that is, user name and password) and passes them to Oracle BI Presentation Services along with the login name of the current user. Because Oracle BI Presentation Services knows the user name and password of the Oracle BI Administrator, it knows that it can trust that the login name of the current user is actually the name of the user
    who was properly authenticated.”

    Currently the application is not secured. I am not sure how it is trying to get the login info for the current user, so that I could mock the same.

    It would be great if you could provide some input.

    Thanks
    Aneesh

  24. Oracle BI EE 10.1.3.3/2 - Integration into External Applications/Portals « Business Intelligence - Oracle Says:

    [...] EE 10.1.3.3/2 - Dynamic Column Headers using Presentation Variables, Sets and Conditional FormattingCustomizing OBI EE – GO URL ParametersUsage Tracking in OBI EEOracle BI EE 10.1.3.3/2 - Report Comments in Dashboards and Chat Options - [...]

  25. Kurt Wolff Says:

    Actually, the doc and, echoing the doc, what is written here is incorrect on one point. The name of the view to display is the name of the view as found in the XML. For the first chart, this would be staticchart!1 (but check the XML to be sure), not Chart1.

  26. Venkatakrishnan J Says:

    You are right Kurt. In fact the docs are wrong on the Dashboard URL too. Dashboard URL will ignore all the parameters supplied to it. One has to use PortalPages parameter.

  27. Ramana Reddy Says:

    Hi Venkatakrishnan

    My client has a requirement to navigation link to be setup from the values in report which are basically calculated metrics with a case statement. For example a report having SR Number, SR Status, # of SR’s. Here #SR’s has a case statement based calculation. Requirement is to have drill functionality on any number displayed for #SR’s to a report which shows a report with status as closed. I understand it might be possible with GO URL and pass parameters method. I would appreciate your guidence

    Thanks
    Ramana Reddy, Oracle

  28. Shailen Says:

    Hi Venky,

  29. Shailen Says:

    This feature of passing filters through GO URL is interesting but I am not able to implement it in my system.I tried dynamic sql and viewing a report with given path in the GO URL. But when I try filter with “&Action=Navigate&P0=1&P1=eq&P2=Markets.Region&P3=’CENTRAL%20REGION’”,
    it doesn’t work for me.The report simply ignores the filter and comes as it is. I tried this with the paint demo and the url is here:
    http://myComp:9704/analytics/saw.dll?GO&path=/shared/Paint%20Demo/Standard%20Reports/Geographic%20Sales%20Summaries/Share%20of%20District%20Sales&Action=Navigate&P0=1&P1=eq&P2=Markets.Region&P3=’CENTRAL%20REGION’
    Please help me resolve this.

  30. Anand Says:

    Hi Venkatakrishnan,

    Your blog is very informative, but I still have a question.

    How can I access Dashboard input parameters (used in prompts) in my BI Publisher reports? Actually my requirements is that these input parameters must be printed in the BI Publisher reports.

    Thanks
    Anand

  31. Rajesh Nadipalli Says:

    Great blog and helpful for OBI developers like me. A question, I tried this for my dashboard and keep getting an error - any ideas?
    Error Codes: IVL7WLMD:OQ78YWIW
    Assertion failure: rDocument.getRootElement()->getName() == ksReport at line 719 of ./project/webreport/reportquery.cpp

  32. Rajesh Nadipalli Says:

    The GO URL can only be used for a report and does not work for the dashboard. This is an issue for my team as we present a collection of reports to our users. That said, GO URL is *not* a new feature for OBIEE, there is a hidden unsupported feature (Version 7.8.4 or higher) for the complete dashboard that does work, example -

    http://server/analytics/saw.dll?Dashboard&Action=navigate&P0=2&P1=eq&P2=VERSION_DIM.VERSION_NAME&P3=XYZ&P4=eq&P5=TESTCASE_DIM.ACCOUNT_NAME&P6=ACCOUNT&Page=IOS+Version+Report&PortalPath=%2Fshared%2FQIS%2F_Portal%2F.QIS&NQUser=USERNQPassword=PASSWD

  33. arghya roy Says:

    I have this requirement where I need to pass 2 values (one is the YEAR (a Global dashboard prompt) and the other a column value of a column in an Answers report to an external application. Currently we pass the column value through a URL. How do I additioanlly pass the other YEAR parameter? Is it possible. As far as the documentation for GO URL is concerned, I havent seen a way where we can pass on multiple parameters to an external application.

  34. Venkatakrishnan J Says:

    Arghya - Yes very much. I have an example here http://oraclebizint.wordpress.com/2008/02/17/oracle-bi-ee-101332-drilling-on-measures-passing-multiple-parameters-during-drills-go-url-and-html-formatting/

  35. Diego Anderiz Says:

    Hi Venkatakrishnan,

    Great blog.

    We are trying to generate a chart that Oracle BI EE is not able to generate and integrate it into a dashboard.

    To do this we need to use a product called Dundas that we understand can use the Oracle BI Server as an ODBC data source.

    In Answers, a table is generated with the correct data and a narrative view is created where code is used to call an ASP page, where the Dundas created chart is generated.

    We have to pass to this page the “logical SQL” generated by Answers for it to use against the ODBC of the Oracle BI server. This removes the processing of the large data set in the code in the narrative which is more efficient.

    The asp page uses the return set of this query and renders the graph of the wind rose in the page, which appears embedded in the dashboard.

    Has anyone done this type of integration before and Does it seem like a plausible workaround?

    How do I get the “logical SQL” into the external app? Is it using tyhe GO URL statement?

  36. Rajendra Prasad PV Says:

    Hi Venkat,

    Greetings. I wanted to know whether each time Go URL is used by passing NQUser & NQPassword as parameters, I think the presentation services create session each time. Is there anyway we can handle not to create more than one session?

  37. Sandra Says:

    Hi Venkat,

    Is it also possible to use the &Options=mdfr directly in an answers-navigation?
    I have a measure from where i navigate to another report. So i set the column property to navigate and set the path. However, when i add behind the path &Options=fr then i get an error message.

    I’m trying to achieve that i also have a “printer friendly” button in the report I navigate to.
    Thanks

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>