Implicit fact columns
Hi all,
I have 5 dimensions and 6 fact tables. I have created common fact table which contains all other fact measure columns.
I have to assign Implicit fact columns in presentation layer.
Please Guide me which column i have to assign.
Thanks in advance.
Hi RR,
You have 2 or more fact tables and couple of dimensions. And not all the fact tables are joined with all the dimensions.And when you just query the data out of dimension which is not joined to a fact table. It will give you an error like ..Can not navigate to the fact table.
Matter of fact is : Whenever you query the data just from the dimension it does not just read the data from dimension but it join that dimension with the fact and then get the data from dimension. So to resolve this what you will need an implicit column in presentation catalog so whenever you query data from dimension it goes through the table where you have defined an implicit column.
Please refer more details.
http://www.oraclebidwh.com/2011/11/implicit-fact-column-in-obiee/
http://www.rittmanmead.com/2009/08/oracle-bi-ee-10-1-3-4-1-reporting-on-non-transactional-dimension-values-equivalence-of-outer-joins/ -- this is good.
Hope this help's
Thanks
Satya
Similar Messages
-
When we should go for implicit fact column
hi all,
In which scenario we have to go for implicit fact column....
let say we are having dimensions D1 and D2 and D3.. and two Facts F1and F2
all dimensions are connected to both facts F1 and F2,
once you drag the columns from D1 and D2... the report will come based on facts F1 and F2.... so if we want to restrict the report .. i mean report should come based one Fact table let us say
F1 that time only we have to go for implicit fact column .....
or any other scenarios ... are there for implicit fact column
ThanksHi ,
have a look http://obiee.nl/?tag=dimensional-modelling&paged=2 you willl get a good idea.
Hope this may helpful for you
Thanks,
Ananth -
How to create Implicit Fact column ?and how to use it ?
Hi all,
How to create Implicit Fact column ?
and how to use it ?
Thanks in advanceWhen you create a request with only dimension columns, the Oracle BI engine has to choose a fact table to join the dimensions to each other. If you have multiple fact tables in your BMM layer, the Oracle BI engine will use the most economical fact table, depending on the number of dimensions of the fact table.
In some cases you do not want to use this fact table, but you want to force the Oracle BI engine to use the fact table you want.
In that case you should create a fact (or select an existing fact) of the fact table you want to use for the dimension only query. In the presentation catalog of the subject area you should select this fact as the implicit fact. This fact will always be used in the query, but it won't be visible in your report. An example of an implicit fact is the count of the primary key (id) of the fact table. -
Implicit Fact column creating problem to the reports.
Hi Friends,
I have two reports from same subject area from two different facts F1 & F2.
I have created one implicit column, as it is unable to judge from which fact it needs to build the query. So, it is genarting query from fact F1.
I have created one logical column in the fact and marked it as Implict column in presnenation layer.( as we the process)
But the problem is, for both the reports it is using same implicit column and it is generating the query with only one fact F1.
It is excluding the other fact F2.
One report it shoud use Fact1 and other report it should use Fact2.
PLease hep me in regarding this,
Thanks & Regards,
Kalyan J VKallu wrote:
Hi Friends,
I have two reports from same subject area from two different facts F1 & F2.
I have created one implicit column, as it is unable to judge from which fact it needs to build the query. So, it is genarting query from fact F1.
I have created one logical column in the fact and marked it as Implict column in presnenation layer.( as we the process)
But the problem is, for both the reports it is using same implicit column and it is generating the query with only one fact F1.
It is excluding the other fact F2.
One report it shoud use Fact1 and other report it should use Fact2.
PLease hep me in regarding this,
Thanks & Regards,
Kalyan J VFrom my understanding, implicit fact column's are set a subject area level and not dimension/fact level. So the fact table you have set for implicit fact will be used in both the reports. Why dont you just drag the second fact into the report and hide it, if you are not trying to use the fact 1 that is setup as implicit fact? -
Implicit Fact Column being ignored
Hi,
I have a Business model containing two fact tables with a shared sets of conformed dimensions. Dim1 and Dim2 are both mapped to Fact1 and Fact2.
When I select attributes from Dim1 and Dim2 (without facts), OBIEE picks Fact2 to pull up the records. Since I want OBIEE to use Fact1, I've setup an Implicit Fact Column using a measure of Fact1.
After restarting all services, OBIEE still picks Fact2 (probably because it has less -conformed- dimensions). When I check the physical query, the Implict Fact Column is NOT included in the select statement so OBIEE is basically ignoring it.
Is there any config-setting which influences how OBIEE activates the Implicit Fact Column?
OBIEE-version = 10.1.3.4.1
Thanks!Well.... not really suggestions... but I did some more google research and came out with some comments...Pls. note that they are not mine comments... just copy/paste from a couple of blogs.
"This column is generally the *lowest granularity column* of the fact table like Row_wid etc"
"It all boils down to the granularity of the data present in the fact tables.
If a fact contains data at a more granular level then always that will be preferred over the other fact.
The 'Implicit fact column' comes into picture when you want to enforce a fact as the default path when used in a report."
"For dimension-only queries across multiple dimensions, Oracle BI Server picks the most economical fact table source
based on t*he number and levels of joined dimensions*."
Antonio
BExpert, Brazil -
Implicit Fact Column - am I thinking about this the right way?
My exploration of the Implicit Fact Column is below. Let me know if you think this is the intended usage.
When the BI Server sees a request where one Dimension is being constrained by another, it has to pick a fact table that contains references to these two dimensions. The "Implicit Fact Column", which is set in the Presentation Layer of the RPD is used to guide the BI Server towards one or more Fact tables that can be used to satisfy the request. In the absence of the Implicit Fact Column, I noticed that the BI Server was choosing random fact tables so I went exploring how this feature worked. I set the Implicit Fact column in my Presentation layer and then went looking to see how the queries were generated.
For my example, my two dimensions are Program and Channel. I want to see the list of Channels available for a Program. Without the Implicit Fact Column, the queries are of the form:
select distinct T289.CHANNEL_NAME as c1,
T36001.PROGRAM_NAME as c2
from
DIM_PROGRAMS T36001,
DIM_CHANNELS T289,
SomeRandomFactTable T41210
where ( T289.DIM_CHANNEL_KEY = T41210.DIM_CHANNEL_KEY and T36001.DIM_PROGRAM_KEY = T41210.DIM_PROGRAM_KEY )
order by c1, c2
The nice part about this is that there is only one set of Program / Channel combinations returned. The downside is that the Fact table that is chosen to resolve the combinations can be any Fact table under the purview of the BI Server. It doesn't even have to be in the same subject area where the Program and Channel were chosen. When I set the Implicit Fact Column, the queries are of the form:
select distinct T289.CHANNEL_NAME as c1,
T36001.PROGRAM_NAME as c2,
T35832.DIM_SITE_KEY /* this is the implicit fact column */
from
DIM_PROGRAMS T36001,
DIM_CHANNELS T289,
AFactTableMappedToFactColumn T35832
where ( T289.DIM_CHANNEL_KEY = T35832.DIM_CHANNEL_KEY and T35832.DIM_PROGRAM_KEY = T36001.DIM_PROGRAM_KEY )
order by c1, c2
I was happy that I could predict what Fact table was being used, but now the results are wrong as I get a duplicate set of records for every DIM_SITE_KEY / Channel / Program combination. I decided to play a little Algebra trick. Knowing that the DIM_SITE_KEY was a numeric value, I defined the Implicit fact column as DIM_SITE_KEY / DIM_SITE_KEY which will always result in a value of 1. Now I get queries that look like:
select distinct T289.CHANNEL_NAME as c1,
T36001.PROGRAM_NAME as c2,
T35832.DIM_SITE_KEY / nullif( T35832.DIM_SITE_KEY, 0) as c3
from
DIM_PROGRAMS T36001,
DIM_CHANNELS T289,
AFactTableMappedToFactColumn T35832
where ( T289.DIM_CHANNEL_KEY = T35832.DIM_CHANNEL_KEY and T35832.DIM_PROGRAM_KEY = T36001.DIM_PROGRAM_KEY )
order by c1, c2
Since DIM_SITE_KEY / DIM_SITE_KEY is always equal to 1, I only get one set of Program / Channel combinations. I get the added bonus of knowing which set of Fact tables are going to be used to satisfy the request.Perfect Analysis, But one important note is when using implicit fact table, Always select measure( Which has some aggregation) as a implicit fact column. So that will allows the query will eliminate duplicate rows by doing a group by operation.
Other note is make sure performance is good. When we don't have a good model for fact tables, when the tables contains large set of data, make sure performance is good by doing indexes or caching to load the prompts.
- Madan -
Implicit fact column...
Hi Friends,
I created a repository named vision, in that i imported six tables from database. Since from the six table none of the table resemebled to me as a fact table as all the table is of, not a measure based. So i went to the concept of " IMPLICIT FACT TABLE"(wat i understood about the implicit fact table is, the table that contains all primary key column of all the dimension table which is in the physical layer).
As per my concept i want to add all the primary key column from the dimension table to the implicit fact table.
How i need to copy the primary key column's from the dimension table to the fact table in the physical layer.........
Regards,
Harry.....Hi Nag,
Since i want to create a BI report (i.e.)
"Nationality count in department wise manner"
For this Im using the following tables
*) per_all_people_f -----> this table contains the column 'Nationality'...
*) per_all_assignments_f ----> Im not taking any column from this table, but im using this table for the join condition....
*) hr_all_organization_units ----> this table contains the column 'Departments'...
As per my concern the result that want to display to me should be like this manner,
COLUMN----------->COUNT------------->NATIONALITY
1 ROW ------------> 2 --------------->INDIAN
2 ROW-------------> 5 ---------------->AMERICANS
The above is the example for my report, as i dont want to show the column "department" for the display, but i need the report in department wise only.........
since all the three tables is not a measure based. so it is dimension table.........
So for dimension table inorder to give join with fact table, i need to have a fact table.....so how to create a fact table????
For the fact table creation, Whether can i create "Factless Fact table"for this report.....
Since i need to get " Nationality count in department wise manner", whether can i create a factless fact table for this report...........
If so, means guide me for the steps of creating "FACTLESS FACT TABLE"..........
Thanks,
Harry.........
Edited by: HariPrasad on Sep 28, 2010 11:37 AM
Edited by: HariPrasad on Sep 28, 2010 9:44 PM -
Implicit Fact key for 2 facts in one subject area
Hi All,
We have 2 Facts(F1,F2) which are connected to conformed dimensions (D1,D2,D3)
and F1 is connected to another Dimension (D4) which does not have any connection with F2.
Also D1,D2,D3 is conformed dimension to facts F3,F4,F5
In this scenario how do we set implicit fact column when 2 Facts(F1,F2) involved..?
Thanks in advance.
LonaDHi,
In this scenario, column from which fact table can be set as implicit column. Please help we wanted it for an urgent development.
D1----->F1------>D2<-------F2
If we select the column from table D1 then the join should be D1.Column=F1.Column and if we select the column from D2 then the join should be D2.Column=F2.Column i.e., if anything other than the D1 dimension the join should be D*.Column = F2.Column. how do we achieve this plz help!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Thanks,
LonaD -
Hi Team,
what is the purpose and need of 'implicit fact' in obiee.As i am new for obiee let me know the answer with good real time scenario
thanks in advanceWhen you create a request with only dimensional columns,the OBI server has to choose a fact table to join the dimensions to each other. If you have multiple facts in BMM,OBI engine will use the most economical fact table, depending on the number of dimensions of fact table.
In some case you don't need to use fact table, but you want to force OBI server to use fact table you want. In that case you should create a fact to choose dimensions only for query. In presentation catalog of subject catalog you should select as IMPLICIT FACT. This fact will always be used in query,but it's not visible in report.
Navigation:
presentation layer>catalog>general tab>select"implicit fact column" >select fact table and save
Hope this helps you.
Thanks & Regards
pallis -
Implicit fact and Alias table with
Hi Gurus,
May i know what is the use of alias table and implicit fact with some real time scenarios for better under standing.
Thanks,
RafiFor alias tables, refer to the oracle's documentation here which is explained in great detail: ( http://docs.oracle.com/cd/E14571_01/bi.1111/e10540/physicallayer.htm )
For implicit fact refer to the oracle's documentation here: ( http://oracle-bi.siebelunleashed.com/articles/implicit-fact-column/ ) . To define in layman's terms, implicit fact is set on a subject area when you are reporting out of dimensions in the report without any fact columns and you want the fact table to be part of the report's query. -
Hi all,
Can any one has any idea about the implicit fact table, where it is used. Any doc or screenshot with example will be helpful for me.
Thanks once again.I forgot the definition that you can find here :
http://download.oracle.com/docs/cd/E12096_01/books/admintool/admintool_PresentationSetup4.html
If you set an implicit fact column this column will be added to a query when it contains columns from two or more dimension tables and no measures. The column is not visible in the results. It is used to specify a default join path between dimension tables when there are several possible alternatives.
Cheers
Nico -
Hi,
The implicit fact for one of my presentation folders is set to fact row_wid. On the report, I just select the dimension attributes and run an ad-hoc query. The sql this query generated has a row_wid of the fact table in the select statement as one of the column. Because of this, there are duplicate rows showing up as the granularity now is at fact level. Am I doing something wrong here or how can this issue be fixed?
Thanks in advance for your help.
Regards
AKHi,
You need to select a measure as implicit column which has some aggregation defined on it to avoid duplicate rows.
Refer to below thread:
Implicit Fact Column - am I thinking about this the right way?
Please close this thread in case your issue gets resolved.
Thanks -
Implicit Fact and Group Security Filters
Hi All,
Can somebody confirm for me if the Group Security filter as specified under 'Hr Org-Based security' is supposed to be applied in answers when the only reference to the fact table is via its selection as the implicit fact within the presentation catalog.
E.g User selects Dim1, Dim 2 and Fact Measure , the query is filtered correctly by users organisation, when the fact measure is removed, OBIEE keeps the same fact table within the generated SQL as it is the implicit fact used to join the two dimension tables together. The results this time are not filtered by organization and its possible to return dimension records for fact rows that are from a different Org - In this case the user can return absense start and end dates for employees outside of his org (Customer wants this prevented)
Is this expected behaviour ?
Thanks.Hi John
Thanks for your suggestion
I tried this and He still doesnt have write access
He doesnt need to be able to lock and send values via essbase ... However when we are in planning, He cant submit data to the dimension members mentioned above.. i.e the cells are all green
I have checked and doubled check the security on the dimension members (and form security) in the form that he cant edit
Do you have any other suggestions?
Thank you
PD -
Filter on Fact columns at report level- obiee 11g
Hello,
The error I am getting in my report is : Incorrectly defined logical table source (for fact table SUMM) does not contain mapping for [LEDGERFACT.CD, LEDGERFACT.YEARID].
The Model(Physical and BMM Layer) is as follows: DIM_LF_B is joined to 2 fact tables LEDGERFACT and SUMMARY
DIM_RPT_PARAM -> DIM_LF_B -> LEDGERFACT
DIM_RPT_PARAM -> DIM_LF_B -> SUMMARY
Note that the aggregation is not set for any of the Fact columns. (I am aware that all measures have to be set some aggregation type , but Client restrictions as not to edit the rpd :( )
Now on the report front, i have pulled following columns:
>> Col name: Description ||| Forumla: DIM_RPT_PARAM.ITEM_DESC
>> Col name: Actual Amt ||| Formula: case when SUMMARY.MONTHID=3 and SUMMARY.YEARID=2012 then sum(SUMM.AMT_1) else 0 end
>> Col name: Plan Amt ||| Formula: case when LEDGERFACT.YEARID=2012 and LEDGERFACT.CD=300 then sum(LEDGERFACT.AMT_1) else 0 end
I am not able to understand as to why the BI server is throwing the error.
I tried removing the case condition and just applying the sum(as below), and the report comes up.
Col name: Description ||| Forumla: DIM_RPT_PARAM.ITEM_DESC
Col name: Actual Amt ||| Formula: sum(SUMM.AMT_1)
Col name: Plan Amt ||| Formula: sum(LEDGERFACT.AMT_1) Also for the following combination the report works
1)
>> Col name: Description ||| Forumla: DIM_RPT_PARAM.ITEM_DESC
>> Col name: Actual Amt ||| Formula: sum(SUMM.AMT_1)
>> Col name: Plan Amt ||| Formula: case when LEDGERFACT.YEARID=2012 and LEDGERFACT.CD=300 then sum(LEDGERFACT.AMT_1) else 0 end
2)
>> Col name: Description ||| Forumla: DIM_RPT_PARAM.ITEM_DESC
>> Col name: Actual Amt ||| Formula: case when SUMMARY.MONTHID=3 and SUMMARY.YEARID=2012 then sum(SUMM.AMT_1) else 0 end
>> Col name: Plan Amt ||| Formula: sum(LEDGERFACT.AMT_1)
Any help appreciated.
Thnks,
Shruti
Edited by: 970002 on Mar 28, 2013 7:18 AMHi Shruthi,
To be clear you have one table 'DIM_LF_B' and its separated out as FACT and DIM in BMM layer with respective formulas ? If yes check this http://www.varanasisaichand.com/2012/04/fact-and-dimension-from-single-source.html
let me know if it is different
Thanks,
Saichand -
Filtering based on Fact Columns makes the result different?
Dear All,
I have an analysis report for Publisher, there are several columns, for example,
Col A = ROUND(Col B * Col C / Col D, 0) Whereas Col B, Col C and Col D are integers
Col E = ROUND(Col F * Col C / Col D, 0) Whereas Col F, Col C and Col D are integers
Filter: Col G is not null, Whereas Col G is fact column, Integer
I have the case is that
Col B = 120, Col C = 4, Col D = 14, Col F = 10
If Filter is not applied:
Col A = Round(120 * 4/14, 0) = 34
Col E = Round (120 * 10/14, 0) = 86
When Filter is applied,
Col A = Round (Floor(120 * 4/14), 0) = 34
Col E = Round(Floor(120 * 10/14), 0) = 85
CIf you want to avoid the floor function Use (120*10/14.0)
If all the values in a division are integers, OBIEE uses a Floor function automatically.
SO CAST either the numerator or the denominator to DOUBLE and then run your calculations, the floor function will not be applied.
Maybe you are looking for
-
How to create package name what is the transaction code for creation
Hi, I want to create the package and also put that package in my program, how to put the package already saved program.
-
Photos from iphoto end up in hundreds of subfolders
Hi i have over 2000 pictures in iphoto. I want to upload them into elements but in one big file and then i can sort them out in elements But elements uploads them according to dates so i am getting hundreds of subfolders. How can i change the way ima
-
I just updated itunes on version 7.3.1. Unfortunately loading covers is not possible. When I click on "Load Cover" I get a error message: "A cover couldn't be found. Unkown error -609" But the cover I wanted to load exists in the itunes Store. It wor
-
Last year, I got this message: This version of iTunes has not been correctly localized for this language. Please run the English version. So I got frustrated and quit and just kept iTunes 7.whatever. But now that I have an iPhone, I really need to qu
-
Hi SDN, I am displaying on out put screen. SalesOrder Delivery Invoice in one row. i want to call separate list on clicking of SalesOrder Delivery Invoice, i.e. when SalesOrder is clicked list for SO details, Delivery is clicked then list for deliver