How to force a user to filter on a column A every time column B is in the request

LDAP for users / RPD for Groups
January 7, 2009
OBIEE book
January 7, 2009

Something interesting I found while browsing OBIEE docs. This should be incredibly useful to force users select enough columns for the report.

How to not allow the execution of the request and show an appropriate error message to the user If request contains any of the following columns: (Sales Amount, Sales Amount With Tax, Ticket Count), and if request does not contain at least one of the columns (Date, Month, Year, Day of Week)

This is possible via the Blocking Requests Based on Formula functionality using a custom js file

This is explained in Oracle Business Intelligence Presentation Services Administration Guide > Administering Oracle BI Answers > Blocking Requests in Answers

To locate the documentation please navigate to OTN: http://www.oracle.com/technology/documentation/bi_doc.html
Then drill on “Oracle Business Intelligence Enterprise Edition Documentation”
> View Library (for the required version) > Documentation tab > Oracle Business Intelligence Presentation Services Administration Guide

The documentation does not state where to place the js file.
*Using oc4j as the web server, you need to put the custom .js in “OracleBI\oc4j_bi\j2ee\home\applications\analytics\analytics\res\b_mozilla” in order for the fmap: reference in the CustomMessages xml file to find it (also need to bounce both OBIPS & oc4j).

*Using IIS, you need to put the .js file in “OracleBI\web\app\res\b_mozilla”, not “OracleBIData/web/res” as the doc states (and bounce OBIPS & WWW Pub Service).

Also, you can use a full network path reference for the src argument in the custom xml file – e.g.:

<script language=”javascript” src=”\\mylabmachine\OracleBIData\web\res\myblocking.js” />

That way, you can place the .js file anywhere – in this example in the “OracleBIData\web\res” folder, not “OracleBI\web\app\res\b_mozilla”.

Leave a Reply