Monday 17 September 2012

Master-Detail Report Feature of OBIEE 11g


Working with the Master-Detail Report Feature of OBIEE 11g (pt. 1)

One of the new features included in OBIEE 11g is the Master-Detail linking feature. The Master-Detail linking allows you to establish a relationship between 2 or more views; one view is called the Master and will drive changes in 1 or more views called detail views.

You can think of a Master-Detail relationship in a similar manner that you would when navigating from 1 report to another works, but you do not lose sight of the master view.

So, how do we implement a Master-Detail link?

We start out by defining an analysis that will be used to create the master view. Here we have created a simple analysis and filtered for Year = 2008.


Now we want to configure this analysis so that we can create our master view. We will select the “Per Name Qtr” column as the data driver; so, we open the Column Properties window of this column and move to the Interaction tab.

Here we select the “Send Master-Detail Events” under the Value Primary Interaction. Once you select this option a secondary edit box labeled “Specify channel” will be made available. You can enter any unique identifier in this box. For our example, we have entered “MDS2”.

Unlike some interaction options like Action Links” which is available on both Column Heading and Value, the Master-Detail option is only available on the Value. This has to do with how a Master-Detail link functions. The value of the cell you click on is passed to the detail view(s); thus, a column heading cannot be used.


We now navigate to Results and create the view we want as our Master view. Here we are using a simple tabular view. Notice that our “Per Name Qtr” values do not show the typical hyperlink that you would expect from the time dimension column.

Now we need to create a detailed view that will listen to events from our master view. To do this, we will add an additional graphical view from the same analysis. Our graphical view will look at Revenue by Brand with our Quarter values placed into a view slider.

With our graphical view in edit mode, we need to open the properties window.

One of the properties available to us is the “Listen to Master-Detail Events” checkbox. By checking this box, we can define this view to be a detailed view for the event channel we want. In our case, we will enter the value “MDS2” as our event channel which is the same value we defined on the “Per Name Qtr” column properties which is our data driver on the master view.

We want to validate our Master-Detail report is working as expected. We will do this by placing the compound layout on to a dashboard page. I have edited the compound layout so that my views, master and detail, are side-by-side. When you click on a cell under the “Per Name Qtr”; such as, “2008 Q2” on the tabular master view, the secondary detail view (graph) accepts the Qtr value and the slider automatically moves to the selected value.


Working with the Master-Detail Report Feature of OBI 11g (pt 2)
In previous part of this series, I stepped through how to configure a Master-Detail report link when using the same analysis criteria to create the master and detail views. However, what if we want to create a totally independent detail view based on different criteria. Can we link the Master view from 1 analysis to the Detail view of another analysis?

Let’s see.

We will the Master view we created previously; so, we need to first create a new, independent Detail view and set our Event channel, the Event channel we used previously was MDS2.

Our event channel on our master view is driven by the “Per Name Qtr” so we need this column on our new detail view so that it can accept and act on the value being passed.


We will use a pie chart view for our detail view. With the view created, we can now set the Event channel through the view’s property window. We are using the slider again for the Quarter to make it easy to see the change.

With our new detail view created and configured to listen on the same channel as our master view we will add the view to our dashboard and check out if it works as we hope.

So, we have now shown that the detail view of a Master-Detail link does not need to come from the same report criteria as the master view.

I did come across an issue when using Master-Detail links and setting up a detail view to listen on the event channel, but configuring the layout of the detail view to not allow it to respond correctly. For example, I added a tabular view to my Master-Detail dashboard but placed the Qtr column in the “section” area of the layout. The report displayed all 4 quarters when I issued the event and my other detail views responded as expected. However when I tried issuing a subsequent event, none of the detail reports would respond. For the tabular view to respond correctly to an event, the column accepting the event must be placed in the “page” area of the view layout.

Here is a table containing specifics about views being used as detail views.

Working with the Master-Detail Report Feature of OBI 11g (pt 3)
The final installment of this series will look at configuring detail views to listen to multiple event channels.

My first step will be to create a new Master View analysis. I am going to create a simple tabular view as my second master view including the Qtr column I have used previously for my data event driver. I have set the Channel name to MDS3 in the same way I configure my first master view.


I have saved that analysis and now want to edit 1 of my detail views to listen on this channel as well as the MDS2 channel it is currently listening on.

Just a side note: If you have been following this series, you will notice the view names have changed as well as the view layout on the dashboard page from my previous posts. I have renamed my views and reorganized them on the dashboard to make things a little clearer. Other than the changes I have outlined here, the other views remain unchanged.

So, the detail view I decided to modify is the second one I created which has the pie chart. Opening the pie chart view in the editor window and opening the properties for it, I have added my new channel to the event channel. Notice the channels are separated by a comma. With that change made, I then save this analysis.


Adding the new Master view to my dashboard page, I am ready to test this new functionality.

Clicking on the 2008 Q2 cell from my first master view, both detail views respond with the Qtr column slider moving appropriately.


I now click on the 2008 Q3 cell on my second master view, on the detail pie chart view does respond as expected with the Qtr slider moving to the appropriate value while the other detail view remains unchanged.

Thus we can see that a detail view can listen to multiple events from different master views.

There is actually more to learn and do with Master-Detail links but that is a different discussion as it involves extending OBI with some custom code. I will leave that for a later time.

5 comments:

  1. Thank you for your help! Helped me a lot in building a model. (:

    ReplyDelete
  2. Is this possible to use prompt for this masterdetail event?
    Thank you

    ReplyDelete
    Replies
    1. I have one more question,
      i need a report with a prompt having two reports for eg:
      prompt:
      default
      break by day
      these are the two reports when i select one it should display the particular report which one i have selected.

      Is this possible with the master detail event or any other method is there ,please suggest i am need of this requirement ASAP.

      Delete
  3. Hi,
    I want to apply master detail between two reports say. rep1 and rep2. Both have columns Col1 but they are from different fact tables (physical). is it possible ?

    ReplyDelete
  4. How can you pass a single value on the PI-Chart to a report that is a normal table layout ?
    My PI-Chart has 10 different values, when I click on one of them I want to use that value in the other report and retrieve data in this based on what was passed.

    ReplyDelete