Showing posts with label SYSTEM. Show all posts
Showing posts with label SYSTEM. Show all posts

Wednesday, February 3, 2010

OBIEE Report Name Length

Please Please Please keep the report name length of your OBIEE below 55! Why?
1. Long report name are hard to read for the user; What is the difference between:
Leftover vacation days male employee fixed contracts age 21-30
and
Leftover vacation days male employee fixed contracts age 31-40
image
2. They tend to run out of the dialog boxes:
image
3. Over 55 characters OBIEE starts to hash the file name, so they are harder to find on the file system:
image
4. If you want to use a scripting tool to create your reports, you will have to recreated the hash. This is almost impossible since Oracle will not tell the public how the Hash works.
5. A Little bird told that you might run into trouble when upgrading to 11g, they couldn’t confirm it was taken care of in the test program.
Till Nex Time

Friday, October 3, 2008

OBIEE Multiple Java Versions

Noticed today that OBIEE doesn't really like having multiple Java versions assigned, when updating from 3.3.x to 3.4.x be sure to point to the orignal JDK. You can find the original loaction in the instanceconfig.xml between the JavaHome tags.

Till Next Time

Wednesday, October 1, 2008

OBIEE the "developersprompt"

When I'm developing a dashboard I often want to play around with some basic settings like cache hit & seed and loglevel. Normally you have go back to answers or your administration panel to change these settings (temporarily). I always advice my developers to make a 'developersprompt'......It's a simple LOV prompt which returns me 3 presentation variables (dp_cache{0,1}, dp_seed{0,1} and dp_log{0,1,2}.




In the prefix of each report we default add:


(you can find the postfix block in the advanced tab of your report)

When developing your dashboard you can playaround with different settings to find the optimum. Leave the prompt on the dashboard and make in only 'available' for administrators or developers, so that in time of "trouble" your are quickly able to bypass the cache or turn on logging.

Till Next Time

Monday, August 18, 2008

OBIEE Identifying the server.

If you are working in a "Development Street" like environment, (separate Development, Testing, Acceptance and Production machines) , most of the time the data on these machines will not be the same. In most organizations the refresh rate for the production system is higher then on the other systems. On most development and test system you usually only have a subset of the production data. Problems can arise when during the development process you create “hard copies” of your reports (paper/pdf etc). These tend to start roaming trough the organization, and when they accidently land on a managers desk he/she might misinterpret the data.

Solution 1 would be to hardcode the “source name” on the report or in a repository variable. But… report and repositories are transported back and forth between the different “Development Street” parts, so there is no SOx compliant guarantee that the report is correctly identified.

Solution 2 is to dynamically put the server name and IP-address on the report. Problem is that OBIEE doesn’t have build in variables holding these values.
As long as your repository connects to at least one Oracle database, then you can use this method, using the Oracle sys_context function

In your repository make two new initiation blocks called:

INIT_ENV_TERMINAL

INIT_ENV_IP_ADDRESS

For the data source use:
SELECT sys_context('USERENV', 'TERMINAL') FROM dual

And
SELECT sys_context('USERENV', 'IP_ADDRESS') FROM dual

Put the data in repository variables named TERMINAL and IP_ADRESS.

In your reports you can call these variables using:

VALUEOF(TERMINAL) and VALUEOF(IP_ADDRESS)

Till Next Time

This article was original written for the Ciber Knowledge Blog:
http://knowledge.ciber.nl/weblog/?p=127

Monday, December 10, 2007

OBIEE referencing session variables in report title

After spending way to much time figering out the exact lingo, I decided to blog them for futher reference:
  • currentTime => @{system.currentTime}
  • system.productVersion => @{system.productVersion}
  • session.locale => @{session.locale} = en-gb
  • session.language => @{session.language} = en
  • rtl =>@{session.rtl} = false
  • session.loginTime => @{session.loginTime}
  • session.logoutTime =>@{session.logoutTime }
  • session.lastAccessTime =>@{session.lastAccessTime}
  • session.currentUser => @{session.currentUser.id} = administrator
  • user.homeDirectory => @{user.homeDirectory} = /users/administrator
  • user.id => @{user.id} = administrator
  • user.displayName => @{user.displayName} = administrator