Wednesday, May 16, 2012

Adding “Change Password” facility for OBIEE end users without using administration



There is change needed in the xml file at the undergiven path:

$BI_HOME/web/msgdb/messages/controlmessages.xml

Replace the line

<WebMessage name="kmsgChangePasswordLink"><!-- <HTML><a insert="1"><sawm:messageRef name="kmsgUIChangePassword"/></a></HTML> --></WebMessage>

with

<WebMessage name="kmsgChangePasswordLink"><HTML><a insert="1"><sawm:messageRef name="kmsgUIChangePassword"/></a></HTML></WebMessage>



Tuesday, April 17, 2012

OBIEE Cache Issues


OBIEE Cache Issues

The OBIEE cache is enabled but the query is not being cached. There may be multiple reasons behind that; some of them is as follows;

Use of Non-cacheable SQL functions:
If any of the Non-cacheable functions are used in the request then the query will not be cached.
i.e CURRENT_TIMESTAMP, CURRENT_DATE, CURRENT_TIME, RAND, POPULATE

Non-cacheable Table:
If the query for the request makes any connection to a non cacheable table then the query/results will not be cached even if all other tables are set to cacheable.



Query execution Terminated:
While running the request on Presentation Server if the execution is forcibly cancelled or time out occurred, cache will not create.

Cache Configuration not enabled:
There is a cache enable/disable entry in NQSConfig.ini file. Cache will be enabled only if it is set to YES.






Bad cache configuration:
If the MAX_CACHE_ENTRY_SIZE parameter is set to a bigger value as compared to the actual storage space (DATA_STORAGE_PATHS) available on the drive then nothing can possibly be added to the cache.



Result set to Large to Handle by Cache:
The max row limit for cache is set in a parameter in nqsconfig.ini, named MAX_ROWS_PER_CACHE_ENTRY (default 100,000 rows) and MAX_CACHE_ENTRY_SIZE (default 1 MB). If the rows retrieved in the request exceeds the MAX ROW LIMIT or the data retrieved by the request exceeds the MAX CACHE ENTRY SIZE then the cache will not be created.

Query got a cache hit:
In general, if the query gets a cache hit on a previously cached query, then the results of the current query are not added to the cache. The only exception is the query hits that are aggregate “roll-up” hits, will be added to the cache if the nqsconfig.ini parameter POPULATE_AGGREGATE_ROLLUP_HITS has been set to Yes.

Cheers!

Thursday, February 9, 2012

How to get date/time difference in OBIEE

Following is the way to get date/time difference in OBIEE

- Use TIMESTAMPDIFF function
- Format: 
TIMESTAMPDIFF(SQL_TSI_DAY, [From Timestamp], [To Timestamp])

- Difference in seconds, minutes, hours, days, weeks etc can be obtained by using these intervals in the function;
SQL_TSI_SECOND
SQL_TSI_MINUTE
SQL_TSI_HOUR
SQL_TSI_DAY
SQL_TSI_WEEK
SQL_TSI_MONTH
SQL_TSI_QUARTER
SQL_TSI_YEAR

Example:
TIMESTAMPDIFF(SQL_TSI_DAY, TIMESTAMP '2011-12-1 00:00:00', TIMESTAMP '2011-12-31 00:00:00')

Cheers ;)