About
OBIEE Complement is a software that I developed to automate two tasks :
- the set up of a multi-language environment for the repository
- the synchronization of the field description from the database to OBIEE.
The following chapters describe the installation and are for information purpose only.
Articles Related
Requirement
- Work only on a Oracle Database
- Java JRE must be installed on the server (Minimum version 1.6)
- The software must run on the server where the OBIEE repository is installed.
Pre-Tasks
OBIEE Administration is a closed tool. You can perform some scripting to extract some informations but it's not yet supported by Oracle. It's why OBIEE Administation offer a lot of utilities (Menu/Tools/Utilities).
You will find in the list, two utilities that we must run to extract some informations : Externalize Strings and Repository Documentation
Externalize Strings
It's a mechanism to translate the description and the code of each field in the Presentation Layer of the OBIEE Administration Tool. To perform it, you must do two little things.
First, you must say that you want for all presentation catalogs that the description is externalized. For this, you have to check “Externalize Display Names and Descriptions” with a right-click on EACH catalog (Account …, Cost …, …). See the picture below.
Second, you must extract a CVS file with the Externalize String Utilities that contains the link between the description and the translation.
- Let's go to the Externalize String Utilities (Menu/Tool/Utilities)
- Select all the Presentation Catalog
- Click on the Save Button, name the file (OBIEE_ExternalizeString.csv for instance) and save it in a directory (C:\Quickstart\OBIEE for instance).
Repository Documentation
This utility create a CSV file that contain all the information that need the software to retrieve the links between the presentation layer and the database.
- Let's go to the Externalize String Utilities (Menu/Tool/Utilities)
- Click on the Save Button, name the file (OBIEE_RepositoryDocumentation.csv for instance) and save it in a directory (C:\Quickstart\OBIEEComplement for instance).
We have performed all the Pre-Tasks. We are now ready to run the OBIEE Complement software.
OBIEE Complement software
Start
To start the OBIEE Complement software, you can do a right-click on the ObieeComplement.jar and choose “Open with Java …”.
You can also start it with a command line.
C:\Documents and Settings\Nicolas\Desktop>"C:\Program Files\Java\jre1.6.0_05\bin\java" -jar ObieeComplement.jar
If you have the problem below, try to start the jar with the minimal version 1.6.0_05. of jre.
C:\Documents and Settings\Nicolas\Desktop>java -jar ObieeComplement.jar
Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version n
umber in .class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
If it's the first time that you launch the application, you will give an error message because you don't have filled all the parameters that the application need.
Parameters
The Parameters screen appears. Fill in all the parameters.
The Sys credential is used to perform all the action against the database and the Obi Credential to save the two External files (Externalize Strings and Repository Documentation).
The parameters are saved in the same directory where the file ObieeComplement.jar is located. If you changed the location of this file, you have to re-enter the parameters or you have to copy the parameters.xml file in the same location.
When you have finished to fill all the parameters, click on the “Save and Close” Button. If all your parameters are correct, you should not have any error message.
Update Comments from database Just click on the this button, wait some times and you must receive a successful message with the number of description updated.
The update program will update only when it found a database field for a OBIEE catalog presentation field. All the formula field are not updated.
Patch Repostiory File
Just click on this button. You will receive a warning message because to patch the repository the software must stop and restart the Oracle BI Server.
We use a tool that is not supported by Oracle to patch the repository. So, we do before a backup from it. The backup file add the date and backup as file extension. (For instance : NF_DWH_Quickstart.rpd.20081106181400.backup)
This step add to the repository file :
- A connection QS_OBI/QS_OBI in the physical layer
- The session variable “SetLocal”
- The session variable “SetExternalStrings”
The patch is unable to update the database information (Password, …). It's why you must still perform some Post-tasks
Post-Tasks
The repository was patched but it miss some important informations about the database. Open the repository file with the OBIEE Administration Tool.
- Let's update the connection Pool, in the physical layer (QS_OBI for instamce). Open it, update the password.
- Open each session variable (SetLocal and SetExternalStrings) and give for each variable the right connection pool (QS_OBI for instance). Click on the test button.
- Check the Global Consistency (Menu/Check Global Consistency of Ctrl+K), repair if any problem occurs.
You are done !
You must logged in the OBIEE dashboard with the language that you give in the parameters windows (Normally English) and you will be able to see the description.
Support
OBIEE Administration
If you are not able to see the description. First, you must check the log form OBIEE (NQServer.log and NQQuery.log) after you logged in.
NQServer.log
You must not see some fail informations.
[nQSError: 13011] Query for Initialization Block 'SetExternalStrings' has failed.
[nQSError: 13012] NULL values are not allowed in row-wise initialization blocks. 2008-11-10 12:02:53
[nQSError: 13011] Query for Initialization Block 'SetExternalStrings' has failed.
NQQuery.log
Also, you must not see some error informations.
It's not because you have here a successful message that you can not have error informations in the NQServer.log.
+++Administrator:fffe0000:fffe0004:----2008/11/10 11:48:35
-------------------- An initialization block named 'SetLocale', on behalf of a Session Variable, issued the following SQL query:
select 'VALUEOF(NQ_SESSION.WEBLANGUAGE)' from dual
Returned 1 rows. Query status: Successful Completion
+++Administrator:fffe0000:fffe001a:----2008/11/10 11:39:34
-------------------- An initialization block named 'SetExternalStrings', on behalf of a Session Variable, issued the following SQL query:
SELECT MSG_NUM, MSG_TEXT FROM QS_OBI.EXTERNAL_STRINGS WHERE LANG_ID ='VALUEOF(NQ_SESSION.LOCALE)'
Returned 114 rows. Query status: Successful Completion
Check in OBIEE Dashboard
To check in OBIEE dashboard, you can create a text dashboard and add this two variables. You must be able to see the data. If not, something is going wrong.
@{biServer.variables['NQ_SESSION.CD_Accounts_Payable_Quickstart_GL_Account_GL_Account_Code']}
@{biServer.variables['NQ_SESSION.WEBLANGUAGE']}