Security in Dashboards in OBIEE 11g

I want to deploy user/group based security in 11g dashboards. I have followed the following steps.
1. Create user in <ip>:<port>/console. This user is not mapped to any group/role.
2. Now I login to analyics using Administrator credentials and navigate to Catalog.
3. I have 5 different Dashboards and BIConsumer role have read and traverse rights in all the dashboards.
4. Now i go to one of the Dashboard and click on permissions and provide read and traverse rights to newly created user.
5. When i login to the user he can see all the Dashboards inspite of having access to only one dashboard.
6. However for example if I remove access to one the Dashboard from the BIConsumer role then the newly created user wont see the Dashboard.
What am I doing wrong. It was far easier to do this is 10g. Please help

Hi Sirini,
I could understand the above problem, now I have another issue. I created users in console and created catalog groups and mapped those users to certain groups. Later I am mapping this groups to particular dashboards. The user can see the link to the dashboard however on opening the dashboard I am getting the below error. Although on restarting opmn the user has access to the same. Can you help me in this.
access denied for user to path /shared/SFL BI Analytics/_portal/Loan Collection/dashboard layout.
Error Details
Error Codes: O9XNZMXB

Similar Messages

  • Creating Dashboard in OBIEE 11g

    Hi
    I installed OBIEE 11g newly
    Can anyone help me in creating Dashboard in OBIEE 11g.
    Mannu

    Hi Manu,
    Here are the links for the OBIEE Report and Dashboard Builder's:
    OBIEE 11g: http://download.oracle.com/docs/cd/E21764_01/bi.1111/e13881/toc.htm
    OBIEE 10g: http://download.oracle.com/docs/cd/E10415_01/doc/bi.1013/b31767.pdf
    This will get you started and make you an expert if studied well.
    Hope your question is answered.
    -Amith.

  • How to hide a dashboard in OBIEE 11g?

    Hi All,
    How do we hide a complete dashboard in OBIEE 11g? A particular dashboard page can be hidden by going to dashboard properties but there is no option to hide a complete dashboard. Also, in Administration, there is no 'Manage Interactive Dashboard' section like it was there in OBIEE 10g where we could hide a particular dashboard.
    Thanks in Anticipation,
    Karan
    Edited by: kchadha2 on Sep 22, 2011 4:11 PM

    Hi,
    Go to your dashboard page --> there is catalog folder is available here you can restrict hiding dashboard users.
    and dashboard folder under shared folder right click dashboard permission --> No Acess also set that dashboard property as "Hiden"
    Thanks
    Deva
    Edited by: Devarasu on Sep 22, 2011 6:50 PM

  • Cannot get into 'Dashboard Properties' (OBIEE 11g) using IE 8

    When I enter an OBIEE 11g dashboard (as an Administrator) and click on "*Edit Dashboard*" & then click on "*Dashboard Properties*":
    1) the "*Dashboard Properties*" box pops up but...
    2) only the upper porting of the "*Dashboard Properties*" box displays
    3) the lower portion of the box never displays...it just stays all white. This portion is where the grid that would normally display the list of dashboard pages (where I could choose to hide pages)
    4) at the bottom left-had part of my browser, it says "*(11 items remaining)*"
    5) my browser stays locked like this & the only way to get out of it is to ctrl+alt+del
    Several things to note:
    1) I'm not sure when this started happening, but I noticed it sometime last week. I know in the past I was able to get into the dashboard properties, but now I cannot.
    2) I am on OBIEE 11.1.1.5.0
    3) I am on Win7 32-bit
    4) I am on version IE 8.0.7601.17514
    5) I can run OBIEE in Firefox and edit the dashboard properties just fine. This issue does not seem to exist in Firefox
    6) If I change to "*compatibility view*" in IE 8, I seem to be able to go into the "*Dashboard Propeties*" box just fine...HOWEVER, when I try to go into "*Edit Dashboard*" (while in "*compatibility view*") many of my objects (columns/sections) overlap & are weirdly placed all over the screen.
    7) I have tried modifying the httpd.conf file as per the official Oracle white paper relating to OBIEE 11g in IE8 (Doc ID 1312299.1) and it didn't seem to fix my issue
    8) I have also tried uninstalling & re-installing IE8 but that also did not seem to fix my issue.
    Has anyone else encountered this issue? If so, any suggestions on what one might do to fix it?
    Any help is greatly appreciated.

    Good suggestion. I have tried IE 8 and 9 and Firefox with the same results. An error is thrown in IE 8:
    "Message: Can't move focus to the control because it is invisible, not enabled, or of a type that does not accept the focus."
    I believe this is referring to the fact that it cannot move focus to the username text field as the field is not displayed.
    Another note, our steps for upgrade were as follows so not sure if this is part of the problem:
    1. Install 11.1.1.3 OBIEE
    2. Upgrade to 11.1.1.5 OBIEE
    3. Run ua.bat for publisher schema and repository
    4. Now, do not see username/pw at login and thus cannot login

  • Security service error in OBIEE 11G LDAP configuration

    Hello
    I've recently set up some OBIEE 11G installations and they appear to work ok.
    I've more recently been using various guides on the internet to configure OBIEE 11G and Active Directory and can see the users and groups within Weblogic that belong the to the Provider that i've configured.
    However, when I attempt to start up OPMN, it always gives me the error like the following: 
    <Jun 24, 2013 1:45:38 PM NZST> <Warning> <oracle.jps.idmgmt> <BEA-000000> <Requested Object Class (user)not found in cache.
    oracle.security.idm.OperationFailureException: Requested Object Class (user)not found in cache.
    <Jun 24, 2013 1:52:20 PM NZST> <Error> <oracle.bi.security.service> <OBI-SEC-00004> <Unable to initialize oracle.bi.security.service.SecurityWebService>
    I initially had the User Object Class as User in the Provider configuration and noticed it wasn't in the LDAP directory so I tried changing it to a Object Class that did exist for one of the users but it made no difference.  It still says the same error message even though I have no reference to User in the configuration.
    Can anyone suggest something I might be doing wrong or missing?

    I have followed the same configuration. However i am getting the following error when i try to login
    Caused by: oracle.bi.security.service.SecurityServiceException: SecurityService::authenticateUserWithLanguage - '<LDAP user>' was authenticated but could not located within the Identity Store.
    I guess some configuration issue, but cannot be able to spot the error. Please let me know your idea
    Thanks

  • Conditional show error in dashboard In OBIEE 11g

    Hi Gurus,
    I I have a dashboard prompt which is a radio button containing Month & Quarter. Also have 2 other prompts like DP_Month which will show months(201301,201302 ...) and DP_quarter which will show(2013Q1,2013Q2..). This 2 prompts will show conditionally based on based on 1st prompt selection(like Month or quarter) which is working properly.
    Suppose when I click Month I m getting 2nd month prompt and changed to Quarter and getting Quarter prompt..But when I move to 2nd page  Quarter prompt is selected but Month dropdown  is showing.
    Please suggest..
    Regards,
    Smita

    Hi Nagireddy, thanks for your reply.
    Is there any limit of values to extract in Dashboard prompt? i.e. when you use drop down list as Dashboard prompt, is there any limit of values to extract from database?
    In my local environment (instanceconfig.xml), there is limit of Rows to View and Download set to 20K, however I did not see anything related to the Dashboard Prompt.  

  • Row limit in Dashboard Prompts - OBIEE 11g?

    Hi,
    In dashboard prompts values are shown as sets of 256 and I know it can be customizable but my question is..."Is there any limit on records to extract as we have it in Analysis"? If yes, what is the max limit and where to configure this?
    Thanks in advance.

    Hi Nagireddy, thanks for your reply.
    Is there any limit of values to extract in Dashboard prompt? i.e. when you use drop down list as Dashboard prompt, is there any limit of values to extract from database?
    In my local environment (instanceconfig.xml), there is limit of Rows to View and Download set to 20K, however I did not see anything related to the Dashboard Prompt.  

  • Download Option on Dashboard on obiee 11g

    hi,
    i have a requirement to put a download link option under the report in the dashboard.
    when we click on the download link it will show a pop to select download type:
    types are: download to Excel
    download to powerpoint etc.
    any ideas!
    thanks,
    nataraj

    select Report link "Export" in report properties of Edit dashboard..

  • Object Level security not working on OBIEE 11g 11.1.1.7

    Hi,
    I am experiencing problems with object level security applied on application role in 11.1.1.7 version. If i create a user and assign that user to a application role and give that application role permission to Access Answers in Manage previleges, it is not working. If i directly add a user to permission list in Manage previleges section then user is able to access the answers. I added that application role in "Access to Answers" section in Manage previleges section. Permission for Authenticated users is denied.
    We recently upgraded from 11.1.1.5 to 11.1.1.7. Please can someone confirm if it a bug in 11.1.1.7 or it is because of the upgrade process.
    Regards,
    Sandeep

    Hello Sandeep,
    I have just verified the below scenario as you said but didnt find any issue.
    I have just created a User, Group and Applictaion Role under default authentication provider . Assigned user under group and group under newly created application role and provided access to answers for new application role under manage privilages and I am able see it.
    This might not be a 11.1.1.7 bug check it from upgrade end.
    Regards,
    Srikanth

  • Security question in obiee 11g

    Hi,
    I have a question on security configuration on what we have in 10 and deploying to 11g.
    Q1. how deploy external database security(users, groups) to OBIEE 11g.
    we used external database security in 10g. all the users and groups maintained in database and obiee rpd has security groups. repository has group information only so it is deployed groups information to obiee 11g by upgrade assistant but how can it deploy users in external database?
    Q2. all the users and roles in LDAP server. in this case how obiee 11g read users and group information?
    Thanks
    Jay.

    Q1. how deploy external database security(users, groups) to OBIEE 11g.
    we used external database security in 10g. all the users and groups maintained in database and obiee rpd has security groups. repository has group information only so it is deployed groups information to obiee 11g by upgrade assistant but how can it deploy users in external database?
    Solution:
    http://www.varanasisaichand.com/2011/09/external-table-authenticationorder-of.html
    http://www.rittmanmead.com/2012/03/obiee-11g-security-week-connecting-to-active-directory-and-obtaining-group-membership-from-database-tables/
    http://obieeblog.wordpress.com/2009/06/18/obiee-security-enforcement-%E2%80%93-external-database-table-authorization/
    Q2. all the users and roles in LDAP server. in this case how obiee 11g read users and group information?
    Obiee11g is intergated with weblogic fusion middleware (Console,EM). in that console have feature to enable mulitiple LDAP authentication
    while configuring AD via weblogic console we need to give the users and group info
    Solution refer:
    http://obieeelegant.blogspot.com/2012/01/obiee-11g-integration-with-ldap.html
    http://docs.oracle.com/cd/E23943_01/bi.1111/e10543/privileges.htm#BABCDCFE
    Thanks
    Deva

  • Dashboard Customization in OBIEE 11g

    Hi all,
    I have a problem in customizing dashboard in obiee 11g. For cutomization i followed the document produced by the oracle. In that document they mentioned to deploy some application. I have followed all the steps mentioned in that. But i Couldn't able to change any of them , example - i tried to change the login page and color of the banner and homepage.
    for changing banner color , i went to common.css and changed the .HeaderContainer attribute and restarted all the services to see the changes and i changed rest of the files as it is mentioned in the document . and i selected my custom folder as dashboard style in dashboard properties. but still i couldnt able to see any of the changes which i made.
    So Please some one help me to get through this.
    thanks in advance.

    Hi user,
    Follow these links for what your looking for and youw ould achieve it
    http://www.skurabigroup.com/blog/?p=49
    http://forums.oracle.com/forums/thread.jspa?threadID=1518428&tstart=105
    http://www.obieetalk.com/oracle-bi-ee-11g-%E2%80%93-styles-skins-custom-xml-messages#
    Hope answered.Award points by following etiquette http://forums.oracle.com/forums/ann.jspa?annID=939
    Cheers,
    KK

  • OBIEE 11g - create dashboard with Answers Analyse and BI Publisher Repport

    Hi there,
    I have one question . I create dashboard in OBIEE 11g .In my dashboard have one analyse and one bip report .I create one prompt filter , that changes the both .But I wanted when i click in analysis and change it, this change is reflected in the Report . Is this possible?
    Thanks

    I am talking about object permissions in the catalog (eg. Folder permissions..). This is in addition to the permissions for the data source.
    You need to be able to view the folders from where you can select the analysis as a data source in the BI publisher report.
    Here is an excerpt from the Guide:
    For a role to access an object in the catalog, the role must be granted Read permissions on both the object and the folder in which the object resides. Permissions can be granted at the folder level and applied to all the objects and subfolders it contains, or applied to individual objects.
    To grant catalog permissions to a role:
    Navigate to the Catalog.
    Locate the folder or object on which you wish to grant permissions and click More. From the menu, select Permissions. Alternatively, you can select the folder and click Permissions in the Tasks region.
    Thanks,
    BIPuser

  • How to remove the "Sign Out" in OBIEE 11g?

    How to remove or hide the "Sign Out" option from Dashboard in OBIEE 11g?
    Edited by: Siva Prasad on Jul 6, 2011 6:20 AM

    Hi Amit, Following z the file.. Plz check it out....
    <html xmlns:sawm="com.siebel.analytics.web/message/v1" xmlns:sawpg="oracle.bi.ps.page/v1" sawpg:cacheable="false">
    <head>
    <title><sawm:messageRef name="kmsgBIEEHomeTitle"/></title>
    <sawm:messageRef name="kuiFrameworkHeaderHead"/>
    <link href="fmap:catalog.css" type="text/css" rel="stylesheet" />
    <link href="fmap:home.css" type="text/css" rel="stylesheet" />
    <link href="fmap:uicomponents/obips.FormFields/obips.FormFields.css" type="text/css" rel="stylesheet" />
    <link href="fmap:uicomponents/obips.FloatingWindow/obips.FloatingWindow.css" type="text/css" rel="stylesheet" />
    <link href="fmap:uicomponents/obips.Dialog/obips.Dialog.css" type="text/css" rel="stylesheet" />
    <script type="text/javascript" src="fmap:common/dragdropframework.js"></script>
    <script type="text/javascript" src="fmap:common/layout.js"></script>
    <script type="text/javascript" src="fmap:common/obips.TabCircler.js"></script>
    <script type="text/javascript" src="fmap:common/obips.XMLDOM.js"></script>
    <script type="text/javascript" src="fmap:webserviceproxies/catalogmanager.js"></script>
    <script type="text/javascript" src="fmap:uicomponents/obips.FormFields/obips.FormFields.js"></script>
    <script type="text/javascript" src="fmap:uicomponents/obips.FloatingWindow/obips.FloatingWindow.js"></script>
    <script type="text/javascript" src="fmap:uicomponents/obips.Dialog/obips.Dialog.js"></script>
    <script type="text/javascript" src="fmap:uicomponents/obips.UberBar/obips.UberBar.js"></script>
    <!--Please don't add this back. obips.Toolbar is deprecated! <script type="text/javascript" src="fmap:uicomponents/obips.Toolbar/obips.Toolbar.js"></script>-->
    <script type="text/javascript" src="fmap:uicomponents/common/obips.TextDialog.js"></script>
    <script type="text/javascript" src="fmap:uicomponents/common/obips.MessageDialog.js"></script>
    <script type="text/javascript" src="fmap:uicomponents/common/obips.ConfirmDialog.js"></script>
    <script type="text/javascript" src="fmap:common/datetime.js"></script>
    <script type="text/javascript" src="fmap:common/list.js"></script>
    <script type="text/javascript" src="fmap:catalog/catalogaction.js"></script>
    <script type="text/javascript" src="fmap:catalog/catalogmanagerhelper.js"></script>
    <script type="text/javascript" src="fmap:catalog/actionhandlerimpl.js"></script>
    <script type="text/javascript" src="fmap:catalog/actionlinksrender.js"></script>
    <script type="text/javascript" src="fmap:catalog/catalog.js"></script>
    <script type="text/javascript" src="fmap:catalog/itemproperties.js"></script>
    <sawm:if name="session.syndicate" op="equals" value="workspace">
    <script type="text/javascript" src="fmap:common/workspacesyndicatebase.js"></script>
    </sawm:if>
    <script type="text/javascript" src="fmap:common/alertsui.js"></script>
    <sawm:resourceBundle path="common/saw.alertsui.xml"/>
    <script type="text/javascript" src="fmap:home/bieehome.js"></script>
    <script type="text/javascript">
    function NQOnLoadEvent()
    //render header
    <sawm:messageRef name="kuiFrameworkHeader" >
    <sawm:setParam name="helpUrl"><sawm:fileMap path="biee0124.htm"/></sawm:setParam>
    <sawm:setParam name="helpCaption"><sawm:messageRef name="kuiBIHContextHelp" /></sawm:setParam>
    <sawm:setParam name="title"><sawm:messageRef name="kmsgBIHHomeTabTitle"/></sawm:setParam>
    </sawm:messageRef>
    <sawm:messageRef name="kmsgMostRecentItemsScript" />
    var tDownloadLinks = [
    <sawm:if test="officeURL">
    {text:'kmsgBIHOracleBIForMSOffice', url:<sawm:json>officeURL</sawm:json>, desc:'kmsgBIHOracleBIForMSOfficeDesc'},
    </sawm:if>
    <sawm:if test="smartViewURL">
    {text:'kmsgBIHSmartViewForMSOffice', url:<sawm:json>smartViewURL</sawm:json>, desc:'kmsgBIHSmartViewForMSOfficeDesc'},
    </sawm:if>
    <sawm:if test="privileges.Publisher.developReport">
    {text:'kmsgBIPDownloadTemplateBuilderForWord', url:saw.commandToURL('xmlpObjectTasks')+'&amp;Action=downloadTool&amp;_xaction=downloadtb', desc:'kmsgBIPDownloadTemplateBuilderForWordDesc'},
    {text:'kmsgBIPDownloadAnalyzerForExcel', url:saw.commandToURL('xmlpObjectTasks')+'&amp;Action=downloadTool&amp;_xaction=downloadae', desc:'kmsgBIPDownloadAnalyzerForExcelDesc'},
    </sawm:if>
    null
    var tSESUrl = "";
    <sawm:if test="sesSearchURL">
    tSESUrl = <sawm:json>sesSearchURL</sawm:json>;
    </sawm:if>
    saw.home.start(tDownloadLinks,tSESUrl);
    window.onload = NQOnLoadEvent;
    //list of object types that current user can create
    saw.catalogaction.setCreateList(<sawm:json>system.catalogObjectTypeManager.creatableTypes</sawm:json>);
    <sawm:if name="session.syndicate" op="equals" value="workspace">
    var tSyndicate = obips.workspace.HomePageSyndicate.createSyndicateObject();
    </sawm:if>
    </script>
    <sawm:resourceBundle path="catalog/privileges.xml"/>
    <sawm:resourceBundle path="catalog/saw.catalog.xml" inline="false"/>
    <sawm:resourceBundle path="home/bieehome.xml" inline="false"/>
    </head>
    <body>
    <div id="idBIEEHomeBodyDiv">
    <!--Round corner -->
    <table cellspacing="0" cellpadding="0" class="BIHRoundCorner">
    <tr>
    <td class="RoundCornerCell">&amp;nbsp;</td>
    <td class="TopCell">&amp;nbsp;</td>
    </tr>
    </table>
    <div class="BIEEHome">
    <table id="idBIEEHomeTable" class="BIEEHomeTable" cellspacing="0" cellpadding="0">
    <tr>
    <!-- left pane -->
    <td class="BIEEHomeLeft">
    <div class="BIHPaneContainer">
    <table width="100%" cellspacing="0" cellpadding="0">
    <!-- Create... -->
    <tr id="idCreate"><td class="BIHActionSectionHeader">
    <sawm:messageRef name="kmsgCreateSectionHeader"/>
    </td>
    </tr>
    <tr id="idBIHCreateActionList">
    <td class="BIHActionList">
    <div id="idHomeCreateLinks"></div>
    </td>
    </tr>
    <!-- Browse Catalog... -->
    <tr id="idBrowseCatalog">
    <td class="BIHActionSectionHeader">
    <sawm:messageRef name="kmsgBrowseCatalogSectionHeader"/>
    </td>
    </tr>
    <tr id="idBIHBrowseActionlist">
    <td class="BIHActionList">
    <div id="idHomeBrowseCatalogSection">
    <a id="idCatalogFolders" class="BIHFavoriteFolderLink" href="javascript:void(null)" onclick="saw.home.onAllContentClick(event); return false;">
    &lt;img border="0" alt="<sawm:messageRef name="kmsgBIHCatalogFolders"/>" title="" class="GetStartedActionIcon" src="<sawm:fileMap path="common/favorite_folder_s.png"/>" />
    <span><sawm:messageRef name="kmsgBIHAllContent"/></span>
    <img border="0" alt="Drop down" title="" src="fmap:uicomponents/obips.Menubar/dropdown_md.gif"/>
    </a>
    <a id="idMyRequests" class="BIHFavoriteFolderLink" href="javascript:void(null)" onclick="saw.home.openURL(saw.commandToURL('catalog') + '&amp;Action=search&amp;name=*&amp;type=queryitem1&amp;path=' + saw.encodeURIComponent(saw.getSessionInfos().user.homeDir),event); return false;">
    &lt;img border="0" alt="<sawm:messageRef name="kmsgCatalogFavoriteFolderMyRequest"/>" title="" class="GetStartedActionIcon" src="<sawm:fileMap path="common/favorite_search_s.png"/>" />
    <span><sawm:messageRef name="kmsgCatalogFavoriteFolderMyRequest"/></span>
    </a>
    <a id="idMyReports" class="BIHFavoriteFolderLink" href="javascript:void(null)" onclick="saw.home.openURL(saw.commandToURL('catalog') + '&amp;Action=search&amp;name=*&amp;type=bipReport&amp;path=' + saw.encodeURIComponent(saw.getSessionInfos().user.homeDir),event); return false;">
    &lt;img border="0" alt="<sawm:messageRef name="kmsgBIHMyReports"/>" title="" class="GetStartedActionIcon" src="<sawm:fileMap path="common/favorite_search_s.png"/>" />
    <span><sawm:messageRef name="kmsgBIHMyReports"/></span>
    </a>
    <a id="idMyScorecards" class="BIHFavoriteFolderLink" href="javascript:void(null)" onclick="saw.home.openURL(saw.commandToURL('catalog') + '&amp;Action=search&amp;name=*&amp;type=bsc&amp;path=' + saw.encodeURIComponent(saw.getSessionInfos().user.homeDir),event); return false;">
    &lt;img border="0" alt="<sawm:messageRef name="kmsgBIHMyScorecards"/>" title="" class="GetStartedActionIcon" src="<sawm:fileMap path="common/favorite_search_s.png"/>" />
    <span><sawm:messageRef name="kmsgBIHMyScorecards"/></span>
    </a>
    <sawm:if test="system.config['Alerts/Enabled'] &amp;&amp; privileges.Access['Global Delivers']">
    <a id="idMyIBotSubscriptions" class="BIHFavoriteFolderLink" href="javascript:void(null)" onclick="saw.home.openURL(saw.commandToURL('catalog') + '&amp;Action=favorite&amp;targetid=mySubscription',event); return false;">
    &lt;img border="0" alt="<sawm:messageRef name="kmsgBIHMyIBotSubscriptions"/>" title="" class="GetStartedActionIcon" src="<sawm:fileMap path="common/favorite_search_s.png"/>" />
    <span><sawm:messageRef name="kmsgBIHMyIBotSubscriptions"/></span>
    </a>
    <a id="idMyIBots" class="BIHFavoriteFolderLink" href="javascript:void(null)" onclick="saw.home.openURL(saw.commandToURL('catalog') + '&amp;Action=search&amp;name=*&amp;type=coibot1&amp;path=' + saw.encodeURIComponent(saw.getSessionInfos().user.homeDir),event); return false;">
    &lt;img border="0" alt="<sawm:messageRef name="kmsgBIHMyIBots"/>" title="" class="GetStartedActionIcon" src="<sawm:fileMap path="common/favorite_search_s.png"/>" />
    <span><sawm:messageRef name="kmsgBIHMyIBots"/></span>
    </a>
    </sawm:if>
    </div>
    <div class="BIHManageJobsLink">
    <sawm:if name="privileges['Admin: General'].ManageJobs">
    <a class="BIHFavoriteFolderLink" href="javascript:void(null)" onclick="saw.home.openURL(saw.commandToURL('ViewJobs'), event); return false;">
    <span><sawm:messageRef name="kmsgBIHManageMarketingJobs"/></span>
    </a>
    </sawm:if>
    <sawm:if test="privileges.Publisher.developReport || privileges.Publisher.administerServer">
    <a class="BIHFavoriteFolderLink" href="javascript:void(null)" onclick="saw.home.onBIPReportSchedules(event); return false;">
    <span><sawm:messageRef name="kmsgBIHManageReportsSchedules"/></span>
    </a>
    <a class="BIHFavoriteFolderLink" href="javascript:void(null)" onclick="saw.home.onBIPJobHistory(event); return false;">
    <span><sawm:messageRef name="kmsgBIHManageReportsJobHistory"/></span>
    </a>
    </sawm:if>
    </div>
    </td>
    </tr>
    <!-- Get Started... -->
    <tr id="idGetStarted">
    <td class="BIHActionSectionHeader">
    <sawm:messageRef name="kmsgGetStartedSectionHeader"/>
    </td>
    </tr>
    <tr id="idBIHGetStartedLinks">
    <td class="BIHActionList">
    <!--To custom the links, add a kuiHomePageGetStartedLinks custom message. -->
    <sawm:choose>
    <sawm:when name="getStartedMsg">
    <sawm:messageRef name="kuiHomePageGetStartedLinks" />
    </sawm:when>
    <sawm:otherwise>
    <a class="BIHGetStartedLink" href="javascript:void(null)" onclick="obips.launcher.launchNewWindow('http://download.oracle.com/docs/cd/E14571_01/index.htm','_blank'); return false;">
    &lt;img border="0" alt="<sawm:messageRef name="kmsgBIHHelpIntroduction"/>" title="" class="GetStartedActionIcon" src="<sawm:fileMap path="common/introtooraclebi_lg_qualifier.png"/>" />
    <span><sawm:messageRef name="kmsgBIHHelpIntroduction"/></span>
    </a>
    <a class="BIHGetStartedLink" href="javascript:void(null)" onclick="obips.launcher.launchNewWindow('http://download.oracle.com/docs/cd/E14571_01/index.htm','_blank'); return false;">
    &lt;img border="0" alt="<sawm:messageRef name="kmsgBIHHelpDoc"/>" title="" class="GetStartedActionIcon" src="<sawm:fileMap path="common/quicktour_lg_qualifier.png"/>" />
    <span><sawm:messageRef name="kmsgBIHHelpDoc"/></span>
    </a>
    <a class="BIHGetStartedLink" href="javascript:void(null)" onclick="saw.home.onDownloadDesktopTools(event)" id="idBIHDownloadToolsLink">
    &lt;img border="0" alt="<sawm:messageRef name="kmsgBIHDownloadBIDesktopTools"/>" title="" class="GetStartedActionIcon" src="<sawm:fileMap path="common/downloadBIdesktopapps_lg_ena.png"/>" />
    <span><sawm:messageRef name="kmsgBIHDownloadBIDesktopTools"/></span>
    <img border="0" alt="Drop down" title="" src="fmap:uicomponents/obips.Menubar/dropdown_md.gif"/>
    </a>
    <a class="BIHGetStartedLink" href="javascript:void(null)" onclick="saw.home.onHelpTOCs(event); return false;">
    &lt;img border="0" alt="<sawm:messageRef name="kmsgBIHHelpTOC"/>" title="" class="GetStartedActionIcon" src="<sawm:fileMap path="common/helptopics_lg_qualifier.png"/>" />
    <span><sawm:messageRef name="kmsgBIHHelpTOC"/></span>
         <img border="0" alt="HelpTOCDropdown" title="" src="fmap:uicomponents/obips.UberBar/dropdown_md.gif"/>
    </a>
    <a class="BIHGetStartedLink" href="javascript:void(null)" onclick="obips.launcher.launchNewWindow('http://www.oracle.com/technology/tech/bi/index.html','_blank'); return false;">
    &lt;img border="0" alt="<sawm:messageRef name="kmsgBIHOraTechNetwork"/>" title="" class="GetStartedActionIcon" src="<sawm:fileMap path="common/otn_lg_qualifier.png"/>" />
    <span><sawm:messageRef name="kmsgBIHOraTechNetwork"/></span>
    </a>
    </sawm:otherwise>
    </sawm:choose>
    </td>
    </tr>
    </table>
    </div>
    </td>
    <!-- right pane -->
    <td class="BIEEHomeRight" cellspacing="0" cellpadding="0">
    <table width="100%">
    <!-- Alerts -->
    <tr id="idHomeAlertsRow">
    <td class="BIHListSectionHeaderIconCell">
    &lt;img border="0" alt="<sawm:messageRef name="kmsgViewsAlerts"/>" title="" src="<sawm:fileMap path="common/alert_lg_qualifier.png"/>" />
    </td>
    <td>
    <div class="BIHListSectionHeader">
    <sawm:messageRef name="kmsgViewsAlerts"/>
    </div>
    <div id="idHomeAlerts">
    </div>
    </td>
    </tr>
    <!-- Recent -->
    <tr>
    <td class="BIHListSectionHeaderIconCell">
    &lt;img border="0" alt="<sawm:messageRef name="kmsgBIHRecent"/>" title="" src="<sawm:fileMap path="common/recentupdate_lg_qualifier.png"/>" />
    </td>
    <td>
    <div class="BIHListSectionHeader">
    <sawm:messageRef name="kmsgBIHRecent"/>
    </div>
    <div id="idNoRecentItems">
    &lt;img border="0" align="middle" class="MsgErrorImg" alt="<sawm:messageRef name="kmsgBIHNoRecent"/>" title="" src="<sawm:fileMap path="uicomponents/common/title_info.png"/>" />
    <span class="BIHNoRecentItems"><sawm:messageRef name="kmsgBIHNoRecent"/></span>
    </div>
    <div id="idRecentDashboards" class="BIHRecentSubHeader">
    <sawm:messageRef name="kmsgBIHRecentDB"/>
    </div>
    <div id="idHomeDashboards" class="BIHRecentDBDiv"/>
    <div id="idRecentOthers" class="BIHRecentSubHeader">
    <sawm:messageRef name="kmsgBIHRecentOthers"/>
    </div>
    <div id="idHomeMRU"/>
    </td>
    </tr>
    <!-- Favorites -->
    <tr>
    <td class="BIHListSectionHeaderIconCell">
    &lt;img border="0" alt="<sawm:messageRef name="kmsgBIHFavorites"/>" title="" src="<sawm:fileMap path="catalog/mostpopular_lg_qualifier.png"/>" />
    </td>
    <td>
    <div class="BIHListSectionHeader">
    <sawm:messageRef name="kmsgBIHFavorites"/>
    </div>
    <div id="idNoFavoriteItems">
    &lt;img border="0" align="middle" class="MsgErrorImg" alt="<sawm:messageRef name="kmsgBIHNoRecent"/>" title="" src="<sawm:fileMap path="uicomponents/common/title_info.png"/>" />
    <span class="BIHNoRecentItems"><sawm:messageRef name="kmsgBIHNoFavorites"/></span>
    </div>
    <div id="idHomeFavorites"/>
    </td>
    </tr>
    </table>
    </td>
    </tr>
    </table>
    </div>
    </div>
    <sawm:messageRef name="kuiStaticsPreloadIFrame"/>
    </body>
    </html>
    Edited by: Siva Prasad on Jul 6, 2011 10:39 PM
    Edited by: Siva Prasad on Jul 6, 2011 11:10 PM
    Edited by: Siva Prasad on Jul 6, 2011 11:58 PM

  • Data and Dashboard Security using ROLES Variable in OBIEE 11g

    Hi all,
    I'm currently using OBIEE 11g. I'm wondering how to implement the security for data and dashboard in the 11g.
    Below is the sample of how the security matrix requirement when I use the 10g version. In 10g, we usually use GROUP (for the data filter in RPD) and WEBGROUPS (for dashboard objects) variables in my initialization block to read from database. As we have 2 different variables, it is possible to control security separately for data and dashboard.
    GROUP | Country
    G1 | US
    G2 | FR
    G3 | UK
    WEBGROUPS | Dashboard
    WG1 | D1
    WG2 | D1
    WG3 | D1
    WG1 | D2
    WG2 | D2
    WG1 | D3
    WG3 | D3
    WG3 | D4
    Now, in 11g, the recommendation is to use ROLES variable (for application role). So, how would I apply the required security matrix above in 11g using just ROLES variable? Do I still create G1, G2, G3, WG1, WG2, and WG3 as application roles then only use G1-3 in the RPD to filter the data and only use WG1-3 in the analytics to serve as webgroups?
    Any advice on this? Thank you very much.

    "...Could you elaborate more?"
    I mean that role creation and user->role assignment will be managed outside of to the obiee interface - whether that's via the database, LDAP, fmw etc.
    Webgroup creation and assignment is managed within the obiee interface and I think that has a lot of benefits - generally you have people responsible for shared folders and dashboard creation, so having them responsible for webgroups and presentation permissions is preferable for me.
    "are you saying that I use the role G1-3 only in the RPD, while using the role WG1-3"
    Yes .. I'm assuming you have something like
    G1 | US
    G2 | FR
    G3 | UK
    WG1 | Finance
    WG2 | Marketing
    WG3 | Sales
    Which becomes
    R1 | US
    R2 | FR
    R3 | UK
    R4 | Finance
    R5 | Marketing
    R6 | Sales
    And John belongs to R1 and R4, Fred belongs to R2 and R4 etc. So you would set your data filters against R1-R3 and use R4-R6 like webgroups in the presentation services.
    Regards,
    Robert

  • Data level Security issue in obiee 11g

    Hi,
    We are trying to implement data level security, let me explain the issue
    The requirement is, we have 7 schools and each school has one principle , there will be a Superdintent who has 3 schools under him. so now when each principle logs in to dashboard we have a prompt for school i.e Name of school in that prompt he should see only his school and even the data of that school only which are assigned to him, now when Superdintent logs in he should see all 3 schools in the prompt and data. I have gone through this link (http://www.rittmanmead.com/2012/03/obiee-11g-security-week-row-level-security/) but could not achieve.
    We are able to achieve by writing SQL in BMM layer ( LTS Table) so where ever the table is used in dashboards the security is being applied and we are able to see what we want. We want to achieve this by application role, But when we are creating session variables and applying on Application Role its not working. We want to achieve this by using Application role because suppose in other dashboards when the table is not used or pulled in, it will not work.But if we do it using application role its applies to all dashboards and data is resticted. so that when principle or Superdintent logs in automatically its restricts the data.
    Below is the SQL which we used in BMM LTS, its working fine. But when the same SQL is applied in Application Role it's not working.
    SQL used in session variable -
    select  'SCHOOL_CD1', school_cd1 from w_staff_d where empl_id ='VALUEOF(NQ_SESSION.USER)'
    and job_desc1 = 'Principal High School - KPI'
    Any suggestions please ??
    Thanks,
    VRP

    Hi,
    I pasted the log view below by applying SET VARIABLE LOGLEVEL=2, DISABLE_CACHE_HIT=1;, ran this report by applying SQL in Session variable. Let me know if you want anything -
    Thanks
    [OracleBIServerComponent] [TRACE:2] [USER-0] [] [ecid: c9928ce086f2ff4f:4405c138:13a559973e0:-8000-000000000000f7e9] [tid: 128c] [requestid: 5e40000b] [sessionid: 5e400000] [username: weblogic] ############################################## [[
    -------------------- SQL Request:
    SET VARIABLE QUERY_SRC_CD='Report',SAW_SRC_PATH='/shared/Key Performance Analytics/Analysis/Climate and Culture/Analysis for total school suspensions',LOGLEVEL=2, DISABLE_CACHE_HIT=1; SELECT s_0, s_1, s_2, s_3, s_4, s_5, s_6, s_7, s_8, s_9, s_10, s_11 FROM (
    SELECT
    0 s_0,
    "High School KPI"."- Date"."School Year" s_1,
    "High School KPI"."- Grade"."Grade Level" s_2,
    "High School KPI"."- School"."School Name" s_3,
    "High School KPI"."- School Suspensions"."% of Students Suspended" s_4,
    "High School KPI"."- School Suspensions"."Count of Students Enrolled" s_5,
    "High School KPI"."- School Suspensions"."Count of Students with Incidents" s_6,
    CASE WHEN (CASE WHEN MAX("High School KPI"."- School Suspensions"."% of Students Suspended" BY ) IS NULL THEN 10 ELSE MAX("- School Suspensions"."% of Students Suspended" BY ) END +(CASE WHEN (CASE WHEN MAX("- School Suspensions"."% of Students Suspended" BY ) IS NULL THEN 10 ELSE MAX("- School Suspensions"."% of Students Suspended" BY ) END - CASE WHEN MIN("- School Suspensions"."% of Students Suspended" BY ) IS NULL THEN 0 ELSE MIN("- School Suspensions"."% of Students Suspended" BY )END)=0 THEN CASE WHEN CASE WHEN MAX("- School Suspensions"."% of Students Suspended" BY ) IS NULL THEN 10 ELSE MAX("- School Suspensions"."% of Students Suspended" BY ) END <0 THEN (CASE WHEN MAX("- School Suspensions"."% of Students Suspended" BY ) IS NULL THEN 10 ELSE MAX("- School Suspensions"."% of Students Suspended" BY ) END *-1) ELSE CASE WHEN MAX("- School Suspensions"."% of Students Suspended" BY ) IS NULL THEN 10 ELSE MAX("- School Suspensions"."% of Students Suspended" BY ) END END ELSE (CASE WHEN MAX("- School Suspensions"."% of Students Suspended" BY ) IS NULL THEN 10 ELSE MAX("- School Suspensions"."% of Students Suspended" BY ) END - CASE WHEN MIN("- School Suspensions"."% of Students Suspended" BY ) IS NULL THEN 0 ELSE MIN("- School Suspensions"."% of Students Suspended" BY )END) END /10))<0 THEN 1 ELSE 2 END s_7,
    CASE WHEN (CASE WHEN MAX("High School KPI"."- School Suspensions"."% of Students Suspended" BY ) IS NULL THEN 10 ELSE MAX("- School Suspensions"."% of Students Suspended" BY ) END - CASE WHEN MIN("- School Suspensions"."% of Students Suspended" BY ) IS NULL THEN 0 ELSE MIN("- School Suspensions"."% of Students Suspended" BY )END)=0 THEN CASE WHEN CASE WHEN MAX("- School Suspensions"."% of Students Suspended" BY ) IS NULL THEN 10 ELSE MAX("- School Suspensions"."% of Students Suspended" BY ) END <0 THEN (CASE WHEN MAX("- School Suspensions"."% of Students Suspended" BY ) IS NULL THEN 10 ELSE MAX("- School Suspensions"."% of Students Suspended" BY ) END *-1) ELSE CASE WHEN MAX("- School Suspensions"."% of Students Suspended" BY ) IS NULL THEN 10 ELSE MAX("- School Suspensions"."% of Students Suspended" BY ) END END ELSE (CASE WHEN MAX("- School Suspensions"."% of Students Suspended" BY ) IS NULL THEN 10 ELSE MAX("- School Suspensions"."% of Students Suspended" BY ) END - CASE WHEN MIN("- School Suspensions"."% of Students Suspended" BY ) IS NULL THEN 0 ELSE MIN("- School Suspensions"."% of Students Suspended" BY )END) END s_8,
    CASE WHEN MAX("High School KPI"."- School Suspensions"."% of Students Suspended" BY ) IS NULL THEN 10 ELSE MAX("- School Suspensions"."% of Students Suspended" BY ) END s_9,
    CASE WHEN MIN("High School KPI"."- School Suspensions"."% of Students Suspended" BY ) IS NULL THEN 0 ELSE MIN("- School Suspensions"."% of Students Suspended" BY ) END s_10,
    REPORT_AGGREGATE("High School KPI"."- School Suspensions"."% of Students Suspended" BY "High School KPI"."- Date"."School Year") s_11
    FROM "High School KPI"
    WHERE
    (("- Discipline Action"."Discipline Action Code" = 'Suspension') AND ("- Date"."School Year Desc" = VALUEOF("school_year_desc")))
    ) djm ORDER BY 1, 2 ASC NULLS LAST
    [2012-10-17T18:36:55.000+00:00] [OracleBIServerComponent] [TRACE:2] [USER-23] [] [ecid: c9928ce086f2ff4f:4405c138:13a559973e0:-8000-000000000000f7e9] [tid: 128c] [requestid: 5e40000b] [sessionid: 5e400000] [username: weblogic] -------------------- General Query Info: [[
    Repository: Star, Subject Area: High School KPI, Presentation: High School KPI
    [2012-10-17T18:36:55.000+00:00] [OracleBIServerComponent] [TRACE:2] [USER-18] [] [ecid: c9928ce086f2ff4f:4405c138:13a559973e0:-8000-000000000000f7e9] [tid: 128c] [requestid: 5e40000b] [sessionid: 5e400000] [username: weblogic] -------------------- Sending query to database named SPA (id: <<62064>>), connection pool named Initialization Block Connection Pool: [[
    WITH
    SAWITH0 AS (select T30351.SCHOOL_YEAR_DESC as c2,
    T26564.GRADE_LONG_DESC as c4,
    T26686.SCHOOL_NM as c5,
    T29835.STDNT_WID as c6,
    ROW_NUMBER() OVER (PARTITION BY T30351.SCHOOL_YEAR_DESC, T29835.STDNT_WID ORDER BY T30351.SCHOOL_YEAR_DESC DESC, T29835.STDNT_WID DESC) as c7
    from
    W_GRADE_LEVEL_D T26564 /* KPI_W_GRADE_LEVEL_D */ ,
    W_SCHOOL_YEAR_D T30351 /* KPI_W_SCHOOL_YEAR_D */ ,
    W_ORGANIZATION_D T26686 /* KPI_W_ORGANIZATION_D */ ,
    W_STDNT_ENROLL_SCHOOL_F T29835 /* KPI_W_STDNT_ENROLL_SCHOOL_F */
    where ( T26564.GRADE_LEVEL_WID = T29835.GRADE_LEVEL_WID and T26686.ORGANIZATION_WID = T29835.ORGANIZATION_WID and T29835.SCHOOL_YEAR_WID = T30351.SCHOOL_YEAR_WID and T30351.SCHOOL_YEAR_DESC = '2011-2012' and (T26564.GRADE_LONG_DESC in ('Grade 10', 'Grade 11', 'Grade 12', 'Grade 9')) and (T26686.SCHOOL_NM in ('Central Sr', 'Como Park Sr', 'Harding Sr', 'Highland Park Sr', 'Humboldt Secondary School', 'Johnson Sr', 'Washington Technology Secondary')) ) ),
    SAWITH1 AS (select count(distinct case D1.c7 when 1 then D1.c6 else NULL end ) as c1,
    D1.c2 as c2,
    count(distinct D1.c6) as c3,
    D1.c4 as c4,
    D1.c5 as c5
    from
    SAWITH0 D1
    group by D1.c2, D1.c4, D1.c5),
    SAWITH2 AS (select sum(D1.c1) over (partition by D1.c2) as c1,
    D1.c2 as c2,
    D1.c3 as c3,
    D1.c4 as c4,
    D1.c5 as c5
    from
    SAWITH1 D1),
    SAWITH3 AS (select T30647.SCHOOL_YEAR as c3,
    T26564.GRADE_LONG_DESC as c4,
    T26686.SCHOOL_NM as c5,
    T26023.STDNT_WID as c6,
    ROW_NUMBER() OVER (PARTITION BY T30647.SCHOOL_YEAR, T26023.STDNT_WID ORDER BY T30647.SCHOOL_YEAR DESC, T26023.STDNT_WID DESC) as c7
    from
    W_DISCIPLINE_ACTION_D T29975 /* KPI_W_DISCIPLINE_ACTION_D */ ,
    W_GRADE_LEVEL_D T26564 /* KPI_W_GRADE_LEVEL_D */ ,
    W_KPI_QTR_DAY_D T30647,
    W_ORGANIZATION_D T26686 /* KPI_W_ORGANIZATION_D */ ,
    W_STDNT_DISCIPLINE_F T26023 /* KPI_W_STDNT_DISCIPLINE_F */
    where ( T26023.DISCIPLINE_ACTION_WID = T29975.DISCIPLINE_ACTION_WID and T26023.ORGANIZATION_WID = T26686.ORGANIZATION_WID and T26023.DATE_WID = T30647.DATE_WID and T26023.GRADE_LEVEL_WID = T26564.GRADE_LEVEL_WID and T29975.DISCIPLINE_ACTION_CD = 'Suspension' and (T26564.GRADE_LONG_DESC in ('Grade 10', 'Grade 11', 'Grade 12', 'Grade 9')) and (T26686.SCHOOL_NM in ('Central Sr', 'Como Park Sr', 'Harding Sr', 'Highland Park Sr', 'Humboldt Secondary School', 'Johnson Sr', 'Washington Technology Secondary')) ) ),
    SAWITH4 AS (select count(distinct case D1.c7 when 1 then D1.c6 else NULL end ) as c1,
    count(distinct D1.c6) as c2,
    D1.c3 as c3,
    D1.c4 as c4,
    D1.c5 as c5
    from
    SAWITH3 D1
    group by D1.c3, D1.c4, D1.c5),
    SAWITH5 AS (select sum(D1.c1) over (partition by D1.c3) as c1,
    D1.c2 as c2,
    D1.c3 as c3,
    D1.c4 as c4,
    D1.c5 as c5
    from
    SAWITH4 D1)
    select distinct case when D1.c2 is not null then D1.c2 when D2.c3 is not null then D2.c3 end as c1,
    case when D1.c4 is not null then D1.c4 when D2.c4 is not null then D2.c4 end as c2,
    case when D1.c5 is not null then D1.c5 when D2.c5 is not null then D2.c5 end as c3,
    case when D1.c3 = 0 then NULL else D2.c2 * 100.0 / nullif( D1.c3, 0) end as c4,
    D1.c3 as c5,
    D2.c2 as c6
    from
    SAWITH2 D1,
    SAWITH5 D2
    where ( nvl(D1.c2 , '1') = nvl(D2.c3 , '1') and nvl(D1.c2 , '2') = nvl(D2.c3 , '2') and nvl(D1.c4 , '1') = nvl(D2.c4 , '1') and nvl(D1.c4 , '2') = nvl(D2.c4 , '2') and nvl(D1.c5 , '1') = nvl(D2.c5 , '1') and nvl(D1.c5 , '2') = nvl(D2.c5 , '2') )
    order by c1, c2, c3
    [2012-10-17T18:36:55.000+00:00] [OracleBIServerComponent] [TRACE:2] [USER-18] [] [ecid: c9928ce086f2ff4f:4405c138:13a559973e0:-8000-000000000000f7e9] [tid: 128c] [requestid: 5e40000b] [sessionid: 5e400000] [username: weblogic] -------------------- Sending query to database named SPA (id: <<62434>>), connection pool named Initialization Block Connection Pool: [[
    WITH
    SAWITH0 AS (select T30351.SCHOOL_YEAR_DESC as c2,
    T26564.GRADE_LONG_DESC as c4,
    T26686.SCHOOL_NM as c5,
    T29835.STDNT_WID as c6,
    ROW_NUMBER() OVER (PARTITION BY T30351.SCHOOL_YEAR_DESC, T29835.STDNT_WID ORDER BY T30351.SCHOOL_YEAR_DESC DESC, T29835.STDNT_WID DESC) as c7
    from
    W_GRADE_LEVEL_D T26564 /* KPI_W_GRADE_LEVEL_D */ ,
    W_SCHOOL_YEAR_D T30351 /* KPI_W_SCHOOL_YEAR_D */ ,
    W_ORGANIZATION_D T26686 /* KPI_W_ORGANIZATION_D */ ,
    W_STDNT_ENROLL_SCHOOL_F T29835 /* KPI_W_STDNT_ENROLL_SCHOOL_F */
    where ( T26564.GRADE_LEVEL_WID = T29835.GRADE_LEVEL_WID and T26686.ORGANIZATION_WID = T29835.ORGANIZATION_WID and T29835.SCHOOL_YEAR_WID = T30351.SCHOOL_YEAR_WID and T30351.SCHOOL_YEAR_DESC = '2011-2012' and (T26564.GRADE_LONG_DESC in ('Grade 10', 'Grade 11', 'Grade 12', 'Grade 9')) and (T26686.SCHOOL_NM in ('Central Sr', 'Como Park Sr', 'Harding Sr', 'Highland Park Sr', 'Humboldt Secondary School', 'Johnson Sr', 'Washington Technology Secondary')) ) ),
    SAWITH1 AS (select count(distinct case D1.c7 when 1 then D1.c6 else NULL end ) as c1,
    D1.c2 as c2,
    count(distinct D1.c6) as c3,
    D1.c4 as c4,
    D1.c5 as c5
    from
    SAWITH0 D1
    group by D1.c2, D1.c4, D1.c5),
    SAWITH2 AS (select sum(D1.c1) over (partition by D1.c2) as c1,
    D1.c2 as c2,
    D1.c3 as c3,
    D1.c4 as c4,
    D1.c5 as c5
    from
    SAWITH1 D1),
    SAWITH3 AS (select T30647.SCHOOL_YEAR as c3,
    T26564.GRADE_LONG_DESC as c4,
    T26686.SCHOOL_NM as c5,
    T26023.STDNT_WID as c6,
    ROW_NUMBER() OVER (PARTITION BY T30647.SCHOOL_YEAR, T26023.STDNT_WID ORDER BY T30647.SCHOOL_YEAR DESC, T26023.STDNT_WID DESC) as c7
    from
    W_DISCIPLINE_ACTION_D T29975 /* KPI_W_DISCIPLINE_ACTION_D */ ,
    W_GRADE_LEVEL_D T26564 /* KPI_W_GRADE_LEVEL_D */ ,
    W_KPI_QTR_DAY_D T30647,
    W_ORGANIZATION_D T26686 /* KPI_W_ORGANIZATION_D */ ,
    W_STDNT_DISCIPLINE_F T26023 /* KPI_W_STDNT_DISCIPLINE_F */
    where ( T26023.DISCIPLINE_ACTION_WID = T29975.DISCIPLINE_ACTION_WID and T26023.ORGANIZATION_WID = T26686.ORGANIZATION_WID and T26023.DATE_WID = T30647.DATE_WID and T26023.GRADE_LEVEL_WID = T26564.GRADE_LEVEL_WID and T29975.DISCIPLINE_ACTION_CD = 'Suspension' and (T26564.GRADE_LONG_DESC in ('Grade 10', 'Grade 11', 'Grade 12', 'Grade 9')) and (T26686.SCHOOL_NM in ('Central Sr', 'Como Park Sr', 'Harding Sr', 'Highland Park Sr', 'Humboldt Secondary School', 'Johnson Sr', 'Washington Technology Secondary')) ) ),
    SAWITH4 AS (select count(distinct case D1.c7 when 1 then D1.c6 else NULL end ) as c1,
    count(distinct D1.c6) as c2,
    D1.c3 as c3,
    D1.c4 as c4,
    D1.c5 as c5
    from
    SAWITH3 D1
    group by D1.c3, D1.c4, D1.c5),
    SAWITH5 AS (select sum(D1.c1) over (partition by D1.c3) as c1,
    D1.c2 as c2,
    D1.c3 as c3,
    D1.c4 as c4,
    D1.c5 as c5
    from
    SAWITH4 D1),
    SAWITH6 AS (select case when max(D1.c1) = 0 then NULL else max(D2.c1) * 100.0 / nullif( max(D1.c1), 0) end as c11,
    case when D1.c2 is not null then D1.c2 when D2.c3 is not null then D2.c3 end as c12
    from
    SAWITH2 D1,
    SAWITH5 D2
    where ( nvl(D1.c2 , '1') = nvl(D2.c3 , '1') and nvl(D1.c2 , '2') = nvl(D2.c3 , '2') and nvl(D1.c4 , '1') = nvl(D2.c4 , '1') and nvl(D1.c4 , '2') = nvl(D2.c4 , '2') and nvl(D1.c5 , '1') = nvl(D2.c5 , '1') and nvl(D1.c5 , '2') = nvl(D2.c5 , '2') )
    group by case when D1.c2 is not null then D1.c2 when D2.c3 is not null then D2.c3 end )
    select D2.c11 as c1,
    D2.c12 as c2
    from
    SAWITH6 D2
    order by c2
    Edited by: 965968 on Oct 17, 2012 11:49 AM

Maybe you are looking for