importance of defining dimensional hierarchies

March 19th, 2009 1 comment

Dimensional modeling is very important in OBIEE. Many mistakes happen because of incorrectly defined time dimension or other dimensions. This service request below is a demo of how an incorrectly defined key in the beginning can block the development efforts in the future.

Overview:
========

Modified rpd and added a new dimension for Key Accounts (Sales.”Key Account”.”Key Acct”) into the Sales subject area . After this change when building a report with Sales.Brand and drillingdown on Brand to show Brand_SKU ( a different dimension throws an error in Answers.

ERROR
===========-
[nQSError: 14020] None of the fact tables are compatible with the query request Brand.Brand.

STEPS
===========
By following these steps the issue can be reproduced:

1. Add dimension called Sales.”Key Account”.”Key Acct into sales subject area in rpd
2. save rpd and checkin changes
3. create answers report with a different dimension Brand.
4. Drilldown on Brand to show the next level “Brand”.”Brand_SKU”.
5. Get the error mentioned above

EXPECTED BEHAVIOR
===========
The report should work fine because the “Brand”.”Brand_SKU” was not modified at all.

Business Impact
===========
This is a very important issue that is holding up all BI projects. You cannot move forward until this issue is fixed.
Cause

The error thrown when drillingdown from Brand to Brand_SKU is caused because of incorrect definition of level keys in your rpd. The issue is, that by definition, a key is the lowest level of a table. Any higher levels are made up of aggregating the lowest or detail level. Since Brand and Product have the same detail key, there should be some consistency between the detail or lowest level of their respective hierarchies. There is not. The lowest level of the Brand hierarchy has a level key of CHILD_KEY_WID. The lowest level of the Product hierarchy has a level key of ‘SKU Nbr’ which is mapped to LVL6_KEY. It seems that the navigator is expecting the same detail key but is not seeing it. This seems to be the cause of the navigation error.

As confirmed by reviewing your rpd inhouse, the level keys are not properly defined for Brand and Product dimensions.
The levels were not defined according to best practices. The document from Engineering that lists the issues in your rpd that dont meet best practice is attached to the SR.
Solution

Please follow these steps in order to fix the error “[nQSError: 14020] None of the fact tables are compatible with the query request Brand.Brand”

1) Open rpd using Admin tool
2) Select BMM layer and delete the current hierarchy created for Brand
3) Make the following change to Product Dimension

–Dimension –Logical File –Physical File
Product Product HSAMI_SKU_DH and
HSAMI_BRAND_SKU_DH

The Product Dimension has two hierarchies, CMDYGRP and BRAND:
ALL
CMDYGRP
COMMODITY
SKU
BRAND
SKU

So now both hierarchies are constructed in one dimension over
one logical dimension table, with multiple phyiscal source tables.

4) Save changes to rpd
5) Test in Answers by creating report with Brand and Product columns
6) Navigation/Drilldown from brand and product should work fine.

OBIEE Training

March 18th, 2009 21 comments

I decided to write this post after seeing numerous basic OBIEE questions on OTN OBIEE forums. I think people are answering those easy questions (including myself) because of easy points (i noticed that frequently those don’t get assigned) and because of experts’ generosity. Problem is that most of the time, those questions can be easily found using search feature. Moreover, 80% of the time, just searching the documentation would do the trick.

OBIEE has become an attractive career opportunity and numerous course offerings have come out.

I just wanted to warn fellow consultants about some companies promising to make anyone an OBIEE expert in a week. Remember that when something sounds too good to be true – it probably is. OBIEE is a rather complex tool by itself, not only that – one also needs to know about various ETL processes, dimensional modeling, databases and more.

Mark Rittman published a very thorough article on what’s required to be a successful Oracle BI Developer – What Skills Does an Oracle BI Developer Need in 2009? By the way, congratulations on the new US office!

Some of the things he mentioned include OWB and Hyperion Essbase (I realized need to work more on my Hyperion skills – I was putting it away) .There’s no way one can learn those in 1 week.

Again, there’s nothing wrong with training, especially taken from reputable vendors, however, I suggest you conduct a throrough research first.

Also, I don’t want to discourage anyone, but I believe that theoretical training by itself is mostly useless unless followed or accompanied by real-life problems and examples.

Categories: OBIEE Training Tags:

Is it possible to use Dashboard Prompts to override Session Variables?

March 18th, 2009 6 comments

This is a two step process:

1) Tick “enable any user to set variable” checkbox in the RPD for the session variable
2) When you create a dashboard prompt, in the Set Variable list, choose to populate a variable for the dashboard prompt using a server request variable.

If you set a server variable it will override explicitly the value of this variable set via the initialization block.

The variable is changed in the dashboard that uses the prompt( where the variable is set).

display prompt values in Excel

March 18th, 2009 No comments

How can we get the Prompt values to be displayed when the report is exported in MS Office formats or printed in PDF using the ‘Download’ or ‘Print’ report links?

When you use the ‘Printer Friendly’ option on the Dashboard, all objects on the Dashboard get downloaded for printing including the Dashboard Prompt section.

However using the report ‘Download’ or ‘Print’ link, this does not print the Dashboard Prompt section.
Please note this is expected behavior. Using the Printer Friendly icon at the lower lefthand corner, it prints the entire dashboard. Alternatively the ‘Download’ or ‘Print’ link option is available, for the report. So this will print the Compound layout view of the report, or any specific report sections that have been made available on the Dashboard.

A workaround to have the Dashboard Prompt values displayed when you use the Report ‘Download’ or ‘Print’ link is by having the filter view as part of the report.

Oracle has now raised the Enhancement Request# 8242921 to address this matter. The enhancement request is to enhance the product so that so there is also an option to download to the various formats at the dashboard page level. Similar to the Dashboard Page ‘printer friendly’ functionality.

Removing My Dashboard

March 11th, 2009 No comments

Customer want to take away from all users ‘My Dashboard’. They want that the users only have the choice between the ‘common Dashboards’.
But the users (the report creators) need My Folders.
So Manage Privileges – Catalog – Personal Storage (My Folders and My Dashboard) does not fit exactly.

Customer has created default shared dashboards that they want the users to see/read by default, but they want to restrict user access to the Shared Dashboard folders.
They want users to be able to access their My Folders directory, but not have access to their My Dashboard link or My Dashboard folders. This is not possible with out of box functionality.

The following enhancement request has been created to benefit the users.

BUG 7665499 – TAKE AWAY FROM ALL OUR USERS ‘MY DASHBOARD’

Solution

The only way to deny access to ‘My Dashboard’ is via the “Personal Storage (My Folders and My Dashboard)” Catalog privilege. Denying this privilege to a group or user will take away access to both ‘My Dashboard’ and ‘My Folders’ – currently, you can’t separate the two. Therefore I have logged the following Enhancement Request.

BUG 7665499 – TAKE AWAY FROM ALL OUR USERS ‘MY DASHBOARD’
Alternatively, here is a suggestion of using current functionality would be:

1. Create a web catalog group and dashboard via “Manage Presentation Catalog Groups and Users” to be used as the default user dashboard.
2. Grant the ‘Everyone’ web group the appropriate privilege to this catalog group via “Manage Presentation Catalog” – e.g. ‘Read’.
3. In the admin tool, create a session init block to set the ‘PORTALPATH’ session variable to the webcatalog path of the default dashboard page.
3.a. You can find the path by looking at the properties of the folder under ‘_portal’ in the catalog group folder the default dashboard was created in – e.g. “/shared/user_default/_portal/Home”.
3.b. The init string could either select the literal path (e.g. select ‘/shared/user_default/_portal/Home’ from dual) so all users would be routed to the same dashboard. Alternatively, the path could be stored externally, e.g. in a table, and selected from it per userid. That way, it would be manageable outside of the admin tool.

This would force all users to the default dashboard specified in the path used to populate PORTALPATH for all users.
One issue that may occur is with existing users that have set their ‘Default Dashboard’ to anything but ‘Default’ in the ‘My Account’ link – they may be required to set it to ‘Default’, then log-off/log-on for the default dashboard setting to take affect.
I know of no way to get around this potential issue for this scenario short of each user making the change OR deleting users from the webcat such that a subsequent logon will ‘re-initialize’ their account (which will then use the init block set PORTALPATH value). Both of these options seem severe, and the second may prove problematic as long as the ‘My Account’ link is still active.