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

Purpose

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)

Solution

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

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".

Documentation / Reference


Powered by ComboStrap