User Level based Validation caching

Hi,
This is with references to JSP/JPDK based portlets.
To implement validation based caching in JSP portlets, the first step I understand is to create our own class that extends JspValidateRenderer and reference this new class in the provider.xml file in the <showPage class=" "> tag for the appropriate Portlet/s.
The questions I had -
1) What do I call to cause a change in the version identifier? Do I call getNewVersion() and
let my implementation of the JspValidateRenderer's getNewVersion()take care of
setting/updating the version identifier? I dont need to take care of storing the version
identifier anywhere - is that correct?
2) How do I implement this if, for eg. events in Portlet A determines if a cached version or a
new version of Portlet B has to be rendered? In my case Portlet A would be a
showDetails page of Portlet A collecting data that drives the content in Portlet B.
So, everytime the html form in Portlet A'showDetails page is submitted, I would like to
refresh Portlet B, otherwise simply use the cached version. How do I change the version
identifier in Portlet B, to cause the Portlet A to not use the cached version?
3) How do I enforce USER level in this model? I didnt see any parameter that accepts the LEVEL in
validation based caching methods.
Appreciate any suggestions/help since this is my first attempt at implementing any form of cahing
regards
-Ananth Makaram

Yes. There will be 20000 instances in the case you have mentioned.
To answer your question "Would that be expensive OR is it a non-issue? "
- The File Cache is built to handle 10 million cache items efficiently. So, This will NOT be an issue for the cache you are mentioning.
- Assuming each of the portlet is about 2k. In your case you'd only have about 40MB in case. Even in very big sites the cache size is only about 2GB per mid-tier
Moreover, Disk space is very Cheap. There are cache clean jobs which clean up the cache regularly to make sure that it does NOT grow to unmanageable proportions.

Similar Messages

  • Changing The Validity Dates In Org Model in CRM- User Level

    Hi
    How can we restrict the Validity Dates in Organisation Structure at User Level.
    I need that the user should be given some specific dates<b> ( Valid till or assigned till )</b> while assigning in the org. And it should be visible always in the Org Model.
    We tried using Delimited Date Function, but the User gets ellapsed if the Validity is expired.With the business point of view, <b>the requirement is that all user should be listed in Org model with respect to any dates.this would mean that if a user is terminated we would want to change the Valid till date in the Org</b>

    Hi Amrita,
    Business partner number and Object ID is automatically determines by system when creating a org unit.
    I dont find any configuration to create org unit with your own BP number and object ID. You have option to make repairs to the existing org unit.
    Please find the below path to repair the org unit
    IMG -> CRM -> Master Data -> Business partner -> Integration Business partner -Org management -> Create Business partner initially
    Select the org unit and execute to get all the org units.
    You can select the org units with errors /warnings and click on start repair to get automatic assignment of BP.
    Hope it helps
    Reward points if it helps
    Regards,
    Madhu

  • Deleting all user level customizations

    In our WebCenter Portal 11g, PS5 with latest bundle patch, we have quite a few user-level customizations stored in MDS.
    However, we have just changed our user base (different LDAP), so many of the users are no longer valid.
    Does anyone know of a nifty way to delete all the existing user level customizations (and whatever else is stored in MDS on the user level)?

    Hi Jaap.
    I think that you will need to code some Java using MDS API to achieve your purpose.
    I though in a solution based on next ideas:
    1) Analyze metadata paths used by WebCenter in adf-config.xml (It indicates root path folders where apply customizations).
    You have to take entries that are using oracle.webcenter.webcenterapp.internal.metadata.WebCenterUserCC customization class
    2) Use MDS API to go every possible /cust/user folder of preconfigured paths of MDS and remove it. You can decompile previous class to check how and where is storing User customization class.
    However the approach couldn't be good. Why?.
    1) If you download and double check MDS paths (where user customizations are) always is using user name encrypted and then isn't easy generate MDS path to remove user customizations. Should investigate where and how is encrypting user when storing.
    2) You have to know what users are obsolete because you have to generate the path based on that userID (encrypted).
    It's only an idea in my mind. Don't know if exists better approach or something OOTB to delete User customization of obsolete users.
    I hope this help you.
    Regards.

  • Error while performing Risk Analysis at user level for a cross system user

    Dear All,
    I am getting the below error, while performing the risk analysis at user level for a cross system (Oracle) user.
    The error is as follows:
    "ResourceException in method ConnectionFactoryImpl.getConnection(): com.sap.engine.services.connector.exceptions.BaseResourceException: Cannot get connection for 120 seconds. Possible reasons: 1) Connections are cached within SystemThread(can be any server service or any code invoked within SystemThread in the SAP J2EE Engine), 2) The pool size of adapter "SAPJ2EDB" is not enough according to the current load of the system or 3) The specified time to wait for connection is not enough according to the pool size and current load of the system. In case 1) the solution is to check for cached connections using the Connector Service list-conns command, in case 2) to increase the size of the pool and in case 3) to increase the time to wait for connection property. In case of application thread, there is an automatic mechanism which detects unclosed connections and unfinished transactions.RC:1
    Can anyone please help.
    Regards,
    Gurugobinda

    Hi..
    Check the note # SAP Note 1121978
    SAP Note 1121978 - Recommended settings to improve peformance risk analysis.
    Check for the following...
    CONFIGTOOL>SERVER>MANAGERS>THREADMANAGER
    ChangeThreadCountStep =50
    InitialThreadCount= 100
    MaxThreadCount =200
    MinThreadCount =50
    Regards
    Gangadhar

  • Level Based Measures

    Hi Experts,
    please clarify my doubts .
    1. I created 3 level based measures. Year level Revenue, Quarter level Revenue and Month level revenue. And I do have Revenue column which is not at any level.
    Report:
    I put "Date" , "Year based Revenue" , "Quarter based Revenue" and "Month based Revenue" in a report.
    Everything works fine.
    But when i add ' Revenue' Column (not specific to any level) to this report, all values of level based measures changes. Why does this happen. And how to overcome this?
    2. Also when i add columns from other dimensions(Like ProductName) , values of all these level based measures in previous report changes.
    My questioin is why do these fields change their values when someone else comes into picture.(Though they are called level based measures !)
    Is there any way to hold a particular value in a field no matter which ever field comes in a report?
    Thanks in Advance
    Jaan

    Hi Pramod,
    It's customary to award points to Nico for helping you with your question. Could you also set the thread to Answered so other users can take advantage of your work in case they have the same problem?
    Thanks!
    -Joe

  • How to hide the columns at the end user level thru personalization

    Hi all
    how I can hide the columns that are displayed on the portal. Any personalize option for the end user? Any righ click or some thing?
    I am looking at hiding columns not while developing the iViews / Pages, But in the browsers as the end user.
    i can hide the columns what ever i want while creating the iViews for MDM data. but we cant provide the content administrator role to the end user for hiding the columns what ever they want. they want to hide the columns thru pesonalization option at the end user level.
    Can you please let me know whether we can able to hide the columns at the end user level thru personalization ?? is it posible with standard iViews??
    Regards
    Sunil

    Hi Sunil,
    I understood your requirement properly and seems valid and I tried this at my end but i didnt get the solution. Field list is not visible in Personalize option. I dont think it is possible with MDM standard iViews.
    I was thinking an alternative is if some how we manage to give the permissions to end user only on Result Set iView but if it would be possible it will not be a good design.
    Lets wait for some inputs from others.
    Regards,
    Jitesh Talreja

  • BEA User Broup based portal rendering in WLP 10.3

    Hi,
    We are connecting to an external LDAP system to get the user group informmation for the loggged in user and these user groups are already configured in portal admin.
    How can I make sure for the logged in user with a valid user group, gets a portal with only those portlets that he can view?
    Is there any API using which the portal is rendered as per user group privileges?
    Thanks,
    CA

    Visitor entitlements are used to restrict access to portal resources for portal users. Visitor entitlements are based on security roles. Security roles can be based on group membership.
    See the docs at:
    "Overview of Visitor Entitlements": http://download-llnw.oracle.com/docs/cd/E13155_01/wlp/docs103/portlets/portlet_org.html#wp1012363
    "Security Guide": http://download-llnw.oracle.com/docs/cd/E13155_01/wlp/docs103/security/index.html
    "Visitor Entitlements": http://download-llnw.oracle.com/docs/cd/E13155_01/wlp/docs103/security/intro.html#wp1020050
    "Restricting Portal Visitor Access Using Entitlements": http://download-llnw.oracle.com/docs/cd/E13155_01/wlp/docs103/security/planning.html#wp1021317
    "Creating Visitor Entitlement Roles": http://download-llnw.oracle.com/docs/cd/E13155_01/wlp/docs103/security/visitor_entitlemt.html#wp1057731
    There are more that you will want to look at but if you start with these docs then you will find the links to the other stuff that you need to see.
    Good luck.

  • Can we create wallet at User Level to implement TDE in Oracle 10g

    Hi
    I am going to use a Oracle 10g TDE security feature for data security.I have gone through with lots document.Everywhere there is mention to open or close a Wallet at system level.I mean ALTER SYSTEM..that means except DBA no one can see the encrypted column.
    But my requirement is bit different,I want to encrypt the column based on user.
    lets take example- Suppose we have one table TEST with C1,C2,C3,C4,C5,C6 column and there is U1,U2,U3 user.I want to encrypt C1 and C3 for U1 , C2 and C5 for U2 , C4 and C6 for U3 and U1,U2 and U3 can see only all columns except encrypted column.
    My question is Can we apply TDE at User level rather than system level.
    Any ideas or thought would be appreciable.
    Thanks in advance.
    ANwar

    The idea of TDE is to provide data protection on storage media, so when your backup tapes drop from the truck or the hard disk of a stolen laptop is sold online, encrypted data remains encrypted and can't be read by anyone.
    It seems to me as if you try to achieve access control by encryption, which you don't need: If users have sufficient privileges or the business need to see data, then they should be granted access and see the data de-crypted. Otherwise, access control mechanisms (roles, views, VPD, OLS) should kick in and hide the rows from them.
    So, for day-to-day business of your database, the wallet needs to be open, so that the database can de-crypt data for users who have been granted to see credit card numbers etc., but then limit access to credit card numbers they are not allowed to see with other measures. There is a little hands-on for TDE and VPD here:
    http://www.oracle.com/technology/obe/10gr2_db_vmware/security/tde/tde.htm
    Hope this helps,
    Peter

  • Creating dim, cube based on SOLVED LEVEL-BASED Dims

    Hi All,
    I have generated parent child script using cwm2_olap_pc_transform.create_script. After running this generated script, it has created 3 table/view.
    My Base Parent Child table is like this:-
    drop table PARENT_CHILD;
    create table PARENT_CHILD (PARENT varchar2(30), CHILD varchar2(30));
    insert into PARENT_CHILD values ('Eligible', 'Compliant');
    insert into PARENT_CHILD values ('Eligible', 'Non-Compliant');
    insert into PARENT_CHILD values ('All', 'Eligible');
    insert into PARENT_CHILD values ('All', 'Ineligible');
    insert into PARENT_CHILD values (null, 'All');
    After running generated script thru cwm2_olap_pc_transform.create_script, it has created :-
    Table - PARENT_CHILD_SOLVED
    View - PARENT_CHILD_SOLVED_view , PARENT_CHILD_view
    This script also inserted data in above table/view. (5 rec in each). Table/View structure is like this:-
    SQL> desc PARENT_CHILD_view
    Name Null? Type
    GID NUMBER
    CHILD1 VARCHAR2(30)
    CHILD2 VARCHAR2(30)
    CHILD3 VARCHAR2(30)
    Data:-
    0 All Eligible Compliant
    0 All Eligible Non-Compliant
    1 All Eligible
    1 All Ineligible
    3 All
    SQL> desc PARENT_CHILD_SOLVED
    Name Null? Type
    GID NUMBER
    CHILD1 VARCHAR2(30)
    CHILD2 VARCHAR2(30)
    CHILD3 VARCHAR2(30)
    Data:-
    0 All Eligible Compliant
    0 All Eligible Non-Compliant
    1 All Eligible
    1 All Ineligible
    3 All
    SQL> desc PARENT_CHILD_SOLVED_view
    Name Null? Type
    GID NUMBER
    SHORT_DESCRIPTION VARCHAR2(30)
    LONG_DESCRIPTION VARCHAR2(30)
    CHILD1 VARCHAR2(30)
    CHILD2 VARCHAR2(30)
    CHILD3 VARCHAR2(30)
    Data:-
    0 Compliant Compliant All Eligible Compliant
    0 Non-Compliant Non-Compliant All Eligible Non-Compliant
    1 Eligible Eligible All Eligible
    1 Ineligible Ineligible All Ineligible
    3 All All All
    I tried to create dim and cube based on this. I am not sure whether its correct or not! Though validate_dimension API call shows that it is valid.
    Script for Dim:-
    DECLARE
    -- variable to hold error message
    errtxt varchar(60);
    BEGIN
    -- To be on safer side just drop dimension before creating new one and catch exceptions
    BEGIN
    cwm2_olap_dimension.drop_dimension('APPS', 'HCP_DIM_PC');
    EXCEPTION
    WHEN OTHERS THEN
    dbms_output.put_line('Dimension HCP_DIM_PC not dropped');
    END;
    cwm2_olap_dimension.create_dimension(
    'APPS',
    'HCP_DIM_PC',
    'Parent Child',
    NULL,
    'Parent Child',
    'Parent Child',
    NULL);
    cwm2_olap_dimension_attribute.create_dimension_attribute(
    'APPS',
    'HCP_DIM_PC',
    'Short Description',
    'Short Description',
    'Short Description',
    'Short Description',
    TRUE);
    cwm2_olap_dimension_attribute.create_dimension_attribute(
    'APPS',
    'HCP_DIM_PC',
    'Long Description',
    'Long Description',
    'Long Description',
    'Long Description',
    TRUE);
    cwm2_olap_dimension_attribute.create_dimension_attribute(
    'APPS',
    'HCP_DIM_PC',
    'Grouping ID',
    'Grouping ID',
    'Grouping ID',
    'Grouping ID',
    TRUE);
    cwm2_olap_hierarchy.create_hierarchy(
    'APPS',
    'HCP_DIM_PC',
    'HCP_DIM_PC_HIER',
    'Standard',
    'Standard',
    'Standard Parent Child Hierarchy',
    'SOLVED LEVEL-BASED');
    cwm2_olap_dimension.SET_DEFAULT_DISPLAY_HIERARCHY ('APPS', 'HCP_DIM_PC', 'HCP_DIM_PC_HIER');
    cwm2_olap_level.create_level(
    'APPS',
    'HCP_DIM_PC',
    'ALL_PARENT_LVL',
    'All Parent Child',
    'All Parent Child',
    'All Parent Child',
    'All Parent Child Level');
    cwm2_olap_level_attribute.create_level_attribute(
    'APPS',
    'HCP_DIM_PC',
    'Short Description',
    'ALL_PARENT_LVL',
    'Short Description',
    'Short Description',
    'Short Description',
    'Short Description',
    TRUE);
    cwm2_olap_level_attribute.create_level_attribute(
    'APPS',
    'HCP_DIM_PC',
    'Long Description',
    'ALL_PARENT_LVL',
    'Long Description',
    'Long Description',
    'Long Description',
    'Long Description',
    TRUE);
    cwm2_olap_level_attribute.create_level_attribute(
    'APPS',
    'HCP_DIM_PC',
    'Grouping ID',
    'ALL_PARENT_LVL',
    'Grouping ID',
    'Grouping ID',
    'Grouping ID',
    'HTB Grouping ID',
    TRUE);
    -- Add all levels one by one to dimension hierarchy. For top most level last parameter is null.
    cwm2_olap_level.add_level_to_hierarchy(
    'APPS',
    'HCP_DIM_PC',
    'HCP_DIM_PC_HIER',
    'ALL_PARENT_LVL',
    NULL);
    BEGIN
    cwm2_olap_table_map.removemap_dimtbl_hierlevel(
    'APPS',
    'HCP_DIM_PC',
    'HCP_DIM_PC_HIER',
    'ALL_PARENT_LVL');
    cwm2_olap_table_map.removemap_DimTbl_HierLevelAttr(
    'APPS', 'HCP_DIM_PC', 'Short Description', 'HCP_DIM_PC_HIER', 'ALL_PARENT_LVL', 'Short Description');
    cwm2_olap_table_map.removemap_DimTbl_HierLevelAttr(
    'APPS', 'HCP_DIM_PC', 'Long Description', 'HCP_DIM_PC_HIER', 'ALL_PARENT_LVL', 'Long Description');
    cwm2_olap_table_map.removemap_DimTbl_HierLevelAttr(
    'APPS', 'HCP_DIM_PC', 'Grouping ID', 'HCP_DIM_PC_HIER', 'ALL_PARENT_LVL', 'Grouping ID');
    EXCEPTION
    WHEN OTHERS THEN
    dbms_output.put_line('Level map for ALL_PARENT_LVL not removed');
    END;
    -- Map ALL_PARENT_LVL level to dimension table. Last parameter is null since it is top most level
    cwm2_olap_table_map.map_dimtbl_hierlevel(
    'APPS',
    'HCP_DIM_PC',
    'HCP_DIM_PC_HIER',
    'ALL_PARENT_LVL',
    'APPS',
    'PARENT_CHILD_SOLVED_VIEW',
    'GID',
    NULL);
    -- one by one map all the level attributes to respective columns in the dimension table.
    cwm2_olap_table_map.Map_DimTbl_HierLevelAttr(
    'APPS',
    'HCP_DIM_PC',
    'Short Description',
    'HCP_DIM_PC_HIER',
    'ALL_PARENT_LVL',
    'Short Description',
    'APPS',
    'PARENT_CHILD_SOLVED_VIEW',
    'SHORT_DESCRIPTION');
    cwm2_olap_table_map.Map_DimTbl_HierLevelAttr(
    'APPS',
    'HCP_DIM_PC',
    'Long Description',
    'HCP_DIM_PC_HIER',
    'ALL_PARENT_LVL',
    'Long Description',
    'APPS',
    'PARENT_CHILD_SOLVED_VIEW',
    'LONG_DESCRIPTION');
    cwm2_olap_table_map.Map_DimTbl_HierLevelAttr(
    'APPS',
    'HCP_DIM_PC',
    'Grouping ID',
    'HCP_DIM_PC_HIER',
    'ALL_PARENT_LVL',
    'Grouping ID',
    'APPS',
    'PARENT_CHILD_SOLVED_VIEW',
    'GID');
    -- Use cwm2_olap_validate.validate_dimension to validate the dimension
    cwm2_olap_validate.validate_dimension('APPS', 'HCP_DIM_PC');
    cwm2_olap_metadata_refresh.mr_refresh;
    -- Rollback if any exception occurs during processing this script
    EXCEPTION
    WHEN OTHERS THEN
    cwm_utility.dump_error;
    errtxt := cwm_utility.get_last_error_description;
    dbms_output.put_line('ERROR: ' || errtxt);
    ROLLBACK;
    RAISE;
    END;
    Script for Cube:-
    declare
    HCP_time_dim number;
    errtxt varchar(60);
    begin
    cwm_utility.collect_garbage;
    begin
    cwm2_olap_cube.drop_cube('APPS', 'HCP_PC_CUBE');
    exception
    when others then
    dbms_output.put_line('No HCP_PC_CUBE to drop');
    end;
    begin
    cwm2_olap_catalog.drop_catalog('HCP_PC_CAT');
    exception
    when others then
    dbms_output.put_line('No HCP_PC_CAT to drop');
    end;
    CWM2_OLAP_CUBE.Create_Cube('APPS', 'HCP_PC_CUBE', 'Parent Child Cube', 'Parent Child Cube','Parent Child Cube');
    cwm2_olap_cube.add_dimension_to_cube('APPS', 'HCP_PC_CUBE','APPS', 'HCP_DIM_PC');
    cwm2_olap_measure.create_measure('APPS', 'HCP_PC_CUBE', 'HCP_PC_MEASURE', 'PC Measure','PC Measure', 'PC Measure Fact');
    cwm2_olap_table_map.map_facttbl_levelkey('APPS','HCP_PC_CUBE','APPS','HCP_PC_FACT','ET', 'DIM:APPS.HCP_DIM_PC/HIER:HCP_DIM_PC_HIER/GID:GID/LVL:ALL_PARENT_LVL/COL:CHILD3;');
    cwm2_olap_table_map.Map_FactTbl_Measure('APPS', 'HCP_PC_CUBE','HCP_PC_MEASURE', 'APPS', 'HCP_PC_FACT', 'MEASURE_COL', 'DIM:APPS.HCP_DIM_PC/HIER:HCP_DIM_PC_HIER/GID:GID/LVL:CHILD3/COL:SHORT_DESCRIPTION;');
    cwm2_olap_catalog.create_catalog('HCP_PC_CAT', 'Parent Child Catalog');
    cwm2_olap_catalog.add_catalog_entity('HCP_PC_CAT', 'APPS', 'HCP_PC_CUBE', 'HCP_PC_MEASURE');
    cwm2_olap_validate.validate_cube('APPS', 'HCP_PC_CUBE','DEFAULT','YES');
    cwm2_olap_metadata_refresh.mr_refresh;
    exception
    when others then
    cwm_utility.dump_error;
    errtxt := cwm_utility.get_last_error_description;
    dbms_output.put_line('ERROR: ' || errtxt);
    rollback;
    raise;
    END;
    My Fact Table is :-
    DROP TABLE HCP_PC_FACT CASCADE CONSTRAINT;
    CREATE TABLE HCP_PC_FACT (
    SHORT_DESCRIPTION     VARCHAR2(30) NOT NULL,
    GID               NUMBER NOT NULL,
    CHILD1          VARCHAR2(30) NOT NULL,
    CHILD2          VARCHAR2(30) ,
    CHILD3          VARCHAR2(30) ,
    MEASURE_COL      NUMBER NOT NULL);
    Data in Fact Table:-
    insert into HCP_PC_FACT values('Compliant',0,'All','Eligible','Compliant', 100);
    insert into HCP_PC_FACT values('Non-Compliant',0,'All','Eligible','Non-Compliant', 200);
    insert into HCP_PC_FACT values('Eligible',1,'All','Eligible',null, 300);
    insert into HCP_PC_FACT values('Ineligible',1,'All','Ineligible',null, 400);
    insert into HCP_PC_FACT values('All',3,'All',null,null, 500);
    I am not sure how to create level, level attr, dim attr for such dim.
    Any complete working exapmle will be helpful.
    P.S. One more query I have can we have one solved and one un-solved dim in the same cube/measure?
    regds
    Prakash

    All CWM2 validation API shows that my all dims, cubes are valid but when I try to create presentation thru JDev it hangs after selecting Parent-Child Measure.

  • Issue with Total Number of SODs at user level.

    Friends,
    Quick question -
    We are using GRC 5.3 Production on NT 20003 server. and back end systems are ECC 6.0
    1.We added the Additional Role to one of the business users in ECC 6.0
    2.We ran the FULL synch after adding this role in backend.
    Issue : The total number of SODs did not change for users, even though the SODs for this business users did increase about 300.
    Locations of Screen
    Informer Tab ->> Risk Violoations.
    Analysis Type -> Users
    Does anyone has any idea how this numbers get interpreted?
    The Total number of Violations for permission should increase, if user level SOD gets increased, as per our understanding.
    PT

    It should be in below sequence -
    1. Full or incremental sync for user/role/profile
    2. Full or incremental batch risk analysis for role/user/profile
    3. Management report
    The view you see is management report, which is based upon above jobs. FIrst jobs does high level sync like user/role/profile addition/deletion etc. Second job actually does risk analysis. Third one fills up the management view. If your batch risk analysis was run on  Aug 30 aug 10 and management report after completion of the same, the report will show the same data till you run these jobs again even there are many changes in backend authorization.
    Hope it clarifies your query.
    Regards,
    Sabita

  • Risk Analysis at user level shows nothing in all 3 views though at role level shows risks of global rule set

    I am configuring ARA 10.1 for a ECC 6.0 plug in development system and facing this issue. Risk Analysis at user level shows no data  in all 3 views though at role level shows risks of global rule set. I am using Global rule set. I generated all risks/functions & using connector group as SAP_ECCS_LG not SAP_R3_LG.I activated common, R/3 & ECCS BC sets. Added integration scenario for AUTH. Run all 4 sync jobs multiple times successfully. My system already has decentralised EAM 10.1 implemented & even used in production as BAU. I have checked at both chrome & IE. The misleading thing is that RFC is also working fine & I can see risks in Risk Analysis at role level & risky roles are even assigned to valid users.GRC is at SP4 & accordingly is the ECC 6.0 plug in. Thanks in Advance. Please  consider it urgent.

    Hi,
    Assign ECC connector to SAP_ECCS_LG group.
    Run the programs GRAC_PFCG_AUTHORIZATION_SYNCand GRAC_REPOSITORY_OBJECT_SYNC) in full synch mode(this might take time so better do this in background). Better do it sequentially.Check the logs of the jobs in SLG1 just to ensure everythings fine.
    Run ARA for a specific user and mention the connector for faster output. Ensure this user has the role with risks.Also as explained earlier check the GUID against user id in table GRACUSERROLE and using GRACROLE you can find out the technical name of the role updated in the table. This should be same as the backend role.
    Then run ARA and while doing so please ensure the selection screen doesnt have any unwanted default inputs. If followed correctly , this should be of help.  I am assuming the role analysis yielded correct risks as configured since this would mean that connector have correct actions and basic config is in place.
    Regards,
    Vivek

  • HANA - backup at User level

    Hi..
    Is it possible in SAP HANA to take backup at user level (to take backup of specific user including schemas, objects, constraints etc)?  Currently upto release SPS07, I can only see "full DB backup" option as available.
    Thanks..

    HI Virendra
    nope - like most DBMS SAP HANA does not support user or schema based backup/recovery.
    You may however perform an export/import to store a snapshot of a specific users data.
    - Lars

  • Dimension with SOLVED LEVEL-BASED hierarchy (10.2)

    I'm trying to make a dimension with SOLVED LEVEL-BASED hierarchy (Oracle 10.2.0.1).
    Hierarchy is folowing:
    TOP
    |_OWNER
    |_OBJECT_TYPE
    |_OBJECT_NAME
    Script
    DROP TABLE SOLVED_DIM;
    CREATE TABLE SOLVED_DIM
    GID NUMBER,
    ETKEY VARCHAR2(100),
    PARENT_GID NUMBER,
    PARENT_ETKEY VARCHAR2(100),
    SHORT_DESCRIPTION VARCHAR2(100),
    LONG_DESCRIPTION VARCHAR2(100),
    TOP                    VARCHAR2(100),
    OWNER VARCHAR2(100),
    OBJECT_TYPE VARCHAR2(100),
    OBJECT_NAME VARCHAR2(100) ,
    TOP_ID NUMBER,
    OWNER_ID NUMBER,
    OBJECT_TYPE_ID NUMBER,
    OBJECT_NAME_ID NUMBER,
    ID NUMBER
    --Test dataset &#8470;1
    INSERT INTO SOLVED_DIM VALUES (7, 'TOP', NULL, NULL, 'TOP', 'TOP', 'TOP', NULL, NULL, NULL, 1, NULL, NULL, NULL, 100001);
    INSERT INTO SOLVED_DIM VALUES (3, 'SH', 7, 'TOP', 'SH', 'SH', 'TOP', 'SH', NULL, NULL, 1, 11, NULL, NULL, 100002);
    INSERT INTO SOLVED_DIM VALUES (3, 'OLAP_USR', 7, 'TOP', 'OLAP_USR', 'OLAP_USR', 'TOP', 'OLAP_USR', NULL, NULL, 1, 12, NULL, NULL, 100003);
    INSERT INTO SOLVED_DIM VALUES (1, 'SDIMENSION', 3, 'SH', 'SDIMENSION', 'SDIMENSION', 'TOP', 'SH', 'SDIMENSION', NULL, 1, 11, 111, NULL, 100004);
    INSERT INTO SOLVED_DIM VALUES (1, 'ODIMENSION', 3, 'OLAP_USR', 'ODIMENSION', 'ODIMENSION', 'TOP', 'OLAP_USR', 'ODIMENSION', NULL, 1, 12, 121, NULL, 100005);
    INSERT INTO SOLVED_DIM VALUES (0, 'OUD1', 1, 'ODIMENSION', 'OUD1', 'OUD1', 'TOP', 'OLAP_USR', 'ODIMENSION', 'OUD1', 1, 12, 121, 1211, 100006);
    INSERT INTO SOLVED_DIM VALUES (0, 'OUD2', 1, 'SDIMENSION', 'OUD2', 'OUD2', 'TOP', 'SH', 'SDIMENSION', 'OUD2', 1, 11, 111, 1111, 100007);
    commit;
    --Test dataset &#8470;2
    INSERT INTO SOLVED_DIM VALUES (7, 'TOP', NULL, NULL, 'TOP', 'TOP', 'TOP', NULL, NULL, NULL, 1, NULL, NULL, NULL, 100001);
    INSERT INTO SOLVED_DIM VALUES (3, 'SH', 7, 'TOP', 'SH', 'SH', 'TOP', 'SH', NULL, NULL, 1, 11, NULL, NULL, 100002);
    INSERT INTO SOLVED_DIM VALUES (3, 'OLAP_USR', 7, 'TOP', 'OLAP_USR', 'OLAP_USR', 'TOP', 'OLAP_USR', NULL, NULL, 1, 12, NULL, NULL, 100003);
    INSERT INTO SOLVED_DIM VALUES (1, 'DIMENSION', 3, 'SH', 'DIMENSION', 'DIMENSION', 'TOP', 'SH', 'DIMENSION', NULL, 1, 11, 111, NULL, 100004);
    INSERT INTO SOLVED_DIM VALUES (1, 'DIMENSION', 3, 'OLAP_USR', 'DIMENSION', 'DIMENSION', 'TOP', 'OLAP_USR', 'DIMENSION', NULL, 1, 12, 121, NULL, 100005);
    INSERT INTO SOLVED_DIM VALUES (0, 'OUD1', 1, 'DIMENSION', 'OUD1', 'OUD1', 'TOP', 'OLAP_USR', 'DIMENSION', 'OUD1', 1, 12, 121, 1211, 100006);
    INSERT INTO SOLVED_DIM VALUES (0, 'OUD2', 1, 'DIMENSION', 'OUD2', 'OUD2', 'TOP', 'SH', 'DIMENSION', 'OUD2', 1, 11, 111, 1111, 100007);
    commit;
    BEGIN
    -- ---- Creating Dimension (CWM2_OLAP_DIMENSION) -------------------------
    begin
    cwm2_olap_dimension.drop_dimension(user, 'SOLVED_DIM');
    exception when others then null;
    end;
    cwm2_olap_dimension.create_dimension(user, 'SOLVED_DIM', 'SOLVED_DIM disp', 'SOLVED_DIM pl', 'SOLVED_DIM short', 'SOLVED_DIM long');
    -- ----- Completing Dimension Metadata (CWM2_OLAP_DIMENSION_ATTRIBUTE) ---
    cwm2_olap_dimension_attribute.create_dimension_attribute(user, 'SOLVED_DIM', 'ID', 'ID', 'ID', 'ID');
    cwm2_olap_dimension_attribute.create_dimension_attribute(user, 'SOLVED_DIM', 'ET key', 'ET key', 'ET key', 'ET key', true);
    cwm2_olap_dimension_attribute.create_dimension_attribute(user, 'SOLVED_DIM', 'Parent ET key', 'Parent ET key', 'Parent ET key', 'Parent ET key', true);
    cwm2_olap_dimension_attribute.create_dimension_attribute(user, 'SOLVED_DIM', 'Grouping ID', 'Grouping ID', 'Grouping ID', 'Grouping ID', true);
    cwm2_olap_dimension_attribute.create_dimension_attribute(user, 'SOLVED_DIM', 'Parent Grouping ID', 'Parent Grouping ID', 'Parent Grouping ID', 'Parent Grouping ID', true);
    cwm2_olap_dimension_attribute.create_dimension_attribute(user, 'SOLVED_DIM', 'Long Description', 'Long Description', 'Long Description', 'Long Description', true);
    cwm2_olap_dimension_attribute.create_dimension_attribute(user, 'SOLVED_DIM', 'Short Description', 'Short Description', 'Short Description', 'Short Description', true);
    -- ----- Completing Dimension Metadata (CWM2_OLAP_HIERARCHEY) ------------
    cwm2_olap_hierarchy.create_hierarchy(user, 'SOLVED_DIM', 'SOLVED_DIM_HI', 'SOLVED_DIM_HI disp', 'SOLVED_DIM_HI short', 'SOLVED_DIM_HI long', 'SOLVED LEVEL-BASED');
    cwm2_olap_dimension.set_default_display_hierarchy(user, 'SOLVED_DIM', 'SOLVED_DIM_HI');
    -- ----- Completing Dimension Metadata (CWM2_OLAP_LEVEL) -----------------
    cwm2_olap_level.create_level(user, 'SOLVED_DIM', 'OBJECT_NAME', 'OBJECT_NAME disp', 'OBJECT_NAME pl', 'OBJECT_NAME short', 'OBJECT_NAME long');
    cwm2_olap_level.create_level(user, 'SOLVED_DIM', 'OBJECT_TYPE', 'OBJECT_TYPE disp', 'OBJECT_TYPE pl', 'OBJECT_TYPE short', 'OBJECT_TYPE long');
    cwm2_olap_level.create_level(user, 'SOLVED_DIM', 'OWNER' ,'OWNER disp',      'OWNER pl', 'OWNER short', 'OWNER long');
    cwm2_olap_level.create_level(user, 'SOLVED_DIM', 'TOP', 'TOP disp',           'TOP pl', 'TOP short', 'TOP long');
    -- ----- Completing Dimension Metadata (CWM2_OLAP_LEVEL_ATTRIBUTE) -------
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'ID', 'OBJECT_NAME', 'ID', 'OBJECT_NAME_ID', 'OBJECT_NAME ID', 'ID');
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'ID', 'OBJECT_TYPE', 'ID', 'OBJECT_TYPE_ID', 'OBJECT_TYPE ID', 'ID');
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'ID', 'OWNER',      'ID', 'OWNER_ID', 'OWNER ID', 'ID');
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'ID', 'TOP', 'ID', 'TOP_ID', 'TOP ID', 'ID');
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'ET key', 'OBJECT_NAME', 'ET key', 'OBJECT_NAME_ET', 'OBJECT_NAME ET key', 'ET key', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Parent ET key', 'OBJECT_NAME', 'Parent ET key', 'OBJECT_NAME PARENT', 'OBJECT_NAME Parent ET key', 'Parent ET key', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Grouping ID', 'OBJECT_NAME', 'Grouping ID', 'OBJECT_NAME GID','OBJECT_NAME GID', 'Grouping ID', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Parent Grouping ID', 'OBJECT_NAME', 'Parent Grouping ID', 'OBJECT_NAME PGID', 'OBJECT_NAME Parent Grouping ID', 'Parent Grouping ID', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Long Description', 'OBJECT_NAME', 'Long Description', 'OBJECT_NAME LongDesc', 'OBJECT_NAME Long Desc', 'Long Description', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Short Description', 'OBJECT_NAME', 'Short Description', 'OBJECT_NAME ShortDesc', 'OBJECT_NAME Short Desc', 'Short Description', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'ET key', 'OBJECT_TYPE', 'ET key', 'OBJECT_TYPE_ET', 'OBJECT_TYPE ET key', 'ET key', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Parent ET key', 'OBJECT_TYPE', 'Parent ET key', 'OBJECT_TYPE PARENT', 'OBJECT_TYPE Parent ET key', 'Parent ET key', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Grouping ID', 'OBJECT_TYPE', 'Grouping ID', 'OBJECT_TYPE GID','OBJECT_TYPE GID', 'Grouping ID', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Parent Grouping ID', 'OBJECT_TYPE', 'Parent Grouping ID', 'OBJECT_TYPE PGID', 'OBJECT_TYPE Parent Grouping ID', 'Parent Grouping ID', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Long Description', 'OBJECT_TYPE', 'Long Description', 'OBJECT_TYPE LongDesc', 'OBJECT_TYPE Long Desc', 'Long Description', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Short Description', 'OBJECT_TYPE', 'Short Description', 'OBJECT_TYPE ShortDesc', 'OBJECT_TYPE Short Desc', 'Short Description', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'ET key', 'OWNER', 'ET key', 'OWNER_ET', 'OWNER ET key', 'ET key', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Parent ET key', 'OWNER', 'Parent ET key', 'OWNER PARENT', 'OWNER Parent ET key', 'Parent ET key', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Grouping ID', 'OWNER', 'Grouping ID', 'OWNER GID','OWNER GID', 'Grouping ID', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Parent Grouping ID', 'OWNER', 'Parent Grouping ID', 'OWNER PGID', 'OWNER Parent Grouping ID', 'Parent Grouping ID', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Long Description', 'OWNER', 'Long Description', 'OWNER LongDesc', 'OWNER Long Desc', 'Long Description', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Short Description', 'OWNER', 'Short Description', 'OWNER ShortDesc', 'OWNER Short Desc', 'Short Description', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'ET key', 'TOP', 'ET key', 'TOP_ET', 'TOP ET key', 'ET key', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Parent ET key', 'TOP', 'Parent ET key', 'TOP PARENT', 'TOP Parent ET key', 'Parent ET key', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Grouping ID', 'TOP', 'Grouping ID', 'TOP GID','TOP GID', 'Grouping ID', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Parent Grouping ID', 'TOP', 'Parent Grouping ID', 'TOP PGID', 'TOP Parent Grouping ID', 'Parent Grouping ID', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Long Description', 'TOP', 'Long Description', 'TOP LongDesc', 'TOP Long Desc', 'Long Description', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Short Description', 'TOP', 'Short Description', 'TOP ShortDesc', 'TOP Short Desc', 'Short Description', true);
    cwm2_olap_level.add_level_to_hierarchy(user, 'SOLVED_DIM', 'SOLVED_DIM_HI', 'OBJECT_NAME', 'OBJECT_TYPE');
    cwm2_olap_level.add_level_to_hierarchy(user, 'SOLVED_DIM', 'SOLVED_DIM_HI', 'OBJECT_TYPE', 'OWNER');
    cwm2_olap_level.add_level_to_hierarchy(user, 'SOLVED_DIM', 'SOLVED_DIM_HI', 'OWNER',          'TOP');
    cwm2_olap_level.add_level_to_hierarchy(user, 'SOLVED_DIM', 'SOLVED_DIM_HI', 'TOP');
    -- + Mapping Dimensions +
    cwm2_olap_table_map.map_dimtbl_hierlevel(user, 'SOLVED_DIM', 'SOLVED_DIM_HI', 'OBJECT_NAME', user, 'SOLVED_DIM', 'OBJECT_NAME', 'OBJECT_TYPE');
    cwm2_olap_table_map.map_dimtbl_hierlevel(user, 'SOLVED_DIM', 'SOLVED_DIM_HI', 'OBJECT_TYPE', user, 'SOLVED_DIM', 'OBJECT_TYPE', 'OWNER');
    cwm2_olap_table_map.map_dimtbl_hierlevel(user, 'SOLVED_DIM', 'SOLVED_DIM_HI', 'OWNER',           user, 'SOLVED_DIM', 'OWNER',     'TOP');
    cwm2_olap_table_map.map_dimtbl_hierlevel(user, 'SOLVED_DIM', 'SOLVED_DIM_HI', 'TOP',           user, 'SOLVED_DIM', 'TOP');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'ID', 'SOLVED_DIM_HI', 'OBJECT_NAME', 'ID', user, 'SOLVED_DIM', 'OBJECT_NAME_ID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'ET key', 'SOLVED_DIM_HI', 'OBJECT_NAME', 'ET key', user, 'SOLVED_DIM', 'ETKEY');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Parent ET key', 'SOLVED_DIM_HI', 'OBJECT_NAME', 'Parent ET key', user, 'SOLVED_DIM', 'PARENT_ETKEY');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Grouping ID', 'SOLVED_DIM_HI', 'OBJECT_NAME', 'Grouping ID', user, 'SOLVED_DIM', 'GID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Parent Grouping ID', 'SOLVED_DIM_HI', 'OBJECT_NAME', 'Parent Grouping ID', user, 'SOLVED_DIM', 'PARENT_GID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Long Description', 'SOLVED_DIM_HI', 'OBJECT_NAME', 'Long Description', user, 'SOLVED_DIM', 'LONG_DESCRIPTION');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Short Description', 'SOLVED_DIM_HI', 'OBJECT_NAME', 'Short Description', user, 'SOLVED_DIM', 'SHORT_DESCRIPTION');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'ID', 'SOLVED_DIM_HI', 'OBJECT_TYPE', 'ID', user, 'SOLVED_DIM', 'OBJECT_TYPE_ID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'ET key', 'SOLVED_DIM_HI', 'OBJECT_TYPE', 'ET key', user, 'SOLVED_DIM', 'ETKEY');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Parent ET key', 'SOLVED_DIM_HI', 'OBJECT_TYPE', 'Parent ET key', user, 'SOLVED_DIM', 'PARENT_ETKEY');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Grouping ID', 'SOLVED_DIM_HI', 'OBJECT_TYPE', 'Grouping ID', user, 'SOLVED_DIM', 'GID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Parent Grouping ID', 'SOLVED_DIM_HI', 'OBJECT_TYPE', 'Parent Grouping ID', user, 'SOLVED_DIM', 'PARENT_GID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Long Description', 'SOLVED_DIM_HI', 'OBJECT_TYPE', 'Long Description', user, 'SOLVED_DIM', 'LONG_DESCRIPTION');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Short Description', 'SOLVED_DIM_HI', 'OBJECT_TYPE', 'Short Description', user, 'SOLVED_DIM', 'SHORT_DESCRIPTION');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'ID', 'SOLVED_DIM_HI', 'OWNER', 'ID', user, 'SOLVED_DIM', 'OWNER_ID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'ET key', 'SOLVED_DIM_HI', 'OWNER', 'ET key', user, 'SOLVED_DIM', 'ETKEY');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Parent ET key', 'SOLVED_DIM_HI', 'OWNER', 'Parent ET key', user, 'SOLVED_DIM', 'PARENT_ETKEY');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Grouping ID', 'SOLVED_DIM_HI', 'OWNER', 'Grouping ID', user, 'SOLVED_DIM', 'GID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Parent Grouping ID', 'SOLVED_DIM_HI', 'OWNER', 'Parent Grouping ID', user, 'SOLVED_DIM', 'PARENT_GID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Long Description', 'SOLVED_DIM_HI', 'OWNER', 'Long Description', user, 'SOLVED_DIM', 'LONG_DESCRIPTION');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Short Description', 'SOLVED_DIM_HI', 'OWNER', 'Short Description', user, 'SOLVED_DIM', 'SHORT_DESCRIPTION');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'ID', 'SOLVED_DIM_HI', 'TOP', 'ID', user, 'SOLVED_DIM', 'TOP_ID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'ET key', 'SOLVED_DIM_HI', 'TOP', 'ET key', user, 'SOLVED_DIM', 'ETKEY');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Parent ET key', 'SOLVED_DIM_HI', 'TOP', 'Parent ET key', user, 'SOLVED_DIM', 'PARENT_ETKEY');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Grouping ID', 'SOLVED_DIM_HI', 'TOP', 'Grouping ID', user, 'SOLVED_DIM', 'GID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Parent Grouping ID', 'SOLVED_DIM_HI', 'TOP', 'Parent Grouping ID', user, 'SOLVED_DIM', 'PARENT_GID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Long Description', 'SOLVED_DIM_HI', 'TOP', 'Long Description', user, 'SOLVED_DIM', 'LONG_DESCRIPTION');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Short Description', 'SOLVED_DIM_HI', 'TOP', 'Short Description', user, 'SOLVED_DIM', 'SHORT_DESCRIPTION');
    -- + Validate and Refresh +
    cwm2_olap_validate.validate_dimension(user, 'SOLVED_DIM');
    cwm2_olap_metadata_refresh.mr_refresh;
    END;
    The first dataset works perfectly. But not the second one... There are some intersections at OBJECT_TYPE level.
    TOP->OLAP_USR->DIMENSION->OUD1
    and
    TOP->SH->DIMENSION->OUD2.
    When I'm watching TOP->OLAP_USR->DIMENSION->OUD1, I not only open OUD1, but OUD2 under SH (even skipping OBJECT_TYPE level). It's simple to do it for USOLVED LEVEL-BASED by assigning different Id for the same OBJECT_TYPES from different owners. But it looks like my ids are ignored for Solved hierarchy.
    Does anybody knows how to handle such situation?

    I'm trying to make a dimension with SOLVED LEVEL-BASED hierarchy (Oracle 10.2.0.1).
    Hierarchy is folowing:
    TOP
    |_OWNER
    |_OBJECT_TYPE
    |_OBJECT_NAME
    Script
    DROP TABLE SOLVED_DIM;
    CREATE TABLE SOLVED_DIM
    GID NUMBER,
    ETKEY VARCHAR2(100),
    PARENT_GID NUMBER,
    PARENT_ETKEY VARCHAR2(100),
    SHORT_DESCRIPTION VARCHAR2(100),
    LONG_DESCRIPTION VARCHAR2(100),
    TOP                    VARCHAR2(100),
    OWNER VARCHAR2(100),
    OBJECT_TYPE VARCHAR2(100),
    OBJECT_NAME VARCHAR2(100) ,
    TOP_ID NUMBER,
    OWNER_ID NUMBER,
    OBJECT_TYPE_ID NUMBER,
    OBJECT_NAME_ID NUMBER,
    ID NUMBER
    --Test dataset &#8470;1
    INSERT INTO SOLVED_DIM VALUES (7, 'TOP', NULL, NULL, 'TOP', 'TOP', 'TOP', NULL, NULL, NULL, 1, NULL, NULL, NULL, 100001);
    INSERT INTO SOLVED_DIM VALUES (3, 'SH', 7, 'TOP', 'SH', 'SH', 'TOP', 'SH', NULL, NULL, 1, 11, NULL, NULL, 100002);
    INSERT INTO SOLVED_DIM VALUES (3, 'OLAP_USR', 7, 'TOP', 'OLAP_USR', 'OLAP_USR', 'TOP', 'OLAP_USR', NULL, NULL, 1, 12, NULL, NULL, 100003);
    INSERT INTO SOLVED_DIM VALUES (1, 'SDIMENSION', 3, 'SH', 'SDIMENSION', 'SDIMENSION', 'TOP', 'SH', 'SDIMENSION', NULL, 1, 11, 111, NULL, 100004);
    INSERT INTO SOLVED_DIM VALUES (1, 'ODIMENSION', 3, 'OLAP_USR', 'ODIMENSION', 'ODIMENSION', 'TOP', 'OLAP_USR', 'ODIMENSION', NULL, 1, 12, 121, NULL, 100005);
    INSERT INTO SOLVED_DIM VALUES (0, 'OUD1', 1, 'ODIMENSION', 'OUD1', 'OUD1', 'TOP', 'OLAP_USR', 'ODIMENSION', 'OUD1', 1, 12, 121, 1211, 100006);
    INSERT INTO SOLVED_DIM VALUES (0, 'OUD2', 1, 'SDIMENSION', 'OUD2', 'OUD2', 'TOP', 'SH', 'SDIMENSION', 'OUD2', 1, 11, 111, 1111, 100007);
    commit;
    --Test dataset &#8470;2
    INSERT INTO SOLVED_DIM VALUES (7, 'TOP', NULL, NULL, 'TOP', 'TOP', 'TOP', NULL, NULL, NULL, 1, NULL, NULL, NULL, 100001);
    INSERT INTO SOLVED_DIM VALUES (3, 'SH', 7, 'TOP', 'SH', 'SH', 'TOP', 'SH', NULL, NULL, 1, 11, NULL, NULL, 100002);
    INSERT INTO SOLVED_DIM VALUES (3, 'OLAP_USR', 7, 'TOP', 'OLAP_USR', 'OLAP_USR', 'TOP', 'OLAP_USR', NULL, NULL, 1, 12, NULL, NULL, 100003);
    INSERT INTO SOLVED_DIM VALUES (1, 'DIMENSION', 3, 'SH', 'DIMENSION', 'DIMENSION', 'TOP', 'SH', 'DIMENSION', NULL, 1, 11, 111, NULL, 100004);
    INSERT INTO SOLVED_DIM VALUES (1, 'DIMENSION', 3, 'OLAP_USR', 'DIMENSION', 'DIMENSION', 'TOP', 'OLAP_USR', 'DIMENSION', NULL, 1, 12, 121, NULL, 100005);
    INSERT INTO SOLVED_DIM VALUES (0, 'OUD1', 1, 'DIMENSION', 'OUD1', 'OUD1', 'TOP', 'OLAP_USR', 'DIMENSION', 'OUD1', 1, 12, 121, 1211, 100006);
    INSERT INTO SOLVED_DIM VALUES (0, 'OUD2', 1, 'DIMENSION', 'OUD2', 'OUD2', 'TOP', 'SH', 'DIMENSION', 'OUD2', 1, 11, 111, 1111, 100007);
    commit;
    BEGIN
    -- ---- Creating Dimension (CWM2_OLAP_DIMENSION) -------------------------
    begin
    cwm2_olap_dimension.drop_dimension(user, 'SOLVED_DIM');
    exception when others then null;
    end;
    cwm2_olap_dimension.create_dimension(user, 'SOLVED_DIM', 'SOLVED_DIM disp', 'SOLVED_DIM pl', 'SOLVED_DIM short', 'SOLVED_DIM long');
    -- ----- Completing Dimension Metadata (CWM2_OLAP_DIMENSION_ATTRIBUTE) ---
    cwm2_olap_dimension_attribute.create_dimension_attribute(user, 'SOLVED_DIM', 'ID', 'ID', 'ID', 'ID');
    cwm2_olap_dimension_attribute.create_dimension_attribute(user, 'SOLVED_DIM', 'ET key', 'ET key', 'ET key', 'ET key', true);
    cwm2_olap_dimension_attribute.create_dimension_attribute(user, 'SOLVED_DIM', 'Parent ET key', 'Parent ET key', 'Parent ET key', 'Parent ET key', true);
    cwm2_olap_dimension_attribute.create_dimension_attribute(user, 'SOLVED_DIM', 'Grouping ID', 'Grouping ID', 'Grouping ID', 'Grouping ID', true);
    cwm2_olap_dimension_attribute.create_dimension_attribute(user, 'SOLVED_DIM', 'Parent Grouping ID', 'Parent Grouping ID', 'Parent Grouping ID', 'Parent Grouping ID', true);
    cwm2_olap_dimension_attribute.create_dimension_attribute(user, 'SOLVED_DIM', 'Long Description', 'Long Description', 'Long Description', 'Long Description', true);
    cwm2_olap_dimension_attribute.create_dimension_attribute(user, 'SOLVED_DIM', 'Short Description', 'Short Description', 'Short Description', 'Short Description', true);
    -- ----- Completing Dimension Metadata (CWM2_OLAP_HIERARCHEY) ------------
    cwm2_olap_hierarchy.create_hierarchy(user, 'SOLVED_DIM', 'SOLVED_DIM_HI', 'SOLVED_DIM_HI disp', 'SOLVED_DIM_HI short', 'SOLVED_DIM_HI long', 'SOLVED LEVEL-BASED');
    cwm2_olap_dimension.set_default_display_hierarchy(user, 'SOLVED_DIM', 'SOLVED_DIM_HI');
    -- ----- Completing Dimension Metadata (CWM2_OLAP_LEVEL) -----------------
    cwm2_olap_level.create_level(user, 'SOLVED_DIM', 'OBJECT_NAME', 'OBJECT_NAME disp', 'OBJECT_NAME pl', 'OBJECT_NAME short', 'OBJECT_NAME long');
    cwm2_olap_level.create_level(user, 'SOLVED_DIM', 'OBJECT_TYPE', 'OBJECT_TYPE disp', 'OBJECT_TYPE pl', 'OBJECT_TYPE short', 'OBJECT_TYPE long');
    cwm2_olap_level.create_level(user, 'SOLVED_DIM', 'OWNER' ,'OWNER disp',      'OWNER pl', 'OWNER short', 'OWNER long');
    cwm2_olap_level.create_level(user, 'SOLVED_DIM', 'TOP', 'TOP disp',           'TOP pl', 'TOP short', 'TOP long');
    -- ----- Completing Dimension Metadata (CWM2_OLAP_LEVEL_ATTRIBUTE) -------
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'ID', 'OBJECT_NAME', 'ID', 'OBJECT_NAME_ID', 'OBJECT_NAME ID', 'ID');
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'ID', 'OBJECT_TYPE', 'ID', 'OBJECT_TYPE_ID', 'OBJECT_TYPE ID', 'ID');
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'ID', 'OWNER',      'ID', 'OWNER_ID', 'OWNER ID', 'ID');
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'ID', 'TOP', 'ID', 'TOP_ID', 'TOP ID', 'ID');
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'ET key', 'OBJECT_NAME', 'ET key', 'OBJECT_NAME_ET', 'OBJECT_NAME ET key', 'ET key', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Parent ET key', 'OBJECT_NAME', 'Parent ET key', 'OBJECT_NAME PARENT', 'OBJECT_NAME Parent ET key', 'Parent ET key', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Grouping ID', 'OBJECT_NAME', 'Grouping ID', 'OBJECT_NAME GID','OBJECT_NAME GID', 'Grouping ID', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Parent Grouping ID', 'OBJECT_NAME', 'Parent Grouping ID', 'OBJECT_NAME PGID', 'OBJECT_NAME Parent Grouping ID', 'Parent Grouping ID', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Long Description', 'OBJECT_NAME', 'Long Description', 'OBJECT_NAME LongDesc', 'OBJECT_NAME Long Desc', 'Long Description', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Short Description', 'OBJECT_NAME', 'Short Description', 'OBJECT_NAME ShortDesc', 'OBJECT_NAME Short Desc', 'Short Description', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'ET key', 'OBJECT_TYPE', 'ET key', 'OBJECT_TYPE_ET', 'OBJECT_TYPE ET key', 'ET key', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Parent ET key', 'OBJECT_TYPE', 'Parent ET key', 'OBJECT_TYPE PARENT', 'OBJECT_TYPE Parent ET key', 'Parent ET key', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Grouping ID', 'OBJECT_TYPE', 'Grouping ID', 'OBJECT_TYPE GID','OBJECT_TYPE GID', 'Grouping ID', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Parent Grouping ID', 'OBJECT_TYPE', 'Parent Grouping ID', 'OBJECT_TYPE PGID', 'OBJECT_TYPE Parent Grouping ID', 'Parent Grouping ID', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Long Description', 'OBJECT_TYPE', 'Long Description', 'OBJECT_TYPE LongDesc', 'OBJECT_TYPE Long Desc', 'Long Description', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Short Description', 'OBJECT_TYPE', 'Short Description', 'OBJECT_TYPE ShortDesc', 'OBJECT_TYPE Short Desc', 'Short Description', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'ET key', 'OWNER', 'ET key', 'OWNER_ET', 'OWNER ET key', 'ET key', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Parent ET key', 'OWNER', 'Parent ET key', 'OWNER PARENT', 'OWNER Parent ET key', 'Parent ET key', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Grouping ID', 'OWNER', 'Grouping ID', 'OWNER GID','OWNER GID', 'Grouping ID', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Parent Grouping ID', 'OWNER', 'Parent Grouping ID', 'OWNER PGID', 'OWNER Parent Grouping ID', 'Parent Grouping ID', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Long Description', 'OWNER', 'Long Description', 'OWNER LongDesc', 'OWNER Long Desc', 'Long Description', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Short Description', 'OWNER', 'Short Description', 'OWNER ShortDesc', 'OWNER Short Desc', 'Short Description', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'ET key', 'TOP', 'ET key', 'TOP_ET', 'TOP ET key', 'ET key', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Parent ET key', 'TOP', 'Parent ET key', 'TOP PARENT', 'TOP Parent ET key', 'Parent ET key', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Grouping ID', 'TOP', 'Grouping ID', 'TOP GID','TOP GID', 'Grouping ID', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Parent Grouping ID', 'TOP', 'Parent Grouping ID', 'TOP PGID', 'TOP Parent Grouping ID', 'Parent Grouping ID', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Long Description', 'TOP', 'Long Description', 'TOP LongDesc', 'TOP Long Desc', 'Long Description', true);
    cwm2_olap_level_attribute.create_level_attribute(user, 'SOLVED_DIM', 'Short Description', 'TOP', 'Short Description', 'TOP ShortDesc', 'TOP Short Desc', 'Short Description', true);
    cwm2_olap_level.add_level_to_hierarchy(user, 'SOLVED_DIM', 'SOLVED_DIM_HI', 'OBJECT_NAME', 'OBJECT_TYPE');
    cwm2_olap_level.add_level_to_hierarchy(user, 'SOLVED_DIM', 'SOLVED_DIM_HI', 'OBJECT_TYPE', 'OWNER');
    cwm2_olap_level.add_level_to_hierarchy(user, 'SOLVED_DIM', 'SOLVED_DIM_HI', 'OWNER',          'TOP');
    cwm2_olap_level.add_level_to_hierarchy(user, 'SOLVED_DIM', 'SOLVED_DIM_HI', 'TOP');
    -- + Mapping Dimensions +
    cwm2_olap_table_map.map_dimtbl_hierlevel(user, 'SOLVED_DIM', 'SOLVED_DIM_HI', 'OBJECT_NAME', user, 'SOLVED_DIM', 'OBJECT_NAME', 'OBJECT_TYPE');
    cwm2_olap_table_map.map_dimtbl_hierlevel(user, 'SOLVED_DIM', 'SOLVED_DIM_HI', 'OBJECT_TYPE', user, 'SOLVED_DIM', 'OBJECT_TYPE', 'OWNER');
    cwm2_olap_table_map.map_dimtbl_hierlevel(user, 'SOLVED_DIM', 'SOLVED_DIM_HI', 'OWNER',           user, 'SOLVED_DIM', 'OWNER',     'TOP');
    cwm2_olap_table_map.map_dimtbl_hierlevel(user, 'SOLVED_DIM', 'SOLVED_DIM_HI', 'TOP',           user, 'SOLVED_DIM', 'TOP');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'ID', 'SOLVED_DIM_HI', 'OBJECT_NAME', 'ID', user, 'SOLVED_DIM', 'OBJECT_NAME_ID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'ET key', 'SOLVED_DIM_HI', 'OBJECT_NAME', 'ET key', user, 'SOLVED_DIM', 'ETKEY');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Parent ET key', 'SOLVED_DIM_HI', 'OBJECT_NAME', 'Parent ET key', user, 'SOLVED_DIM', 'PARENT_ETKEY');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Grouping ID', 'SOLVED_DIM_HI', 'OBJECT_NAME', 'Grouping ID', user, 'SOLVED_DIM', 'GID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Parent Grouping ID', 'SOLVED_DIM_HI', 'OBJECT_NAME', 'Parent Grouping ID', user, 'SOLVED_DIM', 'PARENT_GID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Long Description', 'SOLVED_DIM_HI', 'OBJECT_NAME', 'Long Description', user, 'SOLVED_DIM', 'LONG_DESCRIPTION');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Short Description', 'SOLVED_DIM_HI', 'OBJECT_NAME', 'Short Description', user, 'SOLVED_DIM', 'SHORT_DESCRIPTION');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'ID', 'SOLVED_DIM_HI', 'OBJECT_TYPE', 'ID', user, 'SOLVED_DIM', 'OBJECT_TYPE_ID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'ET key', 'SOLVED_DIM_HI', 'OBJECT_TYPE', 'ET key', user, 'SOLVED_DIM', 'ETKEY');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Parent ET key', 'SOLVED_DIM_HI', 'OBJECT_TYPE', 'Parent ET key', user, 'SOLVED_DIM', 'PARENT_ETKEY');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Grouping ID', 'SOLVED_DIM_HI', 'OBJECT_TYPE', 'Grouping ID', user, 'SOLVED_DIM', 'GID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Parent Grouping ID', 'SOLVED_DIM_HI', 'OBJECT_TYPE', 'Parent Grouping ID', user, 'SOLVED_DIM', 'PARENT_GID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Long Description', 'SOLVED_DIM_HI', 'OBJECT_TYPE', 'Long Description', user, 'SOLVED_DIM', 'LONG_DESCRIPTION');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Short Description', 'SOLVED_DIM_HI', 'OBJECT_TYPE', 'Short Description', user, 'SOLVED_DIM', 'SHORT_DESCRIPTION');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'ID', 'SOLVED_DIM_HI', 'OWNER', 'ID', user, 'SOLVED_DIM', 'OWNER_ID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'ET key', 'SOLVED_DIM_HI', 'OWNER', 'ET key', user, 'SOLVED_DIM', 'ETKEY');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Parent ET key', 'SOLVED_DIM_HI', 'OWNER', 'Parent ET key', user, 'SOLVED_DIM', 'PARENT_ETKEY');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Grouping ID', 'SOLVED_DIM_HI', 'OWNER', 'Grouping ID', user, 'SOLVED_DIM', 'GID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Parent Grouping ID', 'SOLVED_DIM_HI', 'OWNER', 'Parent Grouping ID', user, 'SOLVED_DIM', 'PARENT_GID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Long Description', 'SOLVED_DIM_HI', 'OWNER', 'Long Description', user, 'SOLVED_DIM', 'LONG_DESCRIPTION');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Short Description', 'SOLVED_DIM_HI', 'OWNER', 'Short Description', user, 'SOLVED_DIM', 'SHORT_DESCRIPTION');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'ID', 'SOLVED_DIM_HI', 'TOP', 'ID', user, 'SOLVED_DIM', 'TOP_ID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'ET key', 'SOLVED_DIM_HI', 'TOP', 'ET key', user, 'SOLVED_DIM', 'ETKEY');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Parent ET key', 'SOLVED_DIM_HI', 'TOP', 'Parent ET key', user, 'SOLVED_DIM', 'PARENT_ETKEY');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Grouping ID', 'SOLVED_DIM_HI', 'TOP', 'Grouping ID', user, 'SOLVED_DIM', 'GID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Parent Grouping ID', 'SOLVED_DIM_HI', 'TOP', 'Parent Grouping ID', user, 'SOLVED_DIM', 'PARENT_GID');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Long Description', 'SOLVED_DIM_HI', 'TOP', 'Long Description', user, 'SOLVED_DIM', 'LONG_DESCRIPTION');
    cwm2_olap_table_map.map_dimtbl_hierlevelattr(user, 'SOLVED_DIM', 'Short Description', 'SOLVED_DIM_HI', 'TOP', 'Short Description', user, 'SOLVED_DIM', 'SHORT_DESCRIPTION');
    -- + Validate and Refresh +
    cwm2_olap_validate.validate_dimension(user, 'SOLVED_DIM');
    cwm2_olap_metadata_refresh.mr_refresh;
    END;
    The first dataset works perfectly. But not the second one... There are some intersections at OBJECT_TYPE level.
    TOP->OLAP_USR->DIMENSION->OUD1
    and
    TOP->SH->DIMENSION->OUD2.
    When I'm watching TOP->OLAP_USR->DIMENSION->OUD1, I not only open OUD1, but OUD2 under SH (even skipping OBJECT_TYPE level). It's simple to do it for USOLVED LEVEL-BASED by assigning different Id for the same OBJECT_TYPES from different owners. But it looks like my ids are ignored for Solved hierarchy.
    Does anybody knows how to handle such situation?

  • Howto create special level based measure

    Hi all
    I have a geography dimension :
    All
    -Region
    --coutry
    ---store
    I'm reporting the sales per year:
    I need to create a measure that able the user to display 'shareof sales' for every level in the hierarchy.
    In other words In need a logical column that allows the user to see :
    store sales /total of 'country sales '
    country sales /total of 'Region sales'
    Region sales/total of 'All sales'
    I created 3 level based measure with different levels for every one and calculate the 3 'shareof sales'.I had a correct result But the user wants to have only one logical column representing all the combinations and using different levels of the hierarchy as lowest level .
    Is it possible to create this kind of calculation?

    Thanks stijn
    Yes he wants "sales by store"/"total country sales" when a store is in the report and "sales by country"/"total region sales" when country is in the report, but he also wants to "sales by lowest level of detail" / "sales by lowest + 2 level of detail" when store is in the report and this using the same logical column.
    But how do you create a measure which is aggregated by the lowest +1 level of detail?
    No i didn't create this aggregation and I don't know if it's possible.so I don't realy have "sales by country"/"total region sales" when country is in the report.
    Do you know what I mean? So actually you want the BI Server to find out what the higher level in the hierarchy is. I'm not aware of a function which could do this.
    Actually as you said is their any way to make the server aware of this or every thing need to be decided in the repository before??
    Regards
    Edited by: aharrab_be on Jan 28, 2009 6:55 AM

  • Calculate based on different level-based measures

    Hi,
    Say that I have a Sales measure and a Region dimension as the following:
    Region: Country -> State -> City -> Individual Stores
    The Sales measure is aggregated by SUM along the dimension. I'd like to create another measure that when the user browses to each level, the measure calculates the ratio of the current Sales measure to its immediate parent level's aggregated Sales total.
    For example, at the City level, the ratio will be City.Sales / State.Sales. At the individual store level, the ratio will be IndividualStores.Sales / City.Sales.
    I know I can probably create one total Sales level-based measure at each level. But then that would give me multiple ratio measures as well, which I don't want. Is there any way to have only ONE ratio measure that reflects the ratio at each level depending what level the user is viewing?
    Thanks.

    JLin,
    I think you were right when you were saying that you could create several metrics. I looked at your requirement again and realized that those are indeed separate metrics - since they use different columns for sales. So you can:
    a) create aggregate tables and set LTS there (easiest I think)
    b) adjust your ETL by creating a pre-calculated column based on your requirements
    c) create a long CASE statement - but I'm still not sure how to define hierarchies....variables perhaps...maybe MMA could shed some light into it....
    good luck

Maybe you are looking for

  • How to write driver programming in smartforms

    hi Floks <i>how to write driver programmig and how many types of driver programs available to trigger smartforms what are they . how to call the url in smartforms ? help me  out  .thanking you ,</i> with regards, suresh

  • Call Save Dialog [Save As] is not allowing me to Bookmark in Portal

    Hi All, I am facing some problems trying to implement BEx bookmarking into my Portal. To explain a little further about our setup, we have a master web template which is connected to approximately 80+ queries. Within that web template, we have a butt

  • Tagging in InDesign CS5, js

    Hi, I need to assign tags to objects in InDesign through script. I looked in OMV, but I couldn't find tags. I would assume it would be something like this: myFrame.tag = "picture1"; I found autoTag, but it does not let me to assign my tag. Your help

  • Broken Pipe error  when connecting to database

    Hi I have installed ODI and Oracle 10g database on my machine. But getting a Broken Pipe error while creating an entity in Oracle Data Profiling and Quality tool Or I can say while connecting database. It's a runtime error. Server terminated the appl

  • Shutdown and reboot logging

    Is there any file that keeps shutdowns and reboots track? or i should use wtmpx?