Oracle BI Answers Access Prohibited


Yester day I saw something like ‘Access prohibited’. I have no clue why and from where it has come. So started investigating and I could reproduced it.

Dash Board says ‘You are not currently authorized to use Oracle BI Answers. If you would like to use this powerful capability, please contact this site's administrator. .Available Links: Dashboards’.

This screen occurs because of following sequences.
1 Using answers privilege log on to dash board
2 Click Answers Link
3 Sign out from this page i.e. url look like http://biservername/analytis/saw.dll? Answers&_scid=sessionid
Sample: http://localhost/analytics/saw.dll?Answers&_scid=eBsXeMHWIww
4 In the above page re-logon using un-authorized to Answers user.
5 As soon as logon message will be Access Prohibited.

It’s because of Url path suppose to land up user in Answers pages.

Obiee Developer Utility


If you are an OBIEE Developer then this utility will be very handy.

If you are encountering very frequently stop and restart of BI services ("Oracle BI Java Host","Oracle BI Presentation Server","Oracle BI Server","Oracle BI Scheduler") then go on reading.

Create a bat file with all services and assign shortcut key.

Here in detailed

1) Download bat file from here
2) Place it any folder.
3) Right Click and send to Desktop
4) Locate created shortcut on Desktop,
5) Right click choose properties and goto Shortcut tab assign key Ctrl+Alt+s
That’s all set; now you can stop restart all services with Ctrl+Alt+s key press.

Obiee Developer Utility - Direct Log-on to Dashboard


If you are frequently logon to BI Dash Board and if you want to have a short cut key which can launch bi server page and also logons, then here is solution.
Open notepad type as below
[DEFAULT]
BASEURL= http://bi-server-name/analytics/saw.dll?Dashboard
[InternetShortcut]
URL= http:// bi-server-name/analytics/saw.dll?Dashboard?NQUser=Desire-User-Name&NQPassword=User-Password
Hotkey=1612
Then save this file as BIAnswers-or-whatever.url file extension must be .url and place it on desktop, now using ctrl+alt+L key press will launch BI Server url and also redirect you to default user preference page.

Obiee Error: Id 31 not Found


Obiee Error: Id 31 not Found

Error: Id XX not Found
Some times when we try to select some function from "Edit Column Formula" this kind error will pops as "Id not found ".
Solution:
1)Say ok.
2)Cacel Insert Function.
3)Save your request(optional)
4)Close the browser and re-open the request.

Now column will allow you to insert functions.

Error : [nQSError: 46036] Internal Assertion


Error Details
Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P
State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 46036] Internal Assertion: Condition listNode.GetGroupBy() == NULL, file .\Src\SQOIGeneratorBuiltIn.cpp, line 1497. (HY000)

As per my understanding this error happens due to corrpution in report file on disk.

Solution:
Try to change something in report and resave the report, this should solve problem if not, try to get same report from previous release,code base or from backup using Catalog Manager bring the report to new development by Export/Import report.
In this way it worked for me.

Hope it may help you.

Non Existing Value as Default Value in Controls

Requirement: How to populate non existing value in obiee controls(Dropdown, Multiselect or Edit Box) and point this Non Existing Value as Default Value of Control?

Solution:
Step1: Select Required column in Prompts.
Step2: In "Default To" Drop Down Select "SQL Result" place query like following



If column is string type
SELECT Max(ColumnName)||SomeNonExistingLongStringWhichEverOne FROM SubjectArea

If column is number type
SELECT Max(ColumnName)*9876543210 FROM SubjectArea

Underlying mechanism, query will get maximum of that column which is unique and for that value we are adding or concatenating with some strange in this way we can make sure that value will not exists in Column.

OBIEE Metadata Dictionary


OBIEE Metadata Dictionary
In this article, I try to explain the concepts of “OBIEE Metadata Dictionary”.
First we start with the basic introduction of Metadata. Then we will explain to create and maintain Metadata Dictionary in OBIEE Answers. This article describes the configuration and implementation of the OBIEE metadata dictionary with OC4J.
About Metadata
Metadata is essentially data about other data. Also known as metalanguage, metadata can be used in any sort of media to describe the contents of the information. Metadata is essential for understanding information stored in data warehouses and has become increasingly important in XML-based Web applications.
About OBIEE Metadata Dictionary
One of the new features introduced in OBIEE is Metadata Dictionary which is handy web based information to map the answers objects across business layers to Physical layers.
BI metadata repository is available through the Metadata Dictionary (a set of static XML documents), which contains information across the entire BI metadata repository, i.e. from the presentation layer , through the business model (including dimensions, their levels and hierarchies, and join their types, calculations and used expressions, aggregation rules and functions, etc.) to the physical layer (including the names of the physical tables and columns of data types, all the links, the type of database, supported db properties, setting Connection Pool, etc.). In addition, there are all the initialization blocks, variable system, user groups and their privileges…
Metadata Dictionary is available from version of OBI 10.1.3.3 onwards:
Generating the Metadata Dictionary
Metadata Dictionary should first be generated using the Oracle BI Administration Tool, as follows:
1. Launch the Oracle BI Administration Tool on the Oracle BI Server.
2. Log in to the desired repository in “Offline” mode.
metadata dic 1
3. Create the dictionary using: Tools -> Utilities -> Generate Metadata Dictionary.
metadata 2
4. Select a destination directory:
metadata 3
You can save the metadata anywhere in your directory and then move to particular destination .For my case the repository file name is ABC.rpd and metadata directories have been created as under the path E:\MataData.
Once process finishes, you will get the following message:
meta data 4
When you generate Metadata Dictionary, The output is a bunch of xml files in the destination folder chosen and can be hosted on your obiee web server.  Along with the files, a new folder with the same name as your repository file name gets created. There are two main files to concentrate on. One is Treeindex.xml and Nameindex.xml file.
Treeindex.xml traverses using a hierarchy and gives you the respective layers of separation where as NameIndex.xml uses the alphabetical index to go through all the object names and their Meta data descriptions.
In my case Generated Metadata Dictionary location is E:\Metadata\ABC

Navigate to your Generated Metadata Dictionary

Now open the folder with repository name (ABC) under location E:\Metadata\ABC.
metadata 5
Open NameIndex.xml file in a browser to check the readability.
meta data 6
Open TreeIndex.xml file in a browser to check the readability.
metadata new
Presentation Service Configuration for Metadata Dictionary using OC4J Prerequisites
Create the “dictionary” folder in the following location:
<OracleBI>\oc4j_bi\j2ee\home\applications\analytics\analytics
meta data 7
And move the contents of the E:\Metadata folder in the dictionary folder.
metadata 8
After setting OC4J Prerequisites, we have to tell the presentation server where to find the dictionary. This is configured in the INSTANCECONFIG.XML file.
Usually this file is found in <OracleBIData>\web\config.
Open the INSTANCECONFIG.XML file and add the following tag between the <WebConfig> tags.
metadata 9
Note: After making necessary changes, restart Oracle BI Presentation Server, Oracle BI Server.
Access the metadata dictionary from Answers
After making the changes in the configuration file and restarting the presentation service, Log in Answers application and select the subject Area. You will be able to see in Answers area on the right of each column, table and cube a new icon. A click on this icon will present you the Xml data dictionary associated. (Book icon – for components and items will appear after the mouse cursor hovering to it).
metadata 10
Now click on the dictionary symbol of Supplier Sales:
metadata 11
Then you will see all the information related to the Supplier Sales.
Granting access to the Metadata Dictionary
Log on with the presentation service as Administrator.
And Go Settings> Administration.
meta data 12
Select Manage Privilege:
metadata13Select access to Metadata Dictionary:
meta data 14By default this is set to everyone. But you can change the setting to allow particular users access the metadata dictionary.
Note: The generated Metadata Dictionary is a static set of XML data.The dictionary does not change dynamically as repository changes are made. Therefore, you will need to generate manually or automatically the dictionary periodically to update the content.

Building Oracle BIEE Reports And Dashboards In Minutes Wrap-Up

Oracle BI Disconnected Analytics


Introduction
OBIEE is a business intelligence tool to analyze the business performance from different reports, dashboards that have detailed information based on the data which is stored inside database server or in data warehouse. Hence the main thing is your machine should be connected with network where database/data warehouse as well as Oracle BI Server is located.
But what will happen when your machine is not available on network and still you want to see reports, dashboards, want to create new ad hoc request etc. On many occasions,  the user (sales person or an executive, or CEO) works at different sites because of business trips or some other reasons. Oracle has provided a feature in OBIEE i.e. Disconnected Analytics which solves our problem.
Oracle BI Disconnected Analytics allows you to view analytics data, Oracle BI Interactive Dashboards, and queries when your machine is not connected to the network to access theOracle Business Intelligence.
To implement disconnected analytics you have to follow some steps, those are given below:
1] On Server:
A] Create application folder under {OBI Installation Drive}\OracleBIData\disconnected
Let’s consider application name is “second”
You will find the application directory will be available under
{OBI Installation Drive}\OracleBIData\disconnected\second
B] Create two subfolder app and data in the application folder second.
appdata
C] A subfolder named as app will store:
1] Copy of the Repository (rpd) file
2] Archived file of the web catalog
3] SQL files which contains DDL statement to create the source tables on disconnected machine’s database (SQL Anywhere).
second
D] Create second.xml file, which is a configuration file. This xml file has sets of instructions on how to parse the application during synchronization.
Refer below image file:
third
E] Ensure that connection pool in rpd will point to SQL Anywhere database, because disconnected machine has SQL Anywhere database. For this to happen, open the repository in offline mode, this is stored in app folder.
Refer below image files:
databaseXE
conectionpool
F] You have to make some changes in instanceconfig.xml file which are given below:
Give web catalog path in <CatalogPath> </CatalogPath> tag.
<CatalogPath> {OBI Installation Drive}/OracleBIData/web/catalog/second</CatalogPath>
By default <Disconnected> </Disconnected> tag is in comment tag <! -- --> you have to remove this comment tag. And give disconnected directory path.
<Disconnected><ArchiveIbots>false</ArchiveIbots><DisconnectedDir>
{OBI Installation Drive}/OracleBIData/disconnected</DisconnectedDir></Disconnected>
Also there are some other changes but for normal application only these two changes are sufficient to implement.
2] On Client:
A] On client machine, the first thing that we have to do is to install the disconnected analytics client. (This is an option available during OBIEE installation steps). Once the installation is done we need to first connect the machine on to the network for synchronization.
Synchronization is the mechanism that downloads data from the Oracle BI Server to the disconnected machine for each user. The first time synchronization occurs; all historical data will be downloaded. After the first synchronization, the incremental synchronization feature allows incremental data downloads.
On client machine you have to make some optional changes in syncconfig.xml file which are given below:
B] Mention your current application name in <CurrentApplication> tag. This will identify the name of the current active application. The disconnected machine can have more than one applications downloaded. This setting is maintained by the synchronization process to track the currently active application to ensure that the correct data and catalog updates occur. NeitherOracle BI Administrator nor normal users should edit this setting.
Example:  <CurrentApplication>Second Application </CurrentApplication>
C] You can set up Oracle Business Intelligence to use single sign on feature from the Web server. When this feature is set, users do not have to log in when they need to synchronize disconnected applications. To enable single sign on for Oracle BI Disconnected Analytics, make the appropriate setting in the syncconfig.xml file.
To implement single sign on, change the setting from the default value False to True in <SSOEnabled> tag.
D] To view the progress dialog box during synchronization, keep the setting <ShowlogWhenDone> to YES, then the dialog is displayed. If this setting is No (default), then the user receives no notification that the synchronization is in progress and must check the log file to determine whether the synchronization succeeded.
E] Set <TimeOutValueSecs> value (by default value is 300 in sec), indicates number of seconds to wait before timing out the connection from the disconnected client to the Oracle BIServer. You can increase this value if the network is heavy and Oracle BI Server is slow to respond.
Refer below image file:
serverinstance
G] Then navigate to the Server machine using OBIEE URL
(172.31.142.25 its IP address of server machine) from client machine and click on more product->Disconnected Analytics.
oracleBIdisconnect
This will show the list of all applications that have been set up on Server machine. If we click on Update Data, it will automatically open up a Save/open window asking us to save/open a DAD file.
wanttosave
This DAD file basically provides the necessary configuration settings for the disconnected application manager to work. Just click on open, it will automatically open up the Application Manager.
oracledissecond
Click on Synchronization tab, then synchronization process will start.
success
As you see, the synchronization process will first fire all the logical SQL corresponding to our sourcing reports on the server machine. The results of these reports are then stored as compressed CSV’s and are then moved over to the client machine. Synchronization will automatically update the NQSConfig.ini to new repository, etc.
Click on OK button, then on OBI Disconnected Application Manager click on Start button. Now your disconnected application will be available on client machine and remove client machine from the network, still you can access same reports, dashboards on client machine.