Use of Dimension Hierarchies in BI
Hi,
I'm very new to Oracle BI. I'm little bit confused in creating dimension hierarchies in Business Model and Mapping layer during repository creation. Can i get any information about the need of dimensions and how it is useful in generating requests from BI Answers.
Thanks,
Kumar
For e.g, when you map the GL group account numbers, the predefined group codes such as 'CASH', 'AR', 'AP' , 'TAX' etc are the domain values. In the repository, the metrics are defined based on these domain values.
Say, you mapped your CASH accounts from 0011 through 0100, then OBIEE calculates the metrics related to CASH as summation (or some kind of calculation) on the accounts that have the group codes (domain values) as CASH.
It should be possible to update the domain values directly from ERP database tables but the ETL expects the mapping to be in files. Also in some cases we cannot change the default domain values, all we can change is the mapping to these domain values or create new domain values. At one client, we had to create a new account group code called 'FIXED ASSET' as the default domain values were not sufficient but then we had to change the repository to include new metrics and change existing ones to incorporate this new group code.
-Nilesh
http://www.appsbi.com
Similar Messages
-
SSAS Cube using multiple dimension hierarchies with same key
How can I link two separate dimension hierarchies (driven from two base dimension tables) to the same attribute in the Cube? When I try this, only the common hierarchy levels between two dimensions show up under Browse. Other levels disappear. Details are:
One SSAS 2012 Cube: Expense Daily Snapshot Each fact row has CostCentreSK attribute Two dimensions (with natural hierarchies) based on two separate DB tables. CostCentreSK is the key in both. (I know it sounds strange, but there is a good reason for this.
Be happy to share details.)
After processing when I browse the cube only the common levels between the two hierarchies show up.
Expectation was that the individual hierarchies will show each of their levels. Please help.@Victor Rocca
Some dimensions are common, like Dates and Codes, but mostly they are their own dimensions. Visits
and Actions facts have foreign keys from Events in them, so I would prefer to join directly, anyway. -
Has anyone setup BIEE with OLAP 10g using value-based dimension hierarchies
I just wanted to know if it is possible to setup BIEE with 10g using multple dimensions containing multiple value-based hierarchies?
I know this involves using the OLAP Cube View Generator to create an sql view of the cube data.
I have been able to get this to work with nine dimensions all containing a single value-based hierarchy bar one which had four value-based hierarchies. But as soon as i have multiple hierarchies in multiple dimensions it seems to go haywire and i cannot get the sql view to return correct data.
I thought i would post on the BI side to see if anyone has been successful in creating a BIEE setup like this?The simple answer to your question,
how robust is the 11g materialised views with multiple value-based hierarchies...?is that materialized views are not supported on top of value-based hierarchies in 11g. The reason is that it is not possible to write a reasonable SQL statement that aggregates a fact over a value-based hierarchy. Such a SQL statement is necessary if we want to create a rewritable MV on top of the cube.
But I suspect this is not what you are really asking. If you are trying to set up OBIEE on top of the cube in 10g using the view generator, then you will probably want to use the "ET VIEWS" that are generated automatically in 11g. These are generated whether or not you enable materialized views on top of your cube. I am not aware of any issues with the generated value-based hierarchy view support in 11g. Members may be shared between value hierarchies and you will not need to generate or modify limit maps. -
Error "Members, tuples or sets must use the same hierarchies in the function" in MDX
the following MDX returns error: "Members, tuples or sets must use the same hierarchies in the function"
WITH
MEMBER [Measures].[Prev Year] AS
[Measures].[returns],
PARALLELPERIOD
[Exec Date].[Year].Levels('Year'),
1,
[Exec Date].[Year].CURRENTMEMBER
MEMBER [Measures].[Prev Month] AS
[Measures].[returns],
PARALLELPERIOD
[Exec Date].[Month Num].Levels('Month Num'),
1,
[Exec Date].[Month Num].CURRENTMEMBER
MEMBER [Measures].[Prev Day] AS
[Measures].[returns],
PARALLELPERIOD
[Exec Date].[Day].Levels('Day'),
1,
[Exec Date].[Day].CURRENTMEMBER
SELECT NON EMPTY { StrToMember("@ExecDateLevel"), [Measures].[returns] } ON COLUMNS, NON EMPTY { ([Employees].[Company].[Company].ALLMEMBERS ) } DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_UNIQUE_NAME ON ROWS FROM (
SELECT (
STRTOSET(@ExecDateHierarchy, CONSTRAINED)
) ON COLUMNS FROM [cbSales]) WHERE ( IIF( STRTOSET(@ExecDateHierarchy, CONSTRAINED).Count = 1, STRTOSET(@ExecDateHierarchy, CONSTRAINED), [Exec Date].[Hierarchy].currentmember ) ) CELL PROPERTIES VALUE, BACK_COLOR, FORE_COLOR, FORMATTED_VALUE, FORMAT_STRING, FONT_NAME, FONT_SIZE, FONT_FLAGS
and when I replace "StrToMember(@ExecDateLevel)" with
StrToMember("[Measures].[Prev Month]") the MDX is compiled correctly.
what is the problem?
How can I solve that?Hi Breceive,
In your scenario, the issue is caused by that you select dimension members and measures on the same axis without a crossjoin.
SELECT NON EMPTY { StrToMember("@ExecDateLevel"), [Measures].[returns] } ON COLUMNS
To avoid this issue, you can use the query below.
WITH
MEMBER [Measures].[Prev Year] AS
[Measures].[returns],
PARALLELPERIOD
[Exec Date].[Year].Levels('Year'),
1,
[Exec Date].[Year].CURRENTMEMBER
MEMBER [Measures].[Prev Month] AS
[Measures].[returns],
PARALLELPERIOD
[Exec Date].[Month Num].Levels('Month Num'),
1,
[Exec Date].[Month Num].CURRENTMEMBER
MEMBER [Measures].[Prev Day] AS
[Measures].[returns],
PARALLELPERIOD
[Exec Date].[Day].Levels('Day'),
1,
[Exec Date].[Day].CURRENTMEMBER
SELECT NON EMPTY { StrToMember("@ExecDateLevel")*[Measures].[returns] } ON COLUMNS, NON EMPTY { ([Employees].[Company].[Company].ALLMEMBERS ) } DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_UNIQUE_NAME ON ROWS FROM (
SELECT (
STRTOSET(@ExecDateHierarchy, CONSTRAINED)
) ON COLUMNS FROM [cbSales]) WHERE ( IIF( STRTOSET(@ExecDateHierarchy, CONSTRAINED).Count = 1, STRTOSET(@ExecDateHierarchy, CONSTRAINED), [Exec Date].[Hierarchy].currentmember ) ) CELL PROPERTIES VALUE, BACK_COLOR, FORE_COLOR, FORMATTED_VALUE, FORMAT_STRING, FONT_NAME, FONT_SIZE, FONT_FLAGS
Here is a similar thread for you reference.
https://social.msdn.microsoft.com/Forums/sqlserver/en-US/3c21d9a8-640d-4dde-bc76-08d1fcbb3a31/multiple-dimension-query?forum=sqlanalysisservices
Regards,
Charlie Liao
TechNet Community Support -
Migrating dimension hierarchies between 2 different essbase applications
Other than manual copy & paste do we have any other option or utility to migrate dimension hierarchies between 2 essbase cubes?
Edited by: 1002514 on May 4, 2013 7:51 AMIf you happen to use ODI then it could be achieved using the "LKM Hyperion Essbase METADATA to SQL" KM to extract the metadata with the "MEMBER_FILTER_VALUE" option to define which member to start extracting from and then set the "MEMBER_FILTER_CRITERIA" with one of the following values - "IDescendants,Descendants,IChildren,Children,Member_Only,Level0,UDA" and then load the extracted metadata in your target databases dimension.
Cheers
John
http://john-goodwin.blogspot.com/ -
Use one dimension to feed 2 other dimensions
Is there a way to use one dimension to push data into two other dimensions using push logic? The client has one dimension in App1 that is a combination of 2 dimensions in App2 ie the Costcenter dimension in App1 is a combination of Plant and Account in App2.
Now they want to push data from App1 into App2 using the Costcenter dimension to populate the Plant and Account.
I have Plant and Acct properties in the Costcenter dimension for mapping.
I tried to use *Rename_dim CC= CC.Plant and *Rename_dim CC=CC.Acct but would get errors when validating the logic script.
Any help would be greatly appreciated.Parameters
COSTCENTER: 70101014
When I test the logic using the logic debugger, I get the error:
Validate member failed:
70101014
70101014
70101014
70101014 on COSTCENTER dimension
When I run the logic thru data manager, the package is successful but the end of the detail status log is 'No records to process'
The push logic should ideally take the Costcenter 70101014 from App1 and take the first 4 char (7010) and record to the Plant dimension in App2 then take the last 4 char (1014) and record to the Account dimension in App2
Logic script:
*DESTINATION_APP= APP2
*RENAME_DIM CC = ACCOUNT
*RENAME_DIM CC= PLANT
*WHEN CATEGORY
*IS "AOP"
*REC(CC=CC.RPT_A,CC=CC.PLANT,CATEGORY=AOP)
*ENDWHEN
*COMMIT -
How to use Multiple Product Hierarchies in Shopping Cart creation
Dear SRM Experts,
We have an issue in using multiple Product Hierarchies while creating a shopping cart. Need your help to resolve this.
Our SRM system is integrated with 2 ERP back-end systems. In material replication we have created 2 hierarchies for different ERPs and their product categories are stored in respective hierachies.
Example:
EBPMATCLAS is for ERP1
EBPSERVCAT is for ERP2
Now when I create shopping cart, it allows only those products which are part of EBPMATCLAS because of below configuration..
We cant configure multiple hierarchies for purchasing so we are not able to use both Hierarchies simultaneously.
Request you to help with the possible solution to use multiple hierarchies.
Thanks
RajanHi Rajan,
You not need to create 2 hierarchy ID. Inside the R3MATCLASS you can see the reference with both banckends.
Ex:
R3MATCLASSECCCLNT001
R3MATCLASSECCCLNT002
Rgs,
Pedro Marques -
#SYNTAX error while using Merge Dimension in webi report
Hi All,
# Syntax error when using merge dimension in webi report
screen shot has been attached.
iam using BO 4.0 SP6
checked the datatypes in BW
they are same in BW in both the queries
i followed the given links but no result.
https://websmp230.sap-ag.de/sap%28bD1lbiZjPTAwMQ==%29/bc/bsp/sno/ui_entry/entry.htm?param=69765F6D6F64653D3030312669765F7361706E6F7465735F6E756D6265723D3138343530303526
https://websmp230.sap-ag.de/sap%28bD1lbiZjPTAwMQ==%29/bc/bsp/sno/ui_entry/entry.htm?param=69765F6D6F64653D3030312669765F7361706E6F7465735F6E756D6265723D3136323339323126
https://websmp230.sap-ag.de/sap%28bD1lbiZjPTAwMQ==%29/bc/bsp/sno/ui_entry/entry.htm?param=69765F6D6F64653D3030312669765F7361706E6F7465735F6E756D6265723D3137353438313026
http://scn.sap.com/thread/3592588#15241008
Need Help!!!!!
Regards
SushmaHi Mark,
Thanks for the reply,
I did not use any formula,
I used merge dimension
Anyways i tried in other system,it s working fine.
Regards
sushma -
#Error & #Syntax when we are using merged dimension in BO4.1 SP3
Dear All,
We are using BO4.1 SP3 and Bex query as datasource.
When we are trying to take merged dimensions in Report block its giving #Syntax Error.
When we are defining variable with merged dimension, its giving #Error message and the merged dimension is deleted from the definition.
Please guide how can I use merged dimension.
Kindly let us know if there are some update required in the current BO version.
Warm Regards,
SonalFirst things abt merge dimension is that merge is applicable only on dimension not on measures.
And other is dimension that are going to be merge should have same data type.
I think you should check these conditions then it will works.
Merge is nothing but full outer join between two data providers. It helps joining two result sets on webi level.
Kindly attach your screen shots so that it would be helpful. -
Use of Dimensions in APO DP Planning Object Structures
In APO DP Planning Objct Structures, I know that it's possible to assign Dimensions to characteristics.
The standard help documentation suggests this is 'to improve performance'.
Can anyone give practical guidance about how to assign Dimensions to improve performance?
Thanks,
Bob Austinthe characterisitcs are grouped logically using the Dimensions
the use of dimensions allows data to be stored in a combination of dimension tables and fact tables
the dimention table consists of the dimension number, a primary key characteristics you assign to the dimension
the primary keys from various dimension tables link up at the fact table and to the values stored in it
so you can think of a star schema of tables with the dimension acting as the link
so when you look for a particular value the dimension table is first quesried based on which the fact table the primary key is linked to is looked up
in order to improve performance, make sure you dont assign too many characterisitics to one dimension
try to logically group the characterisitics - geography for eg can be made of state, region (not material type)
you can also try to match the dimension with the selections you will be using in the planning book,
dimension tables could grow as your characteristic values increase so SAP advices you keep an eye on it (i am not sure of how functionally you can help this but i believe basis will be able to help you with allocating space on an oversized table)
there is a document somewhere in sap marketplace that i am not able to find a link... hopefully someone will link it up here -
Using a Dimension/ Measure in a Where clause of Another Dimension/ Measure in IDT
Hi All
I am building a Universe using Information Design Tool. In the Business Layer, I need to use a created Business Layer Dimension (not Tables) in a Where clause of another dimension as follow:
Dimension: "Current Week No"
SELECT
budgets.dbo.Calenderweeks.WeekNo
WHERE
budgets.dbo.Calenderweeks.EndDate = convert(SMALLDATETIME, fn CURDATE()})
Dimension: "Last Week No"
SELECT
budgets.dbo.Calenderweeks.WeekNo
WHERE
budget.dbo.Calenderweeks .WeekNo = @Select(Dimension\Current Week No) - 1
The first dimension is working well. However, the "Last Week No" shows NOTHING (I do not get any value)
Anyone can explain why I am not get any value from the second dimension, and how I can use a Dimension/ Measure in a Where clause of another Dimension/ Measure ?
ThanksShort answer:
Beware of object WHERE clauses. They are rarely (I'd almost say never) the solution to the problem you're trying to solve.
Long answer:
It doesn't work because you are inadvertently filtering the same value twice in two incompatible ways in the same SQL statement. Both objects SELECT the same column in the database. The first object uses a WHERE clause to set it to the current week. The second object attempts to use a WHERE clause to set it to the previous week, but does so by selecting the first object, so you end up with both objects in your data provider.
Remember that BO is going to place all the objects in your data provider in the same SQL (except of course where your context definition has ensured otherwise.), so you have two WHERE clauses in your generated SQL which attempt to find a line equal both the current week and the previous week... and returns, naturally, no results.
Rewrite it with a derived table (as explained in the response above) and you'll get what you want. -
Using time dimension in materialized view
Do anybody has an example of using Time dimension in MVIEW?. The time tablke has no relation with oder object (ex. i will join the time table with sales table, which has no relation with each other.
Thanks in advance
MehdiHi
Check the foreign key on the fact table to see how it is related to the time dimension table.
Cheers
David -
ADVICE: Using ID Dimensions w/ OLAP_TABLE
Some advice from a consultant in the UK...
My discovery using AW dimensions with a datatype of ID with the OLAP_TABLE function - hopefully it will save you some time !!
I have the follow objects in an AW which I migrated from OES 6.3.2:
DEFINE DJ_DATE DIMENSION TEXT WIDTH 5
DEFINE DJ_BAND DIMENSION TEXT WIDTH 3
DEFINE DJ_INDUSTRY DIMENSION TEXT WIDTH 3
DEFINE DJ_GEOG DIMENSION TEXT WIDTH 2
DEFINE DJ_IDX_CURR DIMENSION ID
DEFINE DJ_INDEX_VAL VARIABLE DECIMAL <DJ_DATE DJ_BAND DJ_CMP_1 <DJ_INDUSTRY DJ_GEOG DJ_IDX_CURR>>
I create the following ADT's & Views:
CREATE TYPE DFR_DJINDEXVAL AS OBJECT (
dj_date DATE,
dj_band VARCHAR2(3),
dj_industry VARCHAR2(3),
dj_geog VARCHAR2(2),
dj_idx_curr VARCHAR2(3),
dj_index_val NUMBER);
CREATE TYPE DFT_DJINDEXVAL AS TABLE OF DFR_DJINDEXVAL;
CREATE OR REPLACE VIEW DFV_DJINDEXVAL_OT AS SELECT * FROM TABLE (CAST (OLAP_TABLE (
'DJ duration session',
'DFT_DJINDEXVAL',
'DIMENSION dj_date FROM dj_date
DIMENSION dj_band FROM dj_band
DIMENSION dj_industry FROM dj_industry
DIMENSION dj_geog FROM dj_geog
DIMENSION dj_idx_curr FROM dj_idx_curr
MEASURE dj_index_val FROM dj_index_val
LOOP dj_cmp_1
AS DFT_DJINDEXVAL));
I get an error when I issue the following query:
select * from DFV_DJINDEXVAL_OT
where dj_date = '06JUN00'
and dj_industry = 'DOW'
and dj_geog = 'W1'
and dj_band = 'ALL'
and dj_idx_curr = 'USD';
select * from DFV_DJINDEXVAL_OT
ERROR at line 1:
ORA-29400: data cartridge error
ORA-01401: inserted value too large for column
WARNING 1) Despite having no values which exceed 3 characters in length, the dj_idx_curr AW dimension has been defined with datatype ID and therefore 8 characters will be inserted, regardless of content.
The way round this is to change the column defintion in the ADT.
CREATE TYPE DFR_DJINDEXVAL AS OBJECT (
dj_date DATE,
dj_band VARCHAR2(3),
dj_industry VARCHAR2(3),
dj_geog VARCHAR2(2),
dj_idx_curr VARCHAR2(8),
dj_index_val NUMBER);
I can now select against the view without error, but I still don't get the result I expect:
SQL> select * from DFV_DJINDEXVAL_OT
2 where dj_date = '06JUN00'
3 and dj_industry = 'DOW'
4 and dj_geog = 'W1'
5 and dj_band = 'ALL'
6 and dj_idx_curr = 'USD';
no rows selected
WARNING 2) ID dimension values will be padded out with blank characters to make them up to a width of 8 characters.
The following query gives me what I want:
SQL> select * from DFV_DJINDEXVAL_OT
2 where dj_date = '06JUN00'
3 and dj_industry = 'DOW'
4 and dj_geog = 'W1'
5 and dj_band = 'ALL'
6 and dj_idx_curr = 'USD ';
DJ_DATE DJ_ DJ_ DJ DJ_IDX_C DJ_INDEX_VAL
06JUN00 ALL DOW W1 USD 238.563007
06JUN00 LRG DOW W1 USD 261.824481
06JUN00 MID DOW W1 USD 200.667549
06JUN00 SML DOW W1 USD 183.01086
06JUN00 TOP DOW W1 USD
06JUN00 LOW DOW W1 USD
6 rows selected.
This is obviously not ideal. A possible solution is to define another view and query this instead:
CREATE OR REPLACE VIEW DFV_DJINDEXVAL AS SELECT
dj_date,
dj_band,
dj_industry,
dj_geog,
rtrim(dj_idx_curr) dj_idx_curr,
dj_index_val
FROM DFV_DJINDEXVAL_OT;
The following query gives me what I want:
SQL> select * from DFV_DJINDEXVAL
2 where dj_date = '06JUN00'
3 and dj_industry = 'DOW'
4 and dj_geog = 'W1'
5 and dj_band = 'ALL'
6 and dj_idx_curr = 'USD';
DJ_DATE DJ_ DJ_ DJ DJ_IDX_C DJ_INDEX_VAL
06JUN00 ALL DOW W1 USD 238.563007
06JUN00 LRG DOW W1 USD 261.824481
06JUN00 MID DOW W1 USD 200.667549
06JUN00 SML DOW W1 USD 183.01086
06JUN00 TOP DOW W1 USD
06JUN00 LOW DOW W1 USD
6 rows selected.
Hope it helps.
StuartADT objects were mandatory in 9.2 but are optional in 10.x
As you are using 10.2, you should use automatic ADT's as shown here
Stuart -
Hi All,
Can anyone tell me how to use a "Dimension created in One module in another module.
Waht I did was, copied the Dimension from Module1 (Dimension) to the Module2(Dimension) -- is this is the right way?
+ Module1
+ Dimension
Common_DIM
+ Modile2
+ Dimension
Common_DIM ??
Thanks in advance for your kind replies.
Ramesh MutyapuJean,
Thanks for your repsonse. My question is like this way.
I have couple of dimensions which are common to two modules and I want to create the FACT table by using the combination of Dimensions from each module. Can you tell me which is the right way?
Ramesh
Hi,
The answer depends on what you want to do. If you want to have people work on 2 copies, you are on the right track. However if you want to use them to load data into or lookup data from, you are fine with just module holding the dimension.
In other words, in the mapping you can combine objects from various modules to do your extraction.
Thanks,
Jean-Pierre -
How to use time dimension.
Hi All,
I have to create a report that will show the worth of portfolio based on time frame that is monthly, quarterly, yearly and since inception.
How can i proceed because i have never used time dimension?
Further i have only one column "Date" in the portfolio table that has a corresponding
worth value. SO i need to create the dimension based on this date column.
Pls help me
ThanksIf all you want is to achieve drills from Month, Quarter and Year then treat it as a normal dimension and create the levels. But if you want to do calculations like YTD, QTD and MTD then you need to create a time dimension. Check my blog entry here http://oraclebizint.wordpress.com/2007/11/05/oracle-bi-ee-101332-understanding-todate-and-ago-achieving-ytd-qtd-and-mtd/ for creating a sample time dimension. Also, you need to manually create logical columns corresponding to the levels that you need. So, if you have only a date column then create logical columns Year, Month and Quarter from this column and then create the time dimension.
Thanks,
Venkat
http://oraclebizint.wordpress.com
Maybe you are looking for
-
2 Conky Problems-Suddenly scrunched formatting and IP set to 127.0.0.1
I have 2 problems with conky, I'm not sure if they are related. First, conky started displaying all scrunched up with much of the formatting wrong. I did not make any configuration changes at the time. I'm sure that I can go through my conkyrc and ad
-
Creating extra star on PDF output (Customer Rating)
Hi all, I am trying to develop a report for customer payment rating and creating start as a rating like one star, two star ... fine star. I am developing this report according to user guide and getting one extra star like six star for 5. I am using t
-
(216) 116-11 error when trying to send a text message
I have read the posts and tried everything except a complete reset of the phone. I still cannot text 2 of my contacts.
-
Apple G4 PowerBook Aluminium m880 startup intermittent.
Hi all, I have an old PowerBook with no battery installed. It has been fine up until last week when it would not respond to the power button. Last night it powered up, but shut down after 15 mins. When I say shut down, it was like pulling the power c
-
Mac OSx