8
OBIEE Selecting SKIN and STYLE from URL January 07th, 2009 | Category: Business Intelligence Sometimes you want to redirect a user to a different SKIN and or STYLE. One method is giving the SKIN/STYLE name in the login URL. To enable this feature you first you have to define a parameter list in Auth\ UserIdPassword part of the instanceconfig.xml: <Auth> <UserIdPassword enabled="true"> <ParamList> <Param name="NQ_SESSION.STYLE" source="URL" nameInSource="STL"/> <Param name="NQ_SESSION.SKIN" source="URL" nameInSource="SKN"/> </ParamList> </UserIdPassword> </Auth> Restart the presentation server. Now add the SKIN and STYLE to the URL: http://vmobiee:9704/analytics/saw.dll?Dashboard&SKN=siebel77&STL=siebel77 {Remember to clear your browser cache first!} OBIEE LOV prompts The classical way of making a LOV prompt is creating SQL in the form: SELECT case 1=0 then TABLE.COLUMN else "YES" end from BM_NAME union all SELECT case 1=0 then TABLE.COLUMN else "NO" end from BM_NAME This always produces costly SQL since OBIEE will execute this as a SELECT DISTINT against the reference table. Much better is to add a small LOV table to repository with it’s own business model. I created a small XLS spreadsheet with a couple of LOV’s: Classification: Genpact Internal

Obiee Practice

Embed Size (px)

DESCRIPTION

mmm

Citation preview

Page 1: Obiee Practice

OBIEE Selecting SKIN and STYLE from URL

January 07th, 2009 | Category: Business Intelligence

Sometimes you want to redirect a user to a different SKIN and or STYLE. One method is giving the SKIN/STYLE name in the login URL.

To enable this feature you first you have to define a parameter list in Auth\UserIdPassword part of the instanceconfig.xml:

<Auth>     <UserIdPassword enabled="true">         <ParamList>             <Param name="NQ_SESSION.STYLE" source="URL" nameInSource="STL"/>             <Param name="NQ_SESSION.SKIN" source="URL" nameInSource="SKN"/>         </ParamList>     </UserIdPassword> </Auth>

Restart the presentation server. Now add the SKIN and STYLE to the URL: http://vmobiee:9704/analytics/saw.dll?Dashboard&SKN=siebel77&STL=siebel77

{Remember to clear your browser cache first!}

OBIEE LOV prompts

The classical way of making a LOV prompt is creating SQL in the form:

SELECT case 1=0 then TABLE.COLUMN else "YES" end from BM_NAME union all SELECT case 1=0 then TABLE.COLUMN else "NO" end from BM_NAME

This always produces costly SQL since OBIEE will execute this as a SELECT DISTINT against the reference table.

Much better is to add a small LOV table to repository with it’s own business model. I created a small XLS spreadsheet with a couple of LOV’s:

Classification: Genpact Internal

Page 2: Obiee Practice

Next I imported it into the repository and create the dim version of the LOV:

Made a very simple business model for it:

And of course a presentation layer:

Now you can create each LOV prompt as a direct SQL request:

Classification: Genpact Internal

Page 3: Obiee Practice

SELECT LOV.LOV_VALUE FROM BM_LOV WHERE LOV.LOV_TYPE = ‘BOOLEAN’ ORDER BY LOV.LOV_SORT

The result can be stored in a presentation or a repository variable for late processing:

OBIEE bypassing the presentation / web cache

In addition to settings mentioned in this article:  http://knowledge.ciber.nl/weblog/?p=150. You sometimes you want to bypass the presentation / cache for development purposes. Or more often when you get weird write back behaviour. Add this to the instanceconfig file:

 

<CacheMaxExpireMinutes>-1</CacheMaxExpireMinutes>

<CacheMinExpireMinutes>-1</CacheMinExpireMinutes>

<CacheMinUserExpireMinutes>-1</CacheMinUserExpireMinutes>

OBIEE using timeline graphs in pivot views

Consider the following data:

If we put this in a timeline graph we get:

Classification: Genpact Internal

Page 4: Obiee Practice

One of our customers wanted to use the graph from a pivot view to create an individual graph for each machine.

One problem…. Oracle forgot to make it available for the pivot view, it’s not in the graph select dropdown list:

My colleague Rob van Beek found a workaround. Go to the advanced tab of the report:

Classification: Genpact Internal

Page 5: Obiee Practice

In the Request XML look for the "pivotTableView" part.

 

Change the saw:template tid to :

<saw:template tid="charts/linetime.cxml"

Press the set XML button: , go to the pivot view:

You will get a warning like this:

This is because the pivot view template doesn’t know timeline graphs. If you really want you can probably hack OBIEE to suppress the warning, but I would just leave it like this.

Press OK to ignore the warning.

In your Compound lay-out you can see the results:

OBIEE Handling SCF data / PIT Reporting

Due to more and more compliance rules a lot of DWH’s these days have there data stored based on the SCF principal (Slowly Chancing Fact). A typical example of SCF data is the state of an order:

Classification: Genpact Internal

Page 6: Obiee Practice

I

f you want to do PIT reporting (Point In Time) you need to use the SCF columns:

One possible solution track is using creating a SCF_IS_PIT column in the repository based on a repository variable.

First let’s create a PIT_DATE session variable:

Next create the column:

Classification: Genpact Internal

Page 7: Obiee Practice

Our data will now look like this (Current date = 03-DEC-2008"):

If we add a filter to our report :

we only get "CURRENT" data:

For most users this is the information they are looking for. For those who need to go "back in time" with the same report, you simple add a prompt to the dashboard allowing them to set the PIT date:

Classification: Genpact Internal