OBIEE 12c Released

OBIEE 12c released on 24-OCT-15. Please find below the required links.

Download Link - http://www.oracle.com/technetwork/middleware/bi-enterprise-edition/downloads/business-intelligence-2717951.html

Documentation - http://docs.oracle.com/middleware/1221/biee/index.html

How to Cancel running query in OBIEE



OBIEE support cancel on all (or all the major ones) sources. It calls the appropriate cancellation method for each product. For example, for DB2 it call SQLCancel(). For Oracle it call OCIBreak(). 

The only automated control OBIEE has for cancelling request queries is via the Admin tools' Permissions > Query Limits 'Max rows' and 'Max Time' options. Once either of these limits has been reached, OBIS will send a cancel call to the source database. A user may also explicitly cancel a running request as well. Whether or not the cancel is effective on the database is very much a timing issue. For example, if the cancel call is received while the request is in a fetch state, then most databases will ignore it, since it would typically take longer to back out the transaction and cancel, then to allow it to complete.

And, whether the cancel call is received by the database in time to effectively cancel the request depends on several factors as well, like the complexity of the request, and the speed of the OBIS server and / or the database server. For example, it does take time for OBIS to act on a request that has exceeded a repository-defined query limit. During that time, the database is still processing the request. Pending the factors mentioned earlier, the request may have passed the point where the database sees cancellation as a viable option."

Additionally, when a user executes a cancel command in a Presentation Server session a cancel request is sent to the BI Server, which then sends the appropriate cancel call to the source (OCIBreak for Oracle).

[nQSError: 14025] No fact table exists at the requested level of detail

One of the most common error message that is seen while creating reports is shown below.



The first thing we check in case of this error is whether we have given proper levels in the content tab. Sometimes levels were not properly given in rpd and correcting it solves the problem. But this might not be the case in all scenarios. One such scenario is explained below.

I am using oracle HR schema for the demo purpose.

Physical Diagram


BMM Diagram


Dim - Employee is sourced from the physical tables Fact_Employee & Dim_Department. This is done so as to bring the employee information and department information in a single logical table.


Fact - Employee is sourced from Fact_Employee.
Dim - Location is sourced from Dim_Location which contains the geographic information.

Now lets try creating some reports.


 The above mentioned criteria gives the desired result.





Now include the location information as well in the analysis.


Now when we click on the Results tab, we  are not getting the desired result, instead we receive an error message stating " No fact table exists at the requested level of detail".

We received this error message after including a column from the Dim - Location table. Now when the logical request is sent to BI server, BI server gets is unable to find join between Dim_Location and Fact_Employee. The join between Location and Employee happens via Department table. So we should include this information in design so that BI server is able to generate proper physical query for the incoming logical request.

Add Dim_Department as an LTS to the Dim - Location table.






Check in the changes in rpd and try creating the report again. After making the above mentioned change, BI server will now be able to understand how to create join between Dim - Location and Fact - Employee.






Include custom links in OBIEE Global Header



By default, the global header in Oracle BIEE contains menus and options that allow you to navigate easily among features. You might like to customize the global header and the Get Started section of the Home page to better meet the needs of users by disabling certain links or including your own links. Changes that you make to the Get Started section do not affect the Help menu in the global header. For custom links, you can specify various attributes, including the following:
·         The text for the link (either a static string or a message name to use for localization).
·         A URL to access.
·         Whether the page from the URL replaces the current page or opens in a new tab or window that you can name.
·         The relative ordering of links in the header.

Update the customlinks.xml file to specify customizations to the global header
1)      To include Gmail before Catalog link, insert the below mentioned code in the customlinks.xml (ORACLE_INSTANCE\bifoundation\OracleBIPresentationServicesComponent\coreapplication_obipsn)
<link id="l5" name="Gmail" description="gmail" src="http://www.gmail.com" target="blank" iconLarge="common/gmail.png" >
   <locations>
      <location name="getstarted"> /
      <location name="header" insertBefore="catalog" />
   </locations>
</link>
Before custom links are visible on the Home page, you must edit the instanceconfig.xml file to include the CustomLinks element and the Enabled element within it (whose default is true).
2)      Open the instanceconfig.xml file for editing
3)      Search for the ServerInstance section, in which you must add the CustomLinks element.
4)      Include the elements and their ancestor elements as appropriate, as shown in the following example:
<ServerInstance>
   <CustomLinks>
      <Enabled>true</Enabled>
      <filePath>c:/mydir/mysubdir/customlinks.xml</filePath>
   </CustomLinks>
</ServerInstance>
 
5)      Save your changes and close the file.
6)      Restart Oracle Business Intelligence.


Increase the Java Heap size for DAC Server


The Java heap size for DAC server can be changed by changing Java heap size in startserver.sh file

  1.   Login to DAC Server machine and sudo appadmin.   
  2. Navigate to dac folder cd $DAC_HOME/dac 
  3. Stop the DAC Server ./stopserver.sh
  4. Make sure on the Windows DAC client, the DAC Server connection status icon changes to red & disconnected.  
  5.   Edit startserver.sh and increase the java heap size by changing –Xms256m and –Xmx800m values to –Xms1024m and –Xmx2048m respectively .
    vi startserver.sh
    $JAVA –server –Xms1024m –Xmx2048m –cp $DACCLASSPATH com.siebel.etl.net.QServer
  6.  Save the file 
  7. Start the DAC Server.  Make sure in the DAC client, the status icon changes to connected