Oracle BI EE 10.1.3.3/2 – iBot Results within Dashboard Sections and Auto-Refreshing Sections

We will be seeing 2 topics today which are quite interesting especially for users who send a lot reports to end-users using iBots. The first topic deals with the display of scheduled reports(what is being sent to end users) within a custom dashboard section (not from the Alerts link). This could come handy especially for administrators who want to see what was sent to users without navigating to the Alerts section. First lets start with understanding how to display all the alerts/reports that are actually sent to different users. In order to get a list of all the ibots that are sent to you(Interactive Dashboard should be part of your Active Delivery Profile) create a section in your Dashboard and rename that section as _Delivers. That will show all the list of ibots.
      
      
Remember, for the above to work you need to have atleast one report within your dashboard. Now you can see the list of reports that have been sent to you within your dashboard. But our aim is to see the actual reports instead of a list. So, now lets find out what is the actual URL for report URLs displayed above. In order to do this you can either use the Firebug extension mentionedhere or just review the HTML source of the dashboard page.
      
As you would see the actual URL of the report would be something like the one below(in this example i am taking the URL of the Sample Report shown above),
saw.dll?CheckDelivery&_scid=QLwHBBnYtHM&EncDelName=UgBlAHAAbwByAHQAIABCAHUAcgBzAHQAMQAgAFoAYQB5AE8AYQBTAEwAdgBzADIAMQBWADkAZQBmACsAVABzADYAMQBuAGcA
CheckDelivery is the command that fetches the ibot and _scid can vary dynamically(this is not required).
EncDelName is a dynamically generated name by OBI EE that remains constant once an ibot is saved first (even if change any parameters of the ibot this name will remain constant).
Lets test out the actual iBot report that was delivered using the below URL
http://localhost:9704/analytics/saw.dll?CheckDelivery&EncDelName=UgBlAHAAbwByAHQAIABCAHUAcgBzAHQAMQAgAFoAYQB5AE8AYQBTAEwAdgBzADIAMQBWADkAZQBmACsAVABzADYAMQBuAGcA
      
You can also enter the NQUser and NQPassword to pass the username and password directly to get the report directly. Now lets put this URL in a embedded content section and see whether we are getting the report inside the dashboard.
      
Once this is done now lets go back to the ibot and change the delivery content to another report(this is to ensure that we are seeing the changes that is being done to the ibot.
      
      
As you would see above the report would change automatically based on what was sent in the iBot. Now lets move on to the second topic which is to enable auto-refreshing of sections within a dashboard. This is one the features that would enable someone to have realtime reporting in BI EE. But again before doing this beware of the excessive overheads that you might incur because of constant refreshing. This is based on iframes and meta tags of HTML. Lets start with a simple example. Our aim is to have a dashboard and a simple report within this dashboard. The dashboard should not refresh but the report has to constantly refresh after certain regular intervals. In order to do this lets start with creating a simple report.
      
Go to the narrative view of this report and enter the following html
 <head>
<meta http-equiv=”refresh” content=”10″ />
<iframe src=”http://localhost:9704/analytics/saw.dll?GO&nquser=Administrator&nqpassword=welcome1&path=/shared/paint+demo/demo+reports/Brand+Sales” width=”320″ height=”300″></iframe>
</head>
The iframe points to the same report of which it is a part of. The meta tag gives the refresh capabilities. The above report basically refreshes after every 10 seconds. As you would see this would refresh only this section and not the entire report. Of course there are certain caveats while using this since this refresh does not clear some cookies. But this can help you in achieving a basic refresh mechanism.