Short your BI Presentation url.

You and your end users got bored of typing lengthyyyy url or hard to remember dash board url? (http://localhost/analytics/saw.dll?Dashboard or http://crypticservername-04hr01/analytics ) Do you want to shorten some thing like this http://BI/ then here is solution.

Step 1: Choose a short name for bi server or rhythmic words ( HRDash, SalesBI etc) keep it ready, edit host file i.e goto C:\WINDOWS\system32\drivers\etc\ folder add new entry in host file with server name and IP.
In my example, I have added new entry with BI as server name and ip as 127.0.0.1
Step 2: Now create a new file “biserver.asp” and place this file under C:\Inetpub\wwwroot\
Edit biserver.asp with following asp script(with out any space between < % or % >) then save this file.
< % @ LANGUAGE="JScript" % >
< % Response.Redirect("analytics/saw.dll?Dashboard"); % >
Step 3: Open IIS (run – inetmgr),
Step 4: Go to Default Web Sites in left pane,
Step 5: Right click on it,
Step 6: Select properties,
Step 7: Go to Documents tab,
Step 8: Click on Add button,
Step 9: Place “biserver.asp” in edit box say okay
Step 10: Make sure Enable Default Document check box is enabled and biserver.asp is top among all other files if not move it to top most
Step 11: Click on apply, click okay
Step 12: Close iis.

Now try to access bi server using http:// BI/

This method works only in windows environment and within intranet.

Hope you liked it.

Best practices: Auto-Notification on Dashboard Errors.

Many people (at least myself) are ignorant, once development complete and shipped to production, then developers will be least bothered about how dashboards are working.

Even though DEV/QA people thoroughly verified for data and functionality, some times end user can perceive error on dash board, because of QA slippage, resources unavailability or wrong combination of objects(listed at end).

To avoid these kind-of-errors in future, schedule an iBot with Error Track report every day or every hour (as you needed) and fix them in advance before end user asks or notifies about the error.

Here is a sample error track report

Error Track -iBot scheduled every day.

Here is a list of common errors, that end users can perceive at any time.

[nQSError: 14026] Unable to navigate requested expression: ToDate("xyz").

[nQSError: 14026] Unable to navigate requested expression: XYZ.Column. Please fix the metadata consistency warnings.

[nQSError: 15018] Incorrectly defined logical table source (for fact table XYZ) does not contain mapping for [XY Column].

[nQSError: 16001] ODBC error state: IM002 code: 0 message: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified.

[nQSError: 17001] Oracle Error code: 12541, message: ORA-12541: TNS:no listener

[nQSError: 17001] Oracle Error code: 28000, message: ORA-28000: the account is locked

[nQSError: 17001] Oracle Error code: 904, message: ORA-00904: "XYZ.Column": invalid identifier

[nQSError: 17010] SQL statement preparation failed."

[nQSError: 17014] Could not connect to Oracle database."

[nQSError: 22024] A comparison is being carried out between non-compatible types.

[nQSError: 22036] Level in TODATE function (Quarter) must be a rollup of (or equivalent to) the measure level (Year).

[nQSError: 22047] The Dimension used in TODATE function must be referenced in the query.

[nQSError: 23006] The session variable, NQ_SESSION.XYZ, has no value definition.

[nQSError: 27002] Near < 'OR' > or <> 'or' <>: Syntax error [nQSError: 26012] .

[nQSError: 27005] Unresolved column: "XYZ"

[nQSError: 27007] Ambiguous column: "XYZ"

[nQSError: 27015] XYZ: column in GROUPBY clause not in the projection list.

[nQSError: 27020] The repository variable "XYZ" does not exist.

[nQSError: 42020] GROUP BY clause, blah blah, is inconsistent with the projected columns in

[nQSError: 46066] Operation cancelled.

[nQSError: 52061] Cache entry, C:\OracleBIData\cache\NQS_xyz, is removed unexpectedly, could not finish ConstructHeader() operation. Restart server to resolve the issue.

[nQSError: 59001] Binary Logical operation is not permitted on DOUBLE PRECISION, VARBINARY operand(s).

[nQSError: 59001] Subtract operation is not permitted on TIMESTAMP, INTEGER operands.

--Hope it helped you


Bypass Obiee Log On Screen


If you want to bypass log on screen when you first time access obiee page through launch url i.e. http://localhost/analytics then here is solution.

Locate analytics virtual folder (C:\OracleBI\web\app\) in this folder replace default.asp page with following.

I am assuming you have anonymous user exists and particular user role has assigned some dashboards.

##%@ LANGUAGE="JScript" %##

##%Response.Redirect("saw.dll?Dashboard?NQUser=Anonymous_user&NQPassword=Anonymous_user");%##

Replace default.jsp contents with following

##% response.sendRedirect("saw.dll?Dashboard?NQUser=Anonymous_user&NQPassword=Anonymous_user");%##

Please replace ## with < 'or' > respectively as shown in following figure

When ever users access obiee launch url , it bypasses logon screen and redirect to dashboard.

--Coming soon with new stuff

Information on Request XML

Today i would like to give some information on Report XML.

Every request internally stored as xml. i.e Request XML, you can view request xml in two ways, goto request’s advanced tab, under Request XML segment you can view this xml or Using Catalog Manager – locate report— on report right click – choose properties –click on Edit XML button—pops window with xml.

Here is through catalog manager.

In general creating a new request throughUI consists of criteria, results, prompts same thing with xml file, it compromise of three main divisions criteria, views, prompts under root node report.

Every request consists of common xml namespace (identified with uniquely named elements and attributes) attributes i.e xmlns

Then next part is criteria (report — criteria)

Criteria element again divided into two major elements Columns, Filters same as UI web construction.

Here is an example with namespaces and all available columns in report.

If you expand column, it internally composed from column related elements and attributes, here is a sample.

Then second large part in criteria is Filters, as show like below

Then next part in report is Views (report –views), in this section consists of all available views for corresponding report.

Last section in report is prompts, here all propmpt related things will be defined in xml, like caption, on which column, control etc

Following chart consist of some of basic elements or attributes and why they are used.

Element

Possible Attributes/Child Elements

Description

saw:report

Is a root element

saw:report

xmlns:saw="com.siebel.analytics.web/report/v1" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:sawx="com.siebel.analytics.web/expression/v1"

Possible namespace

saw:report

xmlVersion="200705140"

Version of xml

saw:criteria

It’s a saw:report child node.

Consist of all columns and filter related stuff in this section

saw:criteria

subjectArea="Paint"

Defines subject area

saw:criteria

saw:columns

Consist of all report related columns

saw:columns

saw:column

To define column related properties

saw:column

Formula

Defines which column it refer to in presentation layer

saw:column

ColumnID

To identify uniquely across referring report

saw:column

saw:displayFormat exp:

To display cell display properties

saw:column

saw:dataFormat

To display column display properties

saw:column

saw:condition

Exp:

sawx:expr xsi:type="sawx:comparison" op="equal">

ALBANY

To display conditional display

saw:column

saw:navigation

To control drill downs or navigation to other reports

saw:navigation

saw:navTarget

To define navigation target and path

saw:navTargets

Caption

To display Caption

saw:column

saw:columnHeading

exp:

Market

To define header name

saw:filter

subjectArea

To define referring subject area

saw:filter

sawx:expr

To define expression type

Possible expression categories

sawx:expr

xsi:type

To define logical conditions types

Comparison

sqlExpression

savedFilter

string etc.

sawx:expr

op

Operator

saw:views

Is child node of report sibling of criteria element used to customize report layout formats i.e. pivot,table,static view etc

saw:views

currentView

Is one among several display layouts

saw:views

saw:view

To displayor customize particular view

saw:view

xsi:type

To define which view we needed

Here all possible views

saw:titleView

saw:tableView

saw:staticchart

saw:pivotTableView

saw:filtersView

saw:htmlview

saw:narrativeView

saw:sqlview

saw:segmentview

saw:targetlistview

saw:colFilterPrompt

saw:view

saw:cvTable

Compound layout can consist many views ..they are defined as table

saw:cvTable

saw:cvRow

Each view as row

saw:view

autoPreview="true"

Decides whether to display automatically results or not when we access view

saw:prompts

Is a sibling of criteria, view elements or child of report element

Which is used to define prompts

saw:prompts

xsi:type="saw:colFilterPrompt"

To define type of prompt

saw:prompts

Formula

To define presentation column

saw:prompts

subjectArea

To define which subject area

saw:prompts

Op

Operator

saw:prompts

controlType

To set control exp dropdown or edit box or multi selector

saw:prompts

saw:promptCaption

To set caption of prompt


There are few more advanced option which have not mentioned in above chart.

If you have any problem in viewing description in above chart, please find doc file here.

If you need my refernced Request XML file composed on top of paint, then please find here.

--Hope you got something.