Logical column - Aggregation - based on dimensions
Hi,
Can anyone explain the working of the aggregation based on dimension functionality. I understand it is different from level - based measures.
Thanks in advance.
- Priti
Hi priti,
Aggregation based on dimension .
Hav a look at this you get an idea http://gerardnico.com/wiki/dat/obiee/measure_level_based
UPDATED POST
Sorry i gave you the wrong link.This is what your looking for
http://gerardnico.com/wiki/dat/obiee/aggregation_based_on_dimension
follow this etiquette as your new http://forums.oracle.com/forums/ann.jspa?annID=939
Cheers,
KK
Edited by: Kranthi on Feb 24, 2011 12:20 AM
Similar Messages
-
Logical column - Fact measure using Dimension value
Hello all, I have a Fact table that has a metric (Value) where I have set the Aggregation rule to Sum. Now I'd like to create a metric based on the value of a Product Dimension that joins to this Fact table. So I create logical column that has the syntax - Case When Product_Desc = 'A' then Value else 0 End.
The issue is in Answers when I bring this new metric in it doesn't bring in the correct value, are there steps I am missing with creating this metric?
My assumption is if I just bring that new metric in by itself it would return one record - A sum of the Value where the Product = 'A'.
Thank youHi BRizzle,
In your scenario, you creatre a calculated measure using the employee dimension, and then this measure show "#VALUE" on the pivot table, right? It seems that it's a limitation of using calculated measures in SQL Server Analysis. Calculated measures cannot
be secured using Dimension Security in a straight forward manner, in fact they won't be listed at all in the Dimension tab of the role where we define the Dimension security. When such measures are browsed in client tools like Excel, the value that would be
displayed is an error value like #VALUE. For the detail information about it, please see:
Limitations / Disadvantages of using Calculated Measures / Calculated Members in SSAS
Regards,
Charlie Liao
If you have any feedback on our support, please click
here.
Charlie Liao
TechNet Community Support -
I have CurrentDollars and CurrentUnits in my measures table, and I"ve created PriorDollars and PriorUnits logical columns utilizing the AGO function. Since 'Use existing logical columns as the source' is checked, I don't have access to the Aggregation tab, and everything I've read leads me to believe that this is OBIEE's way of forcing inheritance of the aggregation rule of the 'source' column.
Problem is, the Prior* columns don't aggregate (sum). If I create a report with Year, CurrentDollars, CurrentUnits, I get three rows... one row for each year that has data. That's what I want. But when I add either of the Prior columns, I get 52 rows per year (since my data is at the week level). If I wrap either of the Prior columns in SUM, it sums all Prior* column values. If I check the box that says I want it to use Sum aggregation, nothing changes. I get similar bogus results if I add a SUM function around the original AGO function.
This is a real drag. Am I missing something obvious? Some blogs lead me to think that this is a known bug. Does anyone have a workaround?
Edited by: Tom G. on Aug 26, 2009 11:30 AMHi,
What is the source for AGO measures PriorDollars and PriorUnits?
AGO(CurrentUnits, '?',?)
AGO(CurrentDollars, '?',?)
Have you set up hierarchy correctly (because you said that the granularity in your fact table is at week grain) and it should be like this:
Fiscal Year > Fiscal Quarter > Fiscal Month > Fiscal Week
It depends on how did you define your TIME dimension.
Try maybe like this:
PriorYEARDollars = AGO(CurrentUnits, 'YEAR',1)
and the same for
PriorYEARUnits =AGO(CurrentDollars, 'YEAR',1)
Now, if you put in the report
YEAR
CurrentUnits
CurrentDollars
PriorYEARUnits
PriorYEARDollars
you'll get only three rows (for 3 years) with PRIOR YEAR measures.
Try it.
A good reference for understanding AGO:
http://obiee101.blogspot.com/2008/11/obiee-ago-and-todate-series.html
Also you need to set chronological key correctly for TIME dimension.
Regards
Goran
http://108obiee.blogspot.com -
Aggregation based on dimension
Hi all,
Can anyone help me in knowing the difference between normal aggregation set for a measure irrespective of dimensions and different aggregations set for the same measure based on dimension...hi User,
Look at http://oraclebizint.wordpress.com/2007/12/03/oracle-bi-ee-101332-level-based-measures-lbms/
thanks,
Saichand.v -
Aggreation Based on Dimensions - Aggregation rule: Evaluate_Aggr
Hello Experts,
Can any of you explain to me how do you use the Logical Column Aggregation based on dimensions?. If you can set up a simple example would be great. Also, what is the definition of the aggregation rule : Evaluate_Aggr?, please give a simple example
Thanks for your time
Pablo.And it's not the same than a level based measure :
The definition of a level based measure :
http://gerardnico.com/wiki/dat/obiee/bi_server/design/fact_table/level_based_measure_calculations
An example with evaluate (lag analytic function)
http://gerardnico.com/wiki/dat/obiee/presentation_service/obiee_period_to_period_lag_lead_function
Check the two and you will see the difference in the definition. -
Based on Dimension Aggregation method - OBIEE 11G
Hi,
I have a fact table with one measure value and 3 dimensions (Time, Issue, status). Fact table is loaded monthly data for different issues and with status and a corresponding value.
I want my report to show always issues that is latest of that period and then status of the same.
Lets say:
Fact table has data like this:
31/Jan/2011 - Issue1 - Open - 10
28/Feb/2011 - Issue1 - WIP - 20
31/Mar/2011 - Issue1 - WIP - 30
30/Apr/2011 - Issue1 -WIP - 40
31/May/2011 - Issue1 -Closed - 50
31/May/2011 - Issue2 -Open - 60
31/May/2011 - Issue3 - Open - 20
Now I want to see the report by status and value and it should show me the latest of that time period.
For Quarter1 :
WIP - 30
For Quarter2:
Open - 80
Closed - 50
If I take Year then it should show me :
2011 - Open - 80
2011 - Closed - 50
I tried using aggregation "Based on dimension" option in BMM layer and put Others - Sum() and LAST against time dimension.
But in that case it is giving me the results by status what is latest for the time period. So it is ding sum by other dimension first and then applying LAST method.
In that case result of Quarter -1 will be :
Open - 10
WIP - 30
If I can change the order of aggregation method like first apply LAST method and then do sum then I think desired result will come. But I am not able to change the order.
Is there any other of doing this solution?
Any help is highly appreciated.
ThanksHi,
There will be multiple records for an entire month as there are many issues. For a particular Issue it will be one with one particular status for a particular month.
The join is based on the date colum of fact table and the dimension table.
Regards,
SS -
Why logical column in terms of other logical columns and not physical sourc
Hello
Can someone shed some light that in what scenario ..defining a logical column in terms of other logical column is beneficial compared to defining logical column in terms of physical sources?
I found something on google that said defining in terms of logical columns is like one time thing. I dont understand, even if you define in terms of physical source that' too one time.
In both the case we build an expression specifying which logical or physical columns.
Thank youwell logical columns from physical source, if in logical fact table you can set aggr rules. Logical columns based on other logical columns you can not. Logical columns based on other logical columns will inherit the aggr rules. So for instance, if you create col1 and col2. Both based off physical and both having sum aggr rule. If you create logical column col3 based off these two as such "col1"/"col2" it will produce the following sum(col1)/cum(col2). Now if you really wanted sum(col1/col2) then you should have made col3 based off physical as col1/col2 with aggr rule of sum.
Also of some note, all logical columns based off physical will be performed in the inner most query. So for my example above to get col3 where it is logical col1/logical col2 or sum(col1)/sum(col2) the physical query will be:
select D1.c1/D1.c2
from (
select sum(col1) as c1,
sum(col2) as c2
from tableA
) D1
So my short summary of this, is what or how do you want your sql to be created. Based on this can you lead you to your answer of whether to use logical col based on physical or other logical columns. And unltimately, check the sql generated from your work to ensure the sql queries generated are what you want and expect.
I hope this helps! -
Logical column levels and aggregation
Hi all,
In order to have reliable results, I had to specify a dimension level in a logical column properties.
As a consequence, the generated query includes this level in the query (that's great), but no aggregation is performed afterwards. Therefore, when I display this measure alone in a flat table or a ticker, I have a set of detailed value instead of an aggregated value. The only place where I can see my aggregated value is in a pivot table.
In answers, I tried to :
- replace the default aggregation by an explicit SUM, or
- add a SUM() in the measure formula
but neither solved the issue.
Does anyone know how to solve it?
Thanks in advance.
Ced.Hi,
What is the source for AGO measures PriorDollars and PriorUnits?
AGO(CurrentUnits, '?',?)
AGO(CurrentDollars, '?',?)
Have you set up hierarchy correctly (because you said that the granularity in your fact table is at week grain) and it should be like this:
Fiscal Year > Fiscal Quarter > Fiscal Month > Fiscal Week
It depends on how did you define your TIME dimension.
Try maybe like this:
PriorYEARDollars = AGO(CurrentUnits, 'YEAR',1)
and the same for
PriorYEARUnits =AGO(CurrentDollars, 'YEAR',1)
Now, if you put in the report
YEAR
CurrentUnits
CurrentDollars
PriorYEARUnits
PriorYEARDollars
you'll get only three rows (for 3 years) with PRIOR YEAR measures.
Try it.
A good reference for understanding AGO:
http://obiee101.blogspot.com/2008/11/obiee-ago-and-todate-series.html
Also you need to set chronological key correctly for TIME dimension.
Regards
Goran
http://108obiee.blogspot.com -
OBI EE 10g: Bridge tables and Based on Dimensions Aggregation
hi experts,
i am working on OBI EE 10 g (10.1.3.4)
The BM&M layer consist of:
1) Logical fact table "Sale_Indicators"
Fields: SALE_ID (PK, FK),
D1_ID (FK),
D2_ID (FK),
Indicator1 (measure, level of granularity: SALE_ID),
Indicator2 (measure, level of granularity: SALE_ID),
Indicator3 (measure, level of granularity: SALE_ID)
2) Logical dimension table
"Sales" (PK: SALE_ID),
"D1" (PK: D1_ID),
"D2" (PK: D2_ID),
"Customers" (PK: SALE_ID, CUST_ID) - bridge table!
"Products" (PK: SALE_ID, PROD_ID) - bridge table!
3) Dimensions: SalesDim, D1Dim, D2Dim, CustomersDim, ProductsDim
If fact table is joined with bridge table, the number of rows in fact table is multiplied, for example:
D1_ID | SALE_ID | CUST_ID | Indicator1
777 | 1 | 14 | 10
777 | 1 | 17 | 10
777 | 2 | 15 | 12
888 | 3 | 16 | 20
888 | 3 | 17 | 20
888 | 4 | 19 | 30
I need to get report:
D1_ID | Indicator1 (SUM)
777 | 22
888 | 50
and with filter by customer, for example (CUST_ID = 17):
D1_ID | Indicator1 (SUM)
777 | 10
888 | 20
i am trying to use "based on dimension" aggregation, for example (Indicator1):
Dimension Formula
CustomersDim MIN
ProductsDim MIN
Others SUM
The generated physical SQL performs joining EVERY dimension to the fact table, even though they are not included in the final result set.
Is there any way to tweak logical or physical model in order to eliminate excessive joins?
Thanks in advance!
Edited by: 859688 on 31.10.2011 4:04
Edited by: 859688 on 31.10.2011 4:06
Edited by: 859688 on 31.10.2011 4:08I found this text on the help, but I didn't understand, because when I check the "based on dimensions" check box, I can choose aggregation rules for each dimension, not only the time dimension.
Also, I found in the help menu:
"In the Aggregation tab, select the Based on dimensions check box.
The Browse dialog box automatically opens.
In the Browse dialog box, click New, select a dimension over which you want to aggregate, and then click OK.
In the Aggregation tab, from the Formula drop-down list, select a rule."
I did the same steps suggested by the text above, but it didn't work. -
Logical Column based on expression leads to nQSError: 14020
Hallo everbody,
I've got two dimensions D01, D02 and a fact table F.
In Answers I have created analysises before containing D01.A and D02.A without problems.
Now, in the rpd-file, I added another logical column to dimension D01, say D01.B, which is based on an expression of type "SOME_FUNCTIONS(D01.A))".
If I drag D01.B and D02.A into an analysis I get the error message: nQSError: 14020 "None of the fact tables are compatible with the query request..."
What is the problem here? I don't quite understand what is going wrong here, as I only used some functions on a colum that is working...
Thanks for any help.
Best regards
MattExactly. As I wrote, B contains some functions (mainly SUBSTR and CAST) that depend on other columns from the same dimension (all other colums are physical).
Funny thing is, when I drag D01.B into the analysis alone, it works all fine... Adding a measure also leads to the said error. -
Aggregation tab disabled for fx logical columns
Hello, I am new to OBIEE. Can somebody please help me understand the folowing -
Query - While defining formula column in BMM whenver we use logical column as source why Aggregation Rule tab gets disable?
How can i apply aggregation rule for such columns at RPD. These columns are recognised by icon fx.
Please find attached screenshot to help understand my question.
[https://picasaweb.google.com/105903262683032369187/OBIEE?authkey=Gv1sRgCPW2qu2x8eKdjgE]
Any help is greatly appreciated.
Thanks
Edited by: 930542 on Jun 22, 2012 10:03 PMClick on LTS of Table - Column Mapping - Select the logical column - click on expression - Put your logic here. You will get Aggregation rule is enalbed for the column.
Why ? -- Reason could be nested aggregation is not allowed. Aggregation on the normal column applied during query generation at run time. If you use that Agg.Measure to derive another Agg.measure server could not recognize it during runtime. -
Based on dimension aggregation
I have a fact table with 2 sources. One of these sources has only one measure and I am having problems with it.
This measure must use based on dimension aggregation, but it don't work. When I set this option, the measure shows a blank value in Answers, but when I switch to a default aggregation rule (not based on dimension), like sum or max, the value is shown correctly in Answers.
My doubt is: is it necessary any other configuration on dimensions or fact tables in order to use based on dimensions aggregation? I just change the value in the aggregation tab of the measure, is there any other step necessary?
ThanksI found this text on the help, but I didn't understand, because when I check the "based on dimensions" check box, I can choose aggregation rules for each dimension, not only the time dimension.
Also, I found in the help menu:
"In the Aggregation tab, select the Based on dimensions check box.
The Browse dialog box automatically opens.
In the Browse dialog box, click New, select a dimension over which you want to aggregate, and then click OK.
In the Aggregation tab, from the Formula drop-down list, select a rule."
I did the same steps suggested by the text above, but it didn't work. -
Display values for logical columns with several physical sources
Hi all,
I'm enocuntering some strange behaviour with the values displayed for a column (when we want to add it a as a filter, and in the dialogue box select 'Show All' values).
Basically the logical column is mapped against several physical columns as the base fact table is aggregated to different levels. Additionally, one column in the fact tables has an attribute value, and these vary between the aggregated and non-aggregated table. This is not a problem.
In the production environment, when we display the all values in the filters prompt for this column we are seeing the values being taken from one fact table. Naturally this means that not all the values possible for this column are being shown (i.e. values from the aggregated fact tables are missing). Now in one of our test environment where those fact tabels have additional data loaded, the values are being taken from one of the other fact tables. Unfortunately it is not necessarily the fact table with less data.
My questions are:
a) What dictates which fact table the server will use when the query in Answers doesnt use any dimensions (i.e. we are selecting just this attribute and selecting all the possible values by which it can be filtered)?
b) Is there a way of obtaining all the values from the differente physical columns? I.e. that the display values shows the values of that logical column across all the physical fact tables? Maybe we would need to model that attribute as a logical dimension just for that attribute? Im not really sure this would work, as at the physical level the join between the dimension and fact would still have to go to only one particular fact table.
Any info or help is much appreciated.Hi,
Aggregate tables exist at physical level and are created by ETL procedures. Although i am aware that the dimension come into play when the application needs to decide which source aggregate table to use, it is not an issue here as in our query we are not involving dimensions. We are selecting just this one columen, and then the filter option on this column, then in the dialogue box we select 'All Choices', only the values from one of the source tables is being shown.
This is not a probelm within reports, i think it is a product limitation in that in that option to list all values a user can filter by, it is not possible to display all the values from the different fact tables to which that column is mapped.
Has anyone else encountered this behaviour? -
How To Create Logical column For Lastyear To Till Date
Hi All,
I Have to calculate Lastyear to Till Date for Logical Column.
Ex:I have Time Dime and Fact column and Dimension columns.
jan 2011 to oct 2012.
Please Let me know.
Thanks,
AbhiLooks like you are not reading my messages
Since you are doing on logical columns getting this error.
Try this using physical columns then count from aggregate tab
CASE WHEN "Oracle Data Warehouse"."Catalog"."dbo"."Fact_W_SRVREQ_F_Open_Date"."OPEN_DT_WID" > 20110101 THEN "Oracle Data Warehouse"."Catalog"."dbo"."Fact_W_SRVREQ_F_Open_Date"."SR_WID" END
The same you can go with your variable
Or else the same can do by duplicating the existing Fact - CRM - Service Request"."# of SRs" and just add above code.
or just use the below you dont use sum since already aggregation is happend for # of SRs
CASE WHEN "Core"."Dim - Date"."Year" = VALUEOf("Warehouse Refresh Date Last Year"."CURRENT_CALENDAR_YEAR_LAST_YEAR") AND "Core"."Dim - Date"."Date" < VALUEOF("Warehouse Refresh Date Last Year"."LAST_REFRESH_DATE_LAST_YEAR") THEN "Core"."Fact - CRM - Service Request"."# of SRs" END
Hope this works, mark as correct -
BMM derived logical column - bounced visit
In Web Metrics, a "bounced visit" is when a session views only one page on a website and then leaves. In my fact table, I capture the "total pages" viewed for each session and I define this metric in my Business Model with an aggregation rule of "sum". I'm trying to use this metric to derive the "bounced visit" metric but I'm running into issues.
Session ID Total Pages
1179860475 5
1179861625 1 <= This is a bounced visit
1179861920 7
1179866260 2
1179868693 13
If I define "bounced visits" as
CASE WHEN "total pages" = 1 THEN 1 ELSE 0 END
What I see in the session logs is:
CASE WHEN sum("total pages") = 1 THEN 1 ELSE 0 END
The aggregation of the "total pages" is being done first and then the derived metric is being calculated. This leads to incorrect results. Is there anyway of solving this in the business model? I know that I can go back to the ETL, calculate a "bounce visit" metric, store it in the fact, build out aggregates, etc. I was looking for a short term solution.
Other things I've tried:
1) make a copy of the "total pages" column and turning off the aggregation, call it "total pages - no aggregation"
this leads to queries of the form:
select distinct T22583.TOTAL_PAGES as c1
from
WEB_SESSIONS_A1 T22583
order by c1
2) Create a logical column based on "total pages - no aggregation"
bounced visit = CASE WHEN EnterpriseWarehouse."Web Sessions"."Total Pages - no aggregation" = 1 THEN 1 ELSE 0 END
This leads to [nQSError: 14020] None of the fact tables are compatible with the query request Web Sessions.bounced visit.Cool. I now have two approaches to solve the problem. Thanks for your help. Using your technique, the new logical column shows up in the Logical Table Source screen and I can define an expression for that logical column. The second approach leaves the table type as a Physical table. This has some benefits as I've noticed that the queries that are generated when the table type is defined as a Select statement end up retrieving all of the columns, even though I only needed to act on one of them.
Maybe you are looking for
-
The volume for "IMG_1038.JPG" cannot be found
I copied some photos off a friend's memory stick directly into one of my iphoto folders. Now when i try to move or change the photos, the I get this message (in the topic). When i oped the thumbnail, i can see the enlarged photo, but after 3 seconds
-
**What do you use to compress/encode?
I've been using Compressor for 99% of my work. I was wondering if there is anything better out there that would utilize a MP's cores better and all the RAM you have. I have a 3.3ghz 6-core with 32GB of RAM and sometimes I feel processing should be f
-
To stop Auto population of a field
Hi: For UK,in IT0077,there are fields for veteran status.The non-veteran field is getting auto populated.I want to stop its auto population.How to do that? Regards, Kamini
-
Hi, I was trying to configure a trading partner with FILE as Deliverychannel on a WINDOWS MACHINE . Few challenges I am facing while doing this are - 1. Though i specify the hostname in the TRANSPORT settings, the endpoint URI in the log file always
-
My macbook pro has been acting slow and I stumbled on this in the Disk Utility. Of the two hard drive icons, the top one says 18.9 mb available whereas the one under it and in About This Mac give the number 187 gb. Any clue what is causing this? Not