OBIEE 11g Customized : Beyond the Whitepaper… - Rittman Mead ...
OBIEE 11g Customized : Beyond the Whitepaper… - Rittman Mead ...
OBIEE 11g Customized : Beyond the Whitepaper… - Rittman Mead ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>OBIEE</strong> <strong>11g</strong> <strong>Customized</strong><br />
<strong>Beyond</strong> <strong>the</strong> Whitepaper...<br />
Kevin McGinley (kevin.mcginley@accenture.com)
Back in <strong>the</strong> day…<br />
Copyright © 2012 Accenture All rights reserved. 2
Why Customize <strong>OBIEE</strong> <strong>11g</strong>?<br />
Brand <strong>the</strong> Site Enhance/Change Functionality<br />
Client specific content<br />
Aes<strong>the</strong>tic alignment with o<strong>the</strong>r systems (both<br />
internal and external)<br />
Integration within internal application<br />
Mimic usability and aes<strong>the</strong>tics of <strong>OBIEE</strong> 10g<br />
Distinguish between environments or user<br />
communities<br />
Standard website features<br />
User navigation<br />
Messaging<br />
Export formats<br />
Superfluous Menus<br />
Objects for internal use<br />
Integrate with systems/platforms Introduce Development Flexibility<br />
Logon, logoff, passing parameters<br />
Tablets, smart phones, legacy browsers<br />
With customizing, creates multiple solutions for<br />
<strong>the</strong> same problem<br />
Customizations by user/group<br />
“Oracle BI <strong>11g</strong> can’t do this”.<br />
Copyright © 2012 Accenture All rights reserved. 6
<strong>OBIEE</strong> <strong>11g</strong> Customizations Overview<br />
Agenda<br />
• Configure a new Style and Skin<br />
• Customizations Approach<br />
• Functional Areas for Customizations<br />
– Spotlight Demonstrations<br />
– Highlights<br />
– Additional Options<br />
• Demo<br />
• Appendix<br />
Copyright © 2012 Accenture All rights reserved. 7
Configure a new Style and Skin
Technical Pre-requisites<br />
Styles and Skins with <strong>OBIEE</strong> <strong>11g</strong><br />
– Deployment Steps<br />
Create new Custom<br />
Directory<br />
Steps<br />
Copy AnalyticsRes and<br />
rename it (i.e.<br />
MyCustomDir)<br />
Validate <strong>the</strong> new directory<br />
has sk_blafp, s_blafp and<br />
<strong>the</strong> WEB_INF directories<br />
Create customMessages<br />
sub directory<br />
Deploy Directory in<br />
Weblogic EM<br />
Steps<br />
Install as application<br />
Specify environment type<br />
Specify deployment<br />
directory<br />
Start servicing all requests<br />
Steps<br />
Configure<br />
Application Server<br />
Open instanceconfig.xml<br />
Add <strong>the</strong> following configuration<br />
entries:<br />
ResoucePhysicalPath<br />
ResourceVirtualPath<br />
DefaultStyle<br />
DefaultSkin<br />
** For full steps please see <strong>the</strong> full customizations guide<br />
Configure Web<br />
Server<br />
Steps<br />
Open mod_wl_ohs.conf<br />
Add <strong>the</strong> following<br />
configuration entries:<br />
SetHandler<br />
WebLogicHost<br />
WebLogicPort<br />
DynamicServerList<br />
KeepAliveEnabled<br />
Debug<br />
WLLogFile<br />
Copyright © 2012 Accenture All rights reserved. 9
Customizations Approach
Customizations Approach<br />
– Customization Locations<br />
• Server side vs. Client Side<br />
• Typically more than one approach to custom development<br />
• Following high level guidelines will drive consistent results<br />
• Illustration of <strong>the</strong> types of changes available and where <strong>the</strong>y typically reside<br />
Cascading<br />
Style Sheet<br />
• Color<br />
• Font<br />
• Hide/Display<br />
• Style<br />
• Images<br />
Server Side Client Side<br />
XML<br />
• Hover Text<br />
• Alt Text<br />
• Messaging<br />
• Tab Titles<br />
• Browser Title<br />
Javascript<br />
• Functions<br />
• Action Objects<br />
• Menus<br />
• Display<br />
HTML<br />
• Functions<br />
• Action Objects<br />
• Images<br />
• Messaging<br />
Copyright © 2012 Accenture All rights reserved. 11
Location Considerations…Functional<br />
Cascading Style<br />
Sheet<br />
Examples:<br />
• CSS file edits<br />
HTML<br />
Examples:<br />
• HTML Text Boxes<br />
• Javascript Text Boxes<br />
XML<br />
Examples:<br />
• XML file edits<br />
• Custom Messages <br />
Javascript<br />
Examples:<br />
• New functions<br />
• Edited functions<br />
Client Side<br />
Server Side<br />
Copyright © 2012 Accenture All rights reserved. 12
Location Considerations…Code<br />
Cascading Style<br />
Sheet<br />
Examples:<br />
• display=none;<br />
• Bgcolor=“white”<br />
HTML<br />
Examples:<br />
• GetElementByID<br />
• myElement.innerHTML=<br />
“Mytext”<br />
XML<br />
Examples:<br />
• <br />
• kmsg=“my messaging” <br />
Javascript<br />
Examples:<br />
• myfunction=<br />
onclick(myaction);<br />
Client Side<br />
Server Side<br />
Copyright © 2012 Accenture All rights reserved. 13
Functional Areas for Customizations
Customizations Categories<br />
• Portal and Global Navigation<br />
• Reporting and BI Content<br />
• Integration and Accessibility<br />
Portal and Global Navigation<br />
Integration and Accessibility<br />
Reporting and BI Content<br />
Copyright © 2012 Accenture All rights reserved. 15
Portal and Global Navigation<br />
Notable Customizations<br />
• Add additional global links<br />
• Re-route <strong>the</strong> home link to a custom URL<br />
• Remove menu bar links<br />
• Redirect <strong>the</strong> (?) icon to a custom html page<br />
• Remove <strong>the</strong> page options menu<br />
Additional Customization Options<br />
• Remove ‘Powered by Oracle’ logo<br />
• Hide <strong>the</strong> username on <strong>the</strong> menu bar<br />
• Hide <strong>the</strong> search box menu<br />
• Remove <strong>the</strong> sign out link<br />
• Remove <strong>the</strong> global parent tab<br />
• Remove 'Business Intelligence' from <strong>the</strong> Banner<br />
• Disable ‘Signed In As’ message<br />
• Remove ‘Clear my customizations<br />
Copyright © 2012 Accenture All rights reserved. 16
Banner and Global Navigation <br />
Spotlight Demonstration<br />
Add Additional Global Navigation Links<br />
Customization Goals<br />
Create global, always available, links to <strong>the</strong> following potential locations:<br />
O<strong>the</strong>r dashboards<br />
External Websites<br />
Hidden Reports<br />
Supporting documentation<br />
Hosted Content<br />
Reduce <strong>the</strong> need to put multiple links throughout <strong>the</strong> system to route <strong>the</strong> user to a<br />
specific location (such as ‘home’)<br />
Demonstration Steps<br />
Create Link<br />
Text<br />
Globally<br />
Register Link<br />
with <strong>OBIEE</strong><br />
Enable link<br />
to be turned<br />
on/off<br />
Build link<br />
components<br />
Build Link<br />
Action<br />
Copyright © 2012 Accenture All rights reserved. 17
Banner and Global Navigation <br />
Highlights<br />
Re-Route Home Link to Custom URL<br />
Header.js<br />
Before (Code) After (Code)<br />
saw.header.NavBar.prototype.onHome=function<br />
(b,a)<br />
{saw.header.openURL(saw.commandToURL("bieehome"),<br />
a)}<br />
Before (Screenshot) After (Screenshot)<br />
saw.header.NavBar.prototype.onHome=function<br />
(){window.location.href="http://www.mywebsite.com"}<br />
Copyright © 2012 Accenture All rights reserved. 18
Banner and Global Navigation <br />
Highlights<br />
Remove Menu Bar Links<br />
saw.sessioninfos.xml<br />
Before (Code) After (Code)<br />
<br />
<br />
<br />
<br />
<br />
Before (Screenshot) After (Screenshot)<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Copyright © 2012 Accenture All rights reserved. 19
Banner and Global Navigation <br />
Highlights<br />
Redirect <strong>the</strong> icon to a custom html page<br />
biee0088.html<br />
Before (Code) After (Code)<br />
/Oracle_BI1/bifoundation/web/app/old/l_en/biee0088.htm /Oracle_BI1/bifoundation/web/app/old/l_en/biee0088.htm<br />
* With custom html inside <strong>the</strong> file.<br />
Before (Screenshot) After (Screenshot)<br />
Copyright © 2012 Accenture All rights reserved. 20
Banner and Global Navigation <br />
Highlights<br />
Remove <strong>the</strong> page options menu<br />
portalscript.js<br />
Remove <strong>the</strong> following code<br />
var c=document.getElementById("DashboardPageOptions");<br />
if(c)<br />
{d=obidash.getResourceString(obidash.seedResourceFile,"kmsgDashboardPageOptionsMenu");<br />
var o=obidash.getResourceURL(obidash.seedResourceFile,"popupmenu_ena");<br />
var a=obidash.getResourceURL(obidash.seedResourceFile,"popupmenu_dis");<br />
var n=obidash.getResourceURL(obidash.seedResourceFile,"popupmenu_ovr");<br />
var b=obidash.getResourceURL(obidash.seedResourceFile,"popupmenu_dwn");<br />
r=new obips.Toolbar.ButtonIconSet(o,a,n,b);<br />
p=new obips.DataType.FunctionalIcon(r,d,new obips.Callback(null,function(s)<br />
{obidash.openMenu(s,"idPersonalizationMenu")}),"idPersonalizationMenuIconButton");c.appendChild(p.getViewer())}<br />
Before (Screenshot) After (Screenshot)<br />
Copyright © 2012 Accenture All rights reserved. 21
Reporting<br />
Notable Customizations<br />
• Change <strong>the</strong> export and download options<br />
• Modify <strong>the</strong> report ‘No Results’ messaging<br />
• Modify <strong>the</strong> browser tab name<br />
• Create action framework image links<br />
• Replace <strong>the</strong> preparing guided navigation text with <strong>the</strong> waiting<br />
clock<br />
Additional Customization Options<br />
– Show/Hide dashboard sections with a button<br />
– Remove Graph prompt borders<br />
– Rename <strong>the</strong> apply and reset buttons<br />
– Remove <strong>the</strong> reset button<br />
• Globally<br />
• By dashboard<br />
Copyright © 2012 Accenture All rights reserved. 22
Reporting <br />
Spotlight Demonstration<br />
Modify export and download options<br />
Conditional<br />
Customization Goals<br />
Remove dataset export types incompatible with<br />
<strong>the</strong> reports<br />
Reduce unnecessary load on <strong>the</strong> system<br />
Use in conjunction with <strong>the</strong> maximum export<br />
rows configuration within Enterprise manager<br />
Demonstration Steps for Removing Download Links<br />
Global<br />
Locate download<br />
type entry<br />
Locate download<br />
type entry<br />
Add unique identifier<br />
for download type<br />
Delete download entry<br />
type<br />
* <strong>OBIEE</strong> provides ability to show/hide complete menu<br />
Before<br />
Confirm current<br />
session user<br />
After<br />
Based on session<br />
user, show/hide option<br />
via identifier<br />
Copyright © 2012 Accenture All rights reserved. 23
Reporting <br />
Highlights<br />
Modify <strong>the</strong> report ‘No Results’ messaging<br />
viewmessages.xml<br />
Before (Code) After (Code)<br />
The specified<br />
criteria didn't result in any data. This is often caused<br />
by applying filters and/or selections that are too<br />
restrictive or that contain incorrect values. Please check<br />
your Analysis Filters and try again. The filters currently<br />
being applied are shown below.<br />
<br />
Before (Screenshot) After (Screenshot)<br />
This is a custom<br />
error message. Any no results messaging can be inserted<br />
here.<br />
<br />
Copyright © 2012 Accenture All rights reserved. 24
Reporting <br />
Highlights<br />
Modify <strong>the</strong> Browser Tab Name<br />
productmessages.xml<br />
Before (Code) After (Code)<br />
Oracle<br />
BI Interactive Dashboards<br />
Before (Screenshot) After (Screenshot)<br />
My<br />
Custom Tab Messaging<br />
Copyright © 2012 Accenture All rights reserved. 25
Reporting <br />
Highlights<br />
Create Action Framework Image Links <br />
dashboardtemplates.xml<br />
Before (Code) After (Code)<br />
a name="SectionElements"<br />
href="<br />
SectionElements"<br />
href="javascript:void()"<br />
a name="SectionElements"<br />
id="Custom_ID"<br />
href="<br />
Before (Screenshot) After (Screenshot)<br />
SectionElements"<br />
id="Custom_ID"<br />
href="javascript:void()"<br />
----------------------------------------------------------------------------------------------------<br />
Client Side Code<br />
<br />
function getElement()<br />
{<br />
var element = document.getElementById("Custom_ID");<br />
var myImage = ''<br />
element.innerHTML = myImage;<br />
}<br />
getElement();<br />
<br />
Copyright © 2012 Accenture All rights reserved. 26
Reporting <br />
Highlights<br />
Replace preparing guided navigation text with <strong>the</strong> waiting clock <br />
dashboardtemplates.xml, portalcontent.css, portalsysmessages.xml<br />
Before (Code) After (Code)<br />
dashboardtemplates.xml<br />
NavSearch"><br />
</div><div id="<br />
-------------------------------------------------------------------------------------portalcontent.css<br />
.PortalPreparingGuided{background-color:#CCCCCC;margin:<br />
4px 0 0 4px;padding-left:15px;}<br />
</div><div id="<br />
-------------------------------------------------------------------------------------portalsysmessages.xml<br />
<br />
<br />
Before (Screenshot) After (Screenshot)<br />
dashboardtemplates.xml<br />
NavSearch"><br />
<br />
<br />
</div><div id="<br />
-----------------------------------------------------------------------------------------------------------------portalcontent.css<br />
.PortalPreparingGuided{background-color:#FFFFFF;margin:4px 0 0 4px;padding-left:<br />
15px;} <br />
<br />
</div><div id="<br />
------------------------------------------------------------------------------------------------------------------<br />
Portalsysmessages.xml<br />
<br />
Searching…<br />
Copyright © 2012 Accenture All rights reserved. 27
Integration and Accessibility<br />
Notable Customizations<br />
• Spotlight Demonstration – Conditionally show/hide prompt sections<br />
with a button<br />
• Create a custom logoff redirect page<br />
• Replace dashboard section [+] / [-] hover text<br />
Additional Customization Options<br />
•Create a custom login page (for public site administrative users)<br />
•Modify alt text on <strong>the</strong> header logo<br />
•Modify alt text on <strong>the</strong> Title View images<br />
Copyright © 2012 Accenture All rights reserved. 28
Integration and Accessibility <br />
Spotlight Demonstration<br />
Conditionally show/hide prompt components with a button<br />
Customization Goals<br />
To be able to control <strong>the</strong> display of individual prompt sections based on a button<br />
Example: A client wants 3 of 10 prompts shown initially, but <strong>the</strong> user can select a button to show<br />
<strong>the</strong> rest. This allows for a ‘basic’ as well as an ‘advanced’ version of <strong>the</strong> same prompt set in one<br />
page.<br />
Enhance <strong>the</strong> user experience for <strong>the</strong> visually impaired due to larger buttons<br />
Demonstration Steps for conditionally showing prompt sections<br />
Add unique ID for<br />
each prompt<br />
section<br />
Based on <strong>the</strong><br />
unique ID, show<br />
or hide <strong>the</strong><br />
prompt section<br />
Attach <strong>the</strong> show/<br />
hide functionality<br />
to a dashboard<br />
button<br />
Copyright © 2012 Accenture All rights reserved. 29
Integration and Accessibility <br />
Highlights<br />
Create a custom logoff redirect page<br />
logoncontrolmessages.xml<br />
Before (Code) After (Code)<br />
<br />
Before (Screenshot) After (Screenshot)<br />
<br />
You have been logged out due<br />
to inactivity. Please click <br />
here <br />
to return to <strong>the</strong> home page. <br />
<br />
<br />
Copyright © 2012 Accenture All rights reserved. 31
Integration and Accessibility <br />
Highlights<br />
Replace dashboard section [+] / [-] hover text<br />
uimessages.xml<br />
Before (Code) After (Code)<br />
<br />
Expand<br />
^M<br />
<br />
Collapse<br />
^M<br />
Before (Screenshot) After (Screenshot)<br />
<br />
Custom Expand Message<br />
^M<br />
<br />
Custom Collapse Message<br />
^M<br />
Copyright © 2012 Accenture All rights reserved. 30
Demo
Appendix
Highlights File Paths<br />
Highlight File Name File Path<br />
Re-Route Home Link to Custom URL header.js [ORACLE_HOME]/bifoundation/web/app/res/b_mozilla/<br />
[ORACLE_HOME]/bifoundation_domain/servers/bi_server1/tmp/<br />
_WL_user/analytics_11.1.1/[TEMP_DIRECTORY]/war/res/<br />
b_mozilla/<br />
Remove Menu Bar Links saw.sessioninfos.xml [ORACLE_HOME]/bifoundation/web/msgdb/common<br />
Redirect <strong>the</strong> help icon to a custom html<br />
page<br />
Copyright © 2012 Accenture All rights reserved.<br />
biee0088.htm<br />
[ORACLE_HOME]/bifoundation/web/app/olh/l_en<br />
Remove <strong>the</strong> page options menu portalscript.js [ORACLE_HOME]/bifoundation/web/app/res/b_mozilla/<br />
dashboards<br />
[ORACLE_HOME]/bifoundation_domain/servers/bi_server1/tmp/<br />
_WL_user/analytics_11.1.1/[TEMP_DIRECTORY]/war/res/<br />
b_mozilla/dashboards<br />
Modify <strong>the</strong> report ‘No Results’<br />
messaging<br />
viewmessages.xml<br />
[ORACLE_HOME]/bifoundation/web/msgdb/messages<br />
Modify <strong>the</strong> Browser Tab Name productmessages.xml [ORACLE_HOME]/bifoundation/web/msgdb/messages<br />
Create Action Framework Image Links dashboardtemplates.xml [ORACLE_HOME]/bifoundation/web/msgdb/messages<br />
Replace dashboard section [+] / [-] hover<br />
text<br />
uimessages.xml<br />
[CUSTOM_DIRECTORY]/customMessages/l_en/messages/<br />
Create a custom logoff redirect page logoncontrolmessages.xml [ORACLE_HOME]/bifoundation/web/msgdb/messages<br />
1
Highlights File Paths<br />
Highlight File Name File Path<br />
Replace preparing guided<br />
navigation text with <strong>the</strong><br />
waiting clock<br />
dashboardtemplates.xml [ORACLE_HOME]/bifoundation/web/msgdb/messages<br />
dashboardtemplates.xml [CUSTOM_DIRECTORY]/customMessages/l_en/messages<br />
portalcontent.css [CUSTOM_DIRECTORY]/s_[CUSTOM_SKIN]/b_mozilla_4<br />
portalcontent.css [CUSTOM_DIRECTORY]/s_[CUSTOM_SKIN]/b_mozilla_4/rtl<br />
portalcontent.css<br />
portalcontent.css<br />
[ORACLE_HOME]/bifoundation_domain/servers/bi_server1/tmp/_WL_user/<br />
analytics_11.1.1/[TEMP_DIRECTORY]/war/res/s_blafp/b_mozilla_4<br />
[ORACLE_HOME]/bifoundation_domain/servers/bi_server1/tmp/_WL_user/<br />
analytics_11.1.1/[TEMP_DIRECTORY]/war/res/s_blafp/b_mozilla_4/rtl<br />
portalsysmessages.xml [ORACLE_HOME]/customMessages/l_en/messages<br />
Copyright © 2012 Accenture All rights reserved. 2
Spotlight Demonstration #1<br />
[HOME]\Oracle_BI1\bifoundation\web\msgdb\l_en\messages\uicmsgs\saw.header.xml<br />
[HOME]\Oracle_BI1\bifoundation\web\msgdb\common\saw.header.xml<br />
[HOME]\Oracle_BI1\bifoundation\web\msgdb\common\saw.sessioninfos.xml<br />
Copyright © 2012 Accenture All rights reserved. 2
Spotlight Demonstration #1<br />
[HOME]\Oracle_BI1\bifoundation\web\app\res\b_mozilla\header.js<br />
Copyright © 2012 Accenture All rights reserved. 2
Spotlight Demonstration #2<br />
[HOME]\Oracle_BI1\bifoundation\web\msgdb\messages\viewscontrolmessages.xml<br />
Copyright © 2012 Accenture All rights reserved. 2
Spotlight Demonstration #3<br />
[HOME]\Oracle_BI1\bifoundation\web\app\res\b_mozilla\prompts\promptsruntime.js<br />
Copyright © 2012 Accenture All rights reserved. 2