Using Initialization Blocks and Variables & Create Variables

You can use variables in a repository to streamline administrative tasks and modify metadata content dynamically to adjust to a changing data environment. A variable has a single value at any point in time. Variables can be used instead of literals or constants in the Expression Builder in the Administration Tool or in end-user analyses. At run time, Oracle BI Server substitutes the value of the variable.

In this set of steps you create a new initialization block, Current Periods, and three new dynamic repository variables—CurrentYear, CurrentMonth, and CurrentDay. You then use the variables as column filters in an Oracle BI analysis. You use the Variable Manager in the Administration Tool to define variables and initialization blocks.

To set up and use initialization blocks and variables, perform the following steps:

• Create an Initialization Block

• Create Variables

• Test Your Work

Create an Initialization Block

1 . Open the BISAMPLE repository in offline mode.

2 . Select Manage > Variables to open the Variable Manager.


3 . Select Action > New > Repository > Initialization Block.


4 . Name the initialization block Current Periods.


5 . Click the Edit Data Source button to open the Repository Variable Initialization Block Data Source dialog box.


6 . Click the Browse button to open the Select Connection Pool dialog box.


7 . Double-click the Connection Pool object to select it.


The connection pool is added.


8 . Enter the following SQL to determine the value of the current day, month, and year by finding the maximum value of the period key (BILL_DAY_DT) in the fact table:





9 . Click Test and confirm the expected results are returned. In this example, the results are determined by the data in the sample database used for this tutorial, which holds data through December 2010.


10 . Close the Results window.

11 . Click OK to close the Repository Variable Initialization Block Data Source dialog box. Check your work:


Desired to gain proficiency on OBIEE 11g ? 

Explore the blog post on OBIEE 11g training online to become a pro in OBIEE 11g.

Create Variables

1 . Click Edit Data Target to open the Repository Variable Initialization Block Variable Target dialog box.


2 . Use the New button to create three new variables: CurrentDay, CurrentMonth, CurrentYear. The order is important. The value returned from the first column in the initialization block SQL, CALENDAR_DATE, is assigned to the CurrentDay variable. The value of the second column, PER_NAME_MONTH, is assigned to CurrentMonth (the second variable), and the value of the third column, PER_NAME_YEAR, is assigned to CurrentYear (the third variable). If necessary, use the Up and Down buttons to arrange the variables.


3 . Click OK to close the Repository Variable Initialization Block Variable Target dialog box.

4 . Leave the default refresh interval set to every hour. This means that the variables will be reinitialized every hour.


5 . Click the Test button and check the results:


In this example, the results are determined by the data in the sample database used for this tutorial, which holds data through December 2010.

6 . Close the Results window.

7 . Click OK to close the Repository Variable Initialization Block dialog box.

8 . Check your work in the Variable Manager:


9 . Close the Variable Manager.

10 . Save the repository and check consistency. Fix any errors or warnings before proceeding.

11 . Close the repository. Leave the Administration Tool open.

For indepth understanding of OBIEE click on