Join fact table with higher dimension level

how do i join fact tables with higher dimension levels with discoverer?
fact with detail at level C
measure X
dimension with
D->C->B->A
E->C
level
A B C
1------1------1
2------2------1
3------2------1
join between fact X and dimension level C
X=3*C because of sum(X) in discoverer and 3xC in dimension
is there a way to get correct values for X without creating a dimension like
D->C
E->

another way of asking this is whether you can create a summary table in Discoverer at a higher level than a dimension's fundamental grain. In other words - the summary examples in the documentation all describe leaving out one or more of your dimensions... they are either left in or completely taken out. But, some of the most effective summarization occurs when you summarize daily data to a monthly level. Assuming that I have a sales table (at a daily level, and a key value sales_date), and a table date_dim (primary key sales_date), I would like to create a summary sales_month_summary where the sales are grouped on month_year (which is a field in the sales_date table).
How is this done? I suspect that we can't use the date_dim table with the summary (due to the problems noted by the poster above). Do we have to create another table "month_dim"? Do we have to fold all of the desired date attributes (month, quarter, year) into the summary? Obviously we'd like to re-use all of the pertinent already existing date items (quarter, month, year, etc.), not recreate them over again, which would result in essentially two sets of items in the EUL. [One used for this month summary, and another used for the detail.]
I searched the forum - someone asked this same question back in 2000 - there was no answer provided.
The only other thought I have is to "snowflake" the date_dim into two tables and two folders, one at a date level, another at the month level. Then the detail tables can connect to date_dim (which is linked to month_dim), while the summary data can connect directly to month_dim.

Similar Messages

  • Joining two fact tables with different dimensions into single logical table

    Hi Gurus,
    I try to accomplish in Oracle Business Intelligence 11.1.1.3.0:
    F1 (D1, D2 and D3)
    F2 (D1 and D2 and D4)
    And we want to build a report F1 F2 D1 D2 D3 D4 to have data for:
    F1 that match only for D1-D2-D3
    and data for
    F2 that match only D1-D2-D4
    all that in one row, so D3 and D4 are not common dimensions.
    I can only do:
    F3 (D1, D2)
    F4 (D1, D2 and D4)
    And report
    F3 F4 D1,D2,D4 (all that in one row, and only D4 is not a common dimension)
    Here is the very good example how to accomplish the scenario 1
    http://108obiee.blogspot.com/2009/08/joining-two-fact-tables-with-different.html
    But looks like it does not work in 11.1.1.3.0
    I get
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 43113] Message returned from OBIS. [nQSError: 14025] No fact table exists at the requested level of detail: [,,Clients,,Day,ROI,,,,EW_Names,,,,,,,,,,,,,,,,,]. (HY000)
    I am sure I set up everything correctly as advised in the blog but it works with only one not a common dimension
    Is it a bug in 11.1.1.3.0 or something?
    Thanks,
    Kate

    Thanks for all your replies.
    Actually, I've tried the solutions you guys mentioned. Generally speaking, the result should be displayed. However, my scenario is a little bit tricky.
    table Y's figures are not the aggregation of table X for D dimension. Instead, table Y's figures include not only D dimension total, but also others (others do not mean A, B, C dimension). For example, table Y stores all food's figure, while table X stores only drink's figure. D dimension is only about drink's detail. In my scenario, other foods' figure is not provided.
    So, even if I set D dimension to all/total for table X, table X's result is still not the same as table Y.
    Indeed, table Y does not have a column key to join to D dimension's key. So, if I select D dimension and table Y's measures at the same time in BI Answer, result returns no data. Hence, I can't compare table X and table Y's results with selection of D dimension.
    Is there any solution to solve this problem?
    Edited by: TomChan on Jun 3, 2009 9:36 AM

  • Load fact table with null dimension keys

    Dear All,
    We have OWB 10g R2 and ROLAP star schema. In our source system some rows don’t have all attributes populated with values (null value), and this empty attributes are dimension (business) keys in star schema. Is it possible to load fact table with such rows (some dimension keys are null) in the OWB mappings? We use cube operator in mappings.
    Thanks And Regards
    Miran

    The dimension should have a row indicating UNKNOWN, this will have a business key outside of the normal range e.g. -999999.
    In the mapping the missing business keys can then be NVL'd to -999999.
    Cheers
    Si

  • Issue using one 2 Fact tables with one dimension Table.

    Hi,
    I have 1 Dimension table X and 2 Fact tables A and B
    X is joined to Both A and B for Loan Amount ( with A) and for colleatral amount (with B) when I am selecting the X.Product_Name, A.Loan_Amt, B.Collateral Amount, it is giving an error message
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 15018] Incorrectly defined logical table source (for fact table EIP Collateral FACT) does not contain mapping for [EIP Reporting FACT.PD ID]. (HY000)
    Any clues???
    Is there a Inner or Outer join which needs to be created or set in the RPD to get the desired results???

    Ok..
    I have one table which is Porfolio Details which has Portfolio name, Product Category , Product Name, Product ID, Product sources code.- This is my Dimension table.
    I have another 2 set of fact tables : EIP Reporting FACT and EIP Collateral FACT..
    These two tables are joined to Portfolio Details table.
    EIP Reprting FACT gives portfolio wise Loan Amount
    and EIP Collateral FACT gives Portfolio wise Collateral Amount details for same set of customer..
    Now, I am selecting Portfolio Name, Product Category, Product Name,SUM( EIP Reporting FACT.LOAN_AMOUNT), SUM(EIP Collaetral FACT.Collateral_Amt) in a report
    Now, on selecting these columns I am getting that error message which is related to mapping.
    If I take any column from Portfolio details table and any column from EIP Reporting FACT- It works.
    If I take any column from Portfolio details table and any column from EIP Colletral FACT- It works.
    But if I take any column from portfolio table and columns from both FACT tables it gives mapping error...
    Hope I am able to explain the issue in a better way now..
    Edited by: help-required on Mar 11, 2010 6:53 PM
    Edited by: help-required on Mar 11, 2010 6:53 PM

  • Two fact tables with same dimensions

    Good Morning,
    I am just assigned to a new project. This is my first maintenance request: two fact tables F1 and F2 that shares same set of dimemsion tables D1 and D2. In the Answers report, if I use a foreign key in either F1 or F2, for example F1.k1, I get an error of meta data inconsistency. But if I use same column from dimension table D1.k1, then no error.
    Your help is very much appreciated.
    May

    This is proberly #3 on the most popular topics list, behind SSO and a variables. Please use the search, what you need to do to set up conformed dimensions with multiple facts in the same report has been covererd many times.

  • Join fact tables with different grain without upsetting measures?

    Say I am a business analyst at a university, and I have two analytical cubes available to me:  an Enrollment Cube and an Admissions Cube.  The Enrollment Cube has a grain of Student and Semester, whereas the Admission Cube has a grain of Student, Application and Semester (a potential student can have more than one application in a semester).  Is there any way for the OLAP developer that makes these cubes to make it so that I can use both cubes' fact tables without messing up their corresponding measures, such that I can create such analyses as the following:
    County
    Semester
    Acceptance Rate (Admission Fact)
    Retention Rate (Enrollment Fact)
    County A
    1
    30%
    88%
    2
    60%
    87%
    3
    42%
    84%
    County B
    1
    90%
    100%

    One suggestion is to create a view that joins the 2 fact tables and then create a cube with measures mapped to the view for analysis purposes.  However, this would be using the measures of the new cube for the analysis.

  • Modelling 2 Fact Tables with Non-Conforming Dimension in OBIEE 11g

    Hi all,
    I have two fact tables (Fact 1 and Fact 2) and two dimension tables (Product and Rule). The Product dimension table is a conforming dimension and is used in both fact tables, but the Rule dimension is a non-conforming dimension which is used only one fact table. I'm using OBIEE 11g (11.1.1.6.0).
    ====
    Fact 1
    ====
    Sales ID | Product ID | Quantity | Sales Description | Sales Status
    S001 | P001 | 100 | bla bla bla bla bla | N
    S001 | P002 | 200 | bla bla bla bla bla | N
    S002 | P001 | 200 | lab lab lab lab lab | Y
    S002 | P003 | 250 | lab lab lab lab lab | Y
    Notes for Fact 1:
    - One Sales ID can have multiple Product IDs
    - Sales Description and Sales Status are the same for one Sales ID (repeating Sales Description and Sales Status for the same Sales ID)
    ====
    Fact 2
    ====
    Sales ID | Product ID | Rule ID | Score
    S001 | P001 | R001 | 2
    S001 | P001 | R002 | 3
    S001 | P002 | R003 | 1
    S002 | P001 | R003 | 1
    S002 | P003 | R002 | 2
    S002 | P003 | R004 | 5
    Notes for Fact 2:
    - One combination of Sales ID and Product ID can have multiple Rule ID
    I'm wondering how best to model these tables so that I can create this report (number of the dimension and fact tables created in the business model, level mapping, aggregation rule, etc)? Any suggestion/advice on how to achieve this?
    Sales ID | Product ID | Quantity | Sales Description | Sales Status | Rule ID | Score
    S001 | P001 | 100 | bla bla bla bla bla | N | R001 | 2
    S001 | P001 | 100 | bla bla bla bla bla | N | R002 | 3
    S001 | P002 | 200 | bla bla bla bla bla | N | R003 | 1
    S002 | P001 | 200 | lab lab lab lab lab | Y | R003 | 1
    S002 | P003 | 250 | lab lab lab lab lab | Y | R002 | 2
    S002 | P003 | 250 | lab lab lab lab lab | Y | R004 | 5
    Thank you very much!

    Hi Dhar, thanks for the suggestions.
    I tested what you suggested, but the result is not as per my expectation mentioned above. Here's what I did:
    1. In physical layer:
    - I joined Fact 1 table with Product dimension table only
    - I joined Fact 2 table with Product and Rule dimension tables
    2. In business model layer:
    - I created 3 logical tables: Fact, Product, and Rule
    - The Product table contains the Product ID and Product Name from the Product dimension table in the physical layer
    - I created the hierarchy (logical dimension) for Product with only ProductTotal level (as the grand total level) and ProductDetail level that contains Product ID and Product Name
    - The Rule table contains the Rule ID and Rule Name from the Rule dimension table in the physical layer
    - I created the hierarchy (logical dimension) for Rule with only RuleTotal level (as the grand total level) and RuleDetail level that contains Rule ID and Rule Name
    - The Fact table contains 2 logical tables sources: Fact 1 (which logical level in the Content tab is mapped to ProductDetail and RuleTotal) and Fact 2 (which logical level in the Content tab is mapped to ProductDetail and RuleDetail)
    - The Fact table contains Sales ID logical column (mapped to both Fact 1 and Fact 2 logical table sources)
    - The Fact table also contains Sales Description and Sales Status logical columns (mapped to only Fact 1), which aggregation rule is the default to None
    - The Fact table also contains Quantity logical column (mapped to only Fact 1), which aggregation rule is set to Sum
    - The Fact table also contains Score logical column (mapped to only Fact 2), which aggregation rule is set to Sum
    OBIEE returns the expected result when I retrieve the report:
    Sales ID | Product ID | Quantity | Sales Description | Sales Status
    However, OBIEE returns an error when I retrieve the reports:
    Sales ID | Product ID | Quantity | Sales Description | Sales Status | Rule ID
    or
    Sales ID | Product ID | Quantity | Sales Description | Sales Status | Rule ID | Score
    The error is:
    Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 43113] Message returned from OBIS. [nQSError: 43119] Query Failed: [nQSError: 14020] None of the fact tables are compatible with the query request FACT.SALES_STATUS. (HY000)
    And the Score column is blank when I retrieved this report:
    Sales ID | Product ID | Quantity | Sales Description | Sales Status | Score
    Any suggestion anyone? Please help. Thanks a lot!
    Edited by: stewartlife on Nov 29, 2012 4:01 PM

  • Multiple 'logical joins' between a fact table and one dimension table

    It appears that one cannot create multiple ‘logical joins’ between a fact table and one dimension table in OBIEE using the Oracle BI Administration Tool. For example, considering a Business Model with a dimension table TIMES and a fact table FACT containing START_TIME and END_TIME, we would like to create separate logical joins from FACT to TIMES for the START_TIMEs and END_TIMEs? Obviously, the underlying foreign keys can be created, but as far as I can tell the Oracle BI Administration Tool doesn’t support this. The workaround would be to replicate the TIMES table, but that’s ugly.
    I seek an alternative approach.

    Try this. Create an two aliases for the TIMES dimension (Start & End) in the Physical Layer and then remove foreign key to the "Parent" Times dimension. Create the Foreign Key in the Physical Layer to the new aliases and then create the complex joins in the BMM Layer to the new aliases as well. This will allow you to present both dates within the same table in the Presentation Layer. Not the most elegant solution but it works.

  • Logical fact table with fragmented data sources with different dimensions

    Hello.
    I have a logical fact table with four logical table sources. Three of the LTS's share the same dimensions, but the fourth LTS has one dimension (called Dim_A) less. In the physical layer the dimension Dim_A is joined to the first three physical fact tables, but not to the fourth fact table (since it doesn't have that dimensionality). In the BMM layer the logical fact table is joines to the logical dimansion Dim_A.
    When I run an analysis on this RPD the measures from the logical fact is aggregated correctly (union of all four table sources) as long as I doesn't include Dim_A, but as soon as I include dimension Dim_A I get the error message:
    +State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 43113] Message returned from OBIS. [nQSError: 43119] Query Failed: [nQSError: 14052] Internal Error: Logical column Dim_A.Column_X has no physical sources that can be joined to the physical fact table source [Logical table sources (Priority=0): Fact_B.Fact_Y]. (HY000)+
    I would like a solution where the analysis returns correctly aggregated measures also for the LTS with the "missing" dimension, but with a dimension value NULL for this LTS. Or something like this.
    Is there a way to set this up in the RPD.
    Thanks,
    Henning Eriksen

    The SQL could look something like this.
    SELECT dim_a.col_1, fact_a.measure_1
    FROM db.dim_a
    JOIN
    db.fact_a
    ON fact_a.col_2 = dim_a.col_2
    WHERE fact_a.date = '28-nov-2012'
    UNION ALL
    SELECT dim_a.col_1, SUM (fact_b.measure_1)
    FROM db.dim_a
    JOIN
    db.fact_b
    ON fact_b.col_2 = dim_a.col_2
    WHERE fact_b.date = '28-nov-2012'
    UNION ALL
    SELECT dim_a.col_1, SUM (fact_c.measure_1)
    FROM db.dim_a
    JOIN
    db.fact_c
    ON fact_c.col_2 = dim_a.col_2
    WHERE fact_c.date = '28-nov-2012'
    UNION ALL
    SELECT NULL, SUM (fact_d.measure_1)
    FROM    db.fact_d
    WHERE fact_d.date = '28-nov-2012'
    I would appreciate if you could give me some hints for the RPD.
    Thanks,
    Henning

  • Fact tables with common and uncommon dimensions

    Hi -
    I have 2 facts:
    F1 with Dimensions D1, D2, D3, D4
    F2 with dimensions D1, D2, D5, D6
    If I create a report with F1, F2, D1, D2 then 2 queries are created and the report is correct. Why am I not able to create a report with F1, F2, D1, D2, D3?
    Thanks !

    Hi Veeravalli -
    I found this blog helpful as it details out how to establish the relation. http://108obiee.blogspot.ca/2009/08/joining-two-fact-tables-with-different.html
    I had a little difficulty in understanding what you wanted to say or implement. Now, after reading it 3-4 times I figured out that you mean 1. what the blog says 2. possibility of combining the facts as different source.
    As a newbie it was difficult to understand it clearly.
    Thanks !

  • Resolving loops in a star schema with 5 fact tables and 6 dimension tables

    Hello
    I have a star schema, ie 5 FACT tables and 7 dimension tables, All fact tables share the same dimension tables, some FACT tables share 3 dimesnsions, while other share 5 dimensions.  
    I did adopt the best practices, and as recommended in the book, I tried to resolve them using Context, as it is the recommended option to Alias in a star schema setting.  The contexts are resolved, but I still have loops.  I also cleared the Multiple SQL Statement for each context option, but no luck.  I need to get this resoved ASAP

    Hi Patil,
    It is not clear what exactly is the problem. As a starting point you could set the context up so that it only covers the joins from fact to dimension.
    Fact A, joins Dim 1, Dim 2, Dim 3, and Dim 4
    Fact B, joins Dim 1, Dim 2, Dim 3, Dim 4 and Dim 5
    Fact C, joins Dim 1, Dim 2, Dim 3, Dim 4 and Dim 6
    Fact D, joins Dim 1, Dim 2, Dim 3, Dim 4 and Dim 7
    Fact E, joins Dim 1, Dim 2, Dim 4 and Dim 6
    If each of these are contexts are done and just cover the joins from fact to dim then you should be not get loops.
    If you could lay out your joins like above then it may be possible to specify the contexts/aliases that should work.
    Regards
    Alan

  • No fact table at the requested level error.

    I have one dimension
    Account
    Two fact tables
    Threshold and Transaction
    These tables are joined to the Account Dim using Account Number.
    Now when I create an analysis using Account Numbers from all three tables, it says no fact table at the requested level. If I include any other fact from both the fact tables, it populates null. It works right when I create an analysis from one dimension and either of the fact tables.
    Why do we get this error and how else should it be modeled.
    Edited by: 979130 on Dec 29, 2012 12:52 AM

    I'm not sure about your data.. I give couple of options try them out any of one should work.
    Assuming both facts are at same granular: You need to create Logical Fact table in BMM add first fact as source then, open properties wizard and add other fact table.
    Assuming both facts are at Different or Same granular: You need to create Logical Fact table in BMM add first fact and then add 2nd fact as 2nd logical table source and set the content tab for both facts
    Using any of the option you'll be going for metrics and use them in report.
    In general: You need to let BI server let know how data is spread across tables so that BI Server can respond as you expected.
    Hope this helps, Appreciate if you mark as correct/helpful
    Edited by: Srini VEERAVALLI on Dec 29, 2012 12:58 PM

  • Select data from database tables with high performance

    hi all,
    how to select data from different database tables with high performance.
    im using for all entries instead of inner joins, even though burden on data base tables is going very high ( 90 % in se30)
    hw to increase the performance.
    kindly, reply.
    thnks

    Also Check you are not using open sql much like distict order by group by , use abap techniques on internal table to acive the same.
    also Dont use select endselect.
    if possible use up to n rows claus....
    taht will limit the data base hits.
    also dont run select in siode any loops.
    i guess these are some of the trics oyu can use to avoid frequent DATA BASE HITS AND ABVOID THE DATA BASE LAOD.

  • Fact table  with different  granularity

    I have a fact table , the measure with different granualrity , for example, there are a fact table named project, and in the project , there are some columns measure like project value, Opportunity value, (one opporuntity have many project). so I have to sum the project value and Opportuntity value
    by month, how to sum opportuntity value? (I want to sum the value distinct Opportuntity ). anyone have suggetion. thanks in advance.

    The purist answer is that you should NEVER have a fact table with multiple levels of granularity - it's asking for trouble. Better solution is to split off a new fact table at the proper level of granularity. Having said that, I've worked with BI Apps before so I understand the pain you're going through. In the long run though we found it better to add new fact tables and track the data at the proper levels. Less confusing (long run) than trying to kludge round data to fit in a square fact table.
    Thx,
    Scott

  • Select count from large fact tables with bitmap indexes on them

    Hi..
    I have several large fact tables with bitmap indexes on them, and when I do a select count from these tables, I get a different result than when I do a select count, column one from the table, group by column one. I don't have any null values in these columns. Is there a patch or a one-off that can rectify this.
    Thx

    You may have corruption in the index if the queries ...
    Select /*+ full(t) */ count(*) from my_table t
    ... and ...
    Select /*+ index_combine(t my_index) */ count(*) from my_table t;
    ... give different results.
    Look at metalink for patches, and in the meantime drop-and-recreate the indexes or make them unusable then rebuild them.

Maybe you are looking for

  • Approval procedure based on item category

    Dear All, I have a scenario where all my sales items will be categorized under two broad heads: Bulk & Non Bulk. So there will be a UDF where every item will be mapped to one of these values. I want to apply an approval procedure where I am able to r

  • Query to exclude just one day from a month/months.

    I'm sorry if a thread about this already exists i tried searching for it but couldnt find it. My question is as follows: I want to write a query which would fetch all the data from the month of Jun and July excluding Jun 29th. Is there a way to write

  • 5c sim card wont go in all the way

    Sim card tray wont go in all the way so it will not recognize my sim card.  I ordered a new tray and still the same problem,  Taking out the sim card does not solve the problem either.  Any suggestions?

  • Poistion Canvas on the screen

    Hi, I have a Form which opens with a small size Main canvas which has a button, this button when pressed displays another smaller canvas on the screen, I am trying to change the display position of the smaller Canvas. I have tried changing the X , Y

  • Howto - JDev 10.1.3 - Audit tools and Ant

    Hi I'm playing around with Audit tools. I want to be able to call this from Ant. One primitive method is as follows: <target name="Audit" description="Running audit on source code"> <property name="audit" value="ojaudit"/> <property name="profile" va