How would multi Logical Table Source work?

Hi All,
I am facing a problem about multi Logical Table Source. Can I build a Business Model with a Logical Fact Table that have two Sources? Taking the below description as an example:
Table Name
Columns
Description
Fact
TIMECD(2013Q101, which join to Time.TIMECE), DATA
Fact_Aggr
TIMECD(2013Q1, which join to Time.PERQUARTER), DATA
Aggregate table for Fact and sum Monthly data to Quarterly
Time
TIMECD, YEAR, PERYEAR, QUARTER, PERQUARTER, MONTH, PERMONTH
I tried to create a BMM that contains two Fact Table in the same Logical Fact Table. But BIEE shows the DATA from Fact even if I drag PERQUARTER into the report.
The following is my question:
1. Can I have a Logical Fact Table that contains Fact and Fact_Aggr?
2. How will BIEE determine which DATA should be used?
Best Regards,
Martin

The basic rule for one LTS vs two is:  If you use table A AND Table B together, then one LTS.  If you use table A OR Table B, then 2 LTSs.
So when you have an aggregate fact table, you use either the Agg or the base fact, meaning you should have 2 LTSs.  OBI understands how to use one or the other through a variety of rules, but the main piece of config you need to have is proper levels defined on each and every LTS's Content tab.  In your example, you will need to make sure the grains of your aggregate and base fact table match the time dimension properly; thus normally you have a day table and a month table in the time dimension, each joining to the appropriate Fact LTS.  If you join a month level aggregate to a day time table your results will be incorrect.  OBI knows that month is higher in the hierarchy than day, so it will prefer to use the set of Month LTSs when it can.
Jeff M.

Similar Messages

  • How to "think" use of multiple logical table sources

    Hi everybody,
    i'm new to OBIEE and its paradigm. I'm trying to build a prototype with multiple physical sources: ERD and a Data Mart; I need OBIEE to go to the Data Mart model at the need of aggregated info and to go to the relational model at the need of transactional info. I need to do that working with dimensions, assigning different sources to each logical level of the dimension.
    My problem begins when thinking how to actually do that. Here is my question:
    - Should I add the relational source in the data mart logical table source folders, mapping the same information with joins? If so, how does dimensions work from that point? (drill down)
    thanks in advance!

    I'm a little confused
    Is the problem
    1 - You want to Access a table in an existing 9i database from a different 10g database
    or
    2 - You have a new 10g database as a copy of a 9i one, and a table called system has gone missing?

  • Time series functions are not working for fragmented logical table sources?

    If i remove that fragmented logical table sources, then its working fine.
    if any body know the reason, please let me know.
    thanks and regards,
    krishna

    Hi,
    is because the time series function are not supported for the framentation content, see the content of the oracle support:
    The error occurs due to the fact the fragmented data sources are used on some Time series measures. Time series measures (i.e. AGO) are not supported on fragmented data sources.
    Confirmation is documented in the following guide - Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository > Process of Creating and Administering Dimensions
    Ago or ToDate functionality is not supported on fragmented logical table sources. For more information, refer to “About Time Series Conversion Functions” on page 197.
    Regards,
    Gianluca

  • Filter on the same logical table source on two logical tables is not working properly

    Hi,
    In the RPD, assume that I have a physical table named Employee_fact, created an Alias called D0 Employee Fact
    In the BMM I've two logical tables called Employee_fact_Type1 and Employee_fact_Type2
    Each of these logical tables has the same Logical table source - D0 Employee
    But in each logical table source, I've a filter in where clause
    such as, for Employee_fact_Type1  employee_type = 'XXX'
                 for Employee_fact_Type2 employee_type='YYY'
    These two facts are present in the same BMM and each of them are connected to two dimensions
    such as
    Dept_type1 <- Employee_fact_type_1 -> Tenure_type1
    Dept_type2 <- Employee_fact_type_2 -> Tenure_type2
    In analysis, When I query the columns from Dept_type1 and Tenure_type1, the database query generated shows the condition employee_type='YYY' instead of employee_type='XXX' .
    But, adding the columns from Dept_Type1, Employee_fact_type_1, Tenure_type1 it shows proper filter.
    I checked the relationships, presentation layer for the sources of presentation tables and everything looks good.
    Can anybody tell me what goes wrong here?

    did you set the content level as well?

  • Max number of logical table sources

    Hi,
    I have one logical table based (a fact table) on 8 logical table sources. This is done to simulate some partitioning as my customer does not have an partition set up on data base level.
    Anyway my challenge is that a request fired in answers does not seem to take all logical table sources into account when building the physical SQL.
    The missing logical table source (the one not being part of the physical SQL) does not differ from the other logical table sources.
    Is there a limit of how many logical table sources BIEE can handle under one logical table?
    BIEE version: 10.1.3.4

    Alastair,
    thanks for replying.
    The logical tables sources partition the data by year. The aggregation level is the same for all LTS, the check for using this with other sources at this level is set and I've tried to force a result from every LTS (not combined but each LTS for itself). Forcing the results is done by using a dashboard prompt in answers filtering on year.
    The whole 'LTS-setup' works in combination with Oracle Warehouse Builder. What I mean by this is the following: In OWB I split the data from one table into 8 different tables, each containing 3 years of data (except for the oldest data where the number of years and amount of data will grow over time).
    This is done by comparing values of a year column with the actual year. E.g. the most actual table would contain data for the years 2010 - 2008, the next would contain data for 2007 - 2005, and so on.
    Now as the years in the different tables will change, I decided to establish an equaly changing counterpart in BIEE. Basically I defined some repository variables: actaul_year, three_years_ago, six_years_ago, 9_years_ago, etc.
    The fragmentation content of the different LTS is defined like this:
    most actual data: MyModel.Year.Year >= VALUEOF("3_years_ago")d
    next table: VALUEOF("3_years_ago") > MyModel.Year.Year AND MyModel.Year.Year >= VALUEOF("6_years_ago")
    next table: VALUEOF("6_years_ago") > MyModel.Year.Year AND MyModel.Year.Year >= VALUEOF("9_years_ago")
    etc.
    The funny thing is that the missing table is the one containing years 13 - 15. All the other tables (e.g. 16 - 18 years and 19 - 21 years) are represented in the physical SQL. This particular table is not even represented in the physical SQL.
    I haven't yet tried to take one of the 'working' tables out to see if this helps (getting an idea if there is a limit on number of LTS per logical table).
    Any idea?
    Thanks
    regards
    Andy

  • Problem: 1 physical table -- multiple logical table sources

    Hi,
    I'm quite new to BIEE and setting up my repository.
    So I have a question, if the following scenario is possible:
    Physical Layer: TABLE_A: COL_A, COL_B, COL_C
    TABLE_B: COL_D, COL_E, COL_F
    Join TABLE_A.COL_A = TABLE_B.COL_D
    In Business Model I have a Dimension Table with TABLE_A as datasource with fields DIM1 (COL_B).
    The Fact Table (MEASURE) would have twice TABLE_B as data source with different where-clauses on COL_F and logical table columns (ATT1 and ATT2) of value COL_E.
    So far I have created everything and the consistency check shows no errors or warnings, but I get an error in Answer: Incorrectly defined logical table source (for fact table MEASURE) does not contain mapping for [MEASURE.ATT1, MEASURE.ATT2], when I creating an report showing DIM1, ATT1, ATT2.
    Isn't it possible to have one physical column used as multiple data source?
    I know it 's working, when I create the physical table twice ... but maybe there's a solution for business model.
    Thanks
    chrissy

    Hi mengesh,
    that's what I also tried, but it's always returning me the same error.
    I know it would work, when I import the physical table twice or more, but that's not what I want to do, because at the end I have 10 or more fields based on this one physical table. There's one field indicating what value is contained in the record, this means:
    COL_F | COL_E
    1 | customer name
    2 | customer number
    3 | customer branche
    4 | salesman
    5 | date
    6 | report number
    etc.
    I don't think it's usefull to import the physical table as often as I need this field. So I want to divide it in business model.
    thanks
    chrissy

  • Logical table having more than one Logical table sources

    Hi ,
    Is it possible a logical table has 2 logical table sources and there is no join between the underlying table of logical table sources?
    What will happen if we create the request which contains one attribute from each source?
    Will BI server return records with Cartesian join?
    Is it mandatory if logical table is having more than one logical table sources(exp. Logical table sources are X,Y and underlying table is A,B respectively),
    The underlying tables (A&B) must be joined ?
    Can someone explain the logic behind the logical table sources? How does it work?
    Any reference of document will be appreciable.
    Thanks,Ashish

    Hi Stijn,
    Thanks for response.
    You are saying that Oracle BI server will run a query against both tables and combine the results. But if there is no possibilty of any type of join, how BI server will combine the results from both tables.
    I have a scenario like below -
    Suppose i have 2 tables A and B at physical layer. Both table contains the information of any common subject area.
    But there is no attribute is common between A and B so not any kind of join possible between two.
    Now if i create a logical table with 2 logical table source A and B and create any request having one column from A and one from B ,
    What will happen? How BI server will combine the result? Will BI server not result records after Cartesian join.
    How can i model this scenario?

  • Invalid data from serveral fact logical table sources after upgrade to 11g

    Hi,
    We have a situation after upgrade from 10g to 11g. Answers' querys works fine in 10g environment, but in 11g, generated SQL is not correct.
    Our example is something like that: we have orders fact table, customers and time dimensions. Customer have an hierarchy like: Customer Total -> Customer Country -> Customer Region -> Customer Detail (each level in one different physical table).
    Order's logical table source has two table sources. One sets to Customer Country level, second one Customer Region level, both with different WHERE clauses in Content tab inside LTS configuration. Both at same level of Time dimension.
    The issue is that, at dimension level, SQL is getting correct table to resolve Customer data (Customer Region level), but then, is getting the WHERE clause sets in LTS set to Customer Country level, so we are getting error data. Priority is the same to both LTS at fact table, sets to 0 (default).
    How to know the way Oracle BI Server takes one LTS instead of another one? It's supposed to take the LTS defined at the same granularity level... but is not correct this case.
    Thanks.

    Can you try one of these options:
    Try to set the priority group of lowest granular dimension to 1
    or disable the LTS that is getting the where clause and check if it works fine and then enable again.

  • Question related to Logical table source

    Hi All,
    I have very basic questions -
    (1) When do we create multiple logical table sources within a dimension?
    (2) If a dimension has more than one logical table sources , when do we need to map the underlying table to other underlying table of logical table sources.
    For exp consider these tables XLE_Entity_Profile, XLE_REgistration , AP_Invoice_ALL
    AP_Invoice_All is a fact table. relationship between XLE_Entity_Profile & XLE_REgistration is (1:M).
    Join info is as below -
    (a) XLE_Entity_Profile.Legal_entity_id = AP_Invoice_ALL.Legal_entity_id
    to get the registration of LE the where clause is as below-
    (b) XLE_Entity_Profile..Legal_entity_id = XLE_REgistration.Source_id and XLE_REgistration.Source_table = 'XLE_Entity_Profile'
    I have created the alias of XLE_REgistration as XLE_REgistration_LE.
    With in a dimension , i have 2 logical table source - XLE_Entity_Profile & XLE_REgistration_LE.
    logical table source 'XLE_REgistration_LE' has where clause 'XLE_REgistration.Source_table = 'XLE_Entity_Profile'
    When i query , LE name , LE Registration Name, i get error like -
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 14070] Cannot find logical table source coverage for logical columns: [LE_NAME]. Please check more detailed level keys are mapped correctly. (HY000)
    Le Name is from XLE_Entity_Profile and LE Registration Name is from XLE_REgistration_LE.
    But when using the properties of logical table source ' XLE_REgistration_LE' , i map it to 'XLE_Entity_Profile' ,i get the correct result.
    I am not able to understand why am i getting error in first way of modeling.
    Thanks , Ashish

    Hi Ashish,
    first about logical table sources (lts): you can create different lts for aggregation and/or fragmentation. Aggregation means that data is aggregated on another level among different physical tables. Fragmentation means that the content is different over different tables (other rows).
    In your case, I think the problem is that your dimension is not denormalized, which results in a snowflake.
    What I understand is that you have the following (physical diagram):
    Invoice (fact table) >----- Entity (Dim) >----- Registration (Dim)
    You have the following joins:
    invoice.entity_id = entity.entity_id
    and entity.entity_id = registration.source_id and registration.source = 'something'
    First idea:
    I would create the following join (in physical diagram):
    Invoice (fact table) >---- Registration (Dim)
    Where:
    invoice.entity_id = registration.source_id and registration.source = 'something'.
    Then in your Entity dimension you should create a hierarchy:
    Grand Total Level
    Entity
    Registration.
    In your dimension you should create the first lts: Entity
    Set the aggregation content of this lts to Entity.
    This lts contains only one physical table.
    Map only the entity columns to the Entity physical table.
    Then create the second lts:
    Entity and Registration.
    Set the aggregation content of this lts to Registration.
    This lts must contain two physical tables, Entity and Registration.
    Map the entity columns to the Entity physical table and the registration columns to the registration physical table.
    Let me know if it works or not.
    Regards,
    Stijn

  • Financial Analytics -- Multiple logical table sources

    we have two logical sources for Fact table. The two sources are Aggreates - one is at Invoice level and other one is at Supplier level. Each column in the fact is the derived column and is getting mapped to both the tables. My problem is when i use supplier name and invoice amount and other fact columns data , one of the fact column comes as Zero even though the back end query that BI server is firing is returning expected result. But some how when it comes on the report the data becomes zero. This doesnot happen when we specifically add a filter on the table at lower level of Aggregation (Invoice). This tells Bi server to fetch the data from table lower level of Aggregation .
    The RPD that we are using is OOTB.

    Scenario # 1: In BMM the two tables form a logical table called CUSTOMER with 2 different logical table sources which are CUSTOMER & ADDRESS.
    -->In this case; based on the columns select source is defined in the physical query
    possible case would be CUSTOMER , ADDRESS, and CUSTOMER & ADDRESS
    -->Used in DE-normalized scenarios
    --> BI uses intelligence based on content tab settings
    Scenario # 2: In BMM the two tables form a logical table called CUSTOMER with 1 logical table source called CUSTOMER only.
    -->In this case; CUSTOMER properties->General tab used both CUSTOMER & ADDRESS, in your physical query both tables present irrespective of column selection
    -->Used in normalized scenarios
    -->Forcing BI to follow our way, since we wont set content tab settings
    Hope this helps

  • OBIEE: Incorrectly defined logical table source doesn't contain mapping

    In OBIEE 10.1.3.2 I have a very simple thing but cannot get it to work. Hopefully someone can point out the mistake. I have the same schema on two different database that I want to compare data.
    The schema is simple. Table (dimension) A has two columns: id and name. Table (Fact) B has two columns: id and value. Table B.id is a foreign key to A. I imported two database schema into the physical layer and for each database, I built the foreign key relationship between table A and B. In the logical layer, I have two logic tables, one to represent A (Dimension) and the other B (Fact) with a logical join. Each logical table has two data sources. For the dimension tables, both id and name columns have two sources. For the fact table, the id has two sources and for the value, I created two separate columns, one called value1 and the other value2 with one from one database's B table's value column and the other from another database's B table's value. They then were made available at presentation layer.
    Now in the Anwser, I can build a query with id from dimension and value1 from fact; it displayed fine. Same with a query with id from dimension and value2 from fact, it displayed fine. However, if the query is id, value1 and value2, I got the following error
    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 B) does not contain mapping for [B.value1 [ ] , B.value2 [ ] ]. (HY000)
    Is there something I have to do additional to make both values appearing the same time.?
    Thanks for your help
    Ralph

    Hi, Siddhartha P
    I don't think I understand your information. I couldn't find connection pool at the business mapping layer. I only see it in the physical layer. Do you mean to do the mapping at the logical source table? That's only places I see any mappings and I don't see complex join there (only inner join, left outer, right outer and full outer) What mappings should I need to create between table B (fact table) of database 1 and table B (fact table) of database 2. I thought they don't have any relationship other than join through a dimension table which has columns that map to both table A (dimension table) of database 1 and 2. Then the logical fact table has 3 columns, one is id (to join to Dimension table) with two mappings (one to table B of database 1 and one to table B of database 2) and one column value1 which maps only to table B's value of database 1 and another column value2 maps to table B's value of database 2. That seems to be done correctly because I can pick column id and value1 or column id and value2 and have them displayed correctly but not all 3. I thought if it can display the two separately correctly, they should be able to display all 3. no?
    I am not getting any inconsistency error.
    There must be something I still don't understand. If you don't mind give me a little more direction, that would be great.
    Thanks
    Ralph

  • Dynamically change the Priority Group of Logical Table Sources in OBIEE 11g

    Hi All,
    I have 2 Logical Table Sources(LTS 1 and LTS 2 for a Logical Table in BMM Layer).
    Example: Logical Table : Sample
    LTS Source 1 : Sample 1(Priority Group Set to 1)
    LTS Source 2 : Sample 2(Priority Group Set to 0)
    I have set the Priority Group of Sample 1 LTS Source to 1 and Priority Group of Sample 2 LTS Source to 0.
    I need to dynamically change the Priority Group of Sample 1 LTS Source to 0 if my role is DEVELOPER where role is a column in database.
    If my role is not equal to DEVELOPER then the Priority Group of Sample 1 LTS Source will remain same(1).
    Please suggest how can i achieve this.
    Thanks,
    Soukath Ali

    hello Soukath Ali,
    didi you find a way to dinamically changing Priority Group?
    thanks,
    Maria Teresa Marchetti

  • Question on Logical table Sources

    Good day!
    I would like to ask for your advice on an bottleneck I am experiencing in a repository implementation in Siebel/OBIEE.
    I am to create a logical table which sources comes from two different tables(Physical table A and Physical table B).
    I am trying to union the contents from table A and table B so I planned to use fragmentation content.
    My problem is that there is no way to distinguish the difference between the records coming from physical table A and table B.
    I created two logical tables sources and specified the same condition for both but the server would automatically choose the first one and would not include the records from the second logical table source.
    Is there any other way I could combine the records from table A and table B in Business Model and Mapping layer?
    Please, I would like to know your thoughts.
    Thanks,
    Ivan

    Hi Ivan,
    I dont think there is other way which is equable to fragmentation content functionality.
    I would suggest to try with any column is not null or most satisfied condition so that both contents present in the query.
    If helps pls mark

  • Multiple Logical Table Sources vs Single Logical Table Source

    OBIEE 11g. I am totally confused. Can someone help me with the following for me.
    I have seen logical table sources being used in 2 ways. I have a 2 sources tables: CUSTOMER & ADDRESS. In physical layer these 2 tables are linked by CUSTOMER _ID in a 1:M relationship.  i.e. A customer can have many addresses.
    Scenario # 1: In BMM the two tables form a logical table called CUSTOMER with 2 different logical table sources which are CUSTOMER & ADDRESS.
    Scenario # 2: In BMM the two tables form a logical table called CUSTOMER with 1 logical table source called CUSTOMER only.
    What is the difference between the above 2 scenarios and which one is better to use when creating the logical table source.
    Regards.

    Scenario # 1: In BMM the two tables form a logical table called CUSTOMER with 2 different logical table sources which are CUSTOMER & ADDRESS.
    -->In this case; based on the columns select source is defined in the physical query
    possible case would be CUSTOMER , ADDRESS, and CUSTOMER & ADDRESS
    -->Used in DE-normalized scenarios
    --> BI uses intelligence based on content tab settings
    Scenario # 2: In BMM the two tables form a logical table called CUSTOMER with 1 logical table source called CUSTOMER only.
    -->In this case; CUSTOMER properties->General tab used both CUSTOMER & ADDRESS, in your physical query both tables present irrespective of column selection
    -->Used in normalized scenarios
    -->Forcing BI to follow our way, since we wont set content tab settings
    Hope this helps

  • No Fact table Exists and [nQSError: 14070] Cannot find logical table source

    Hi,
    I have 3 tables A(fact),B(dim) and C(dim). there are some other dims. i am getting Errors here.
    A is joined with B and B is joined with C .
    1) In report if i pull columns from A and B its giving data. If i include C table Columns in the report i am getting Error like
    No Fact table Exists.
    2) If i pull the C table columns only in the Criteria i am getting error [nQSError: 14070] Cannot find logical table source
    How can i resolve this.
    Thanks

    In Logical table B source properties general tab ->Click on Add button and add table C and pull required columns from Physical layer table C.
    If helps mark for any issues let me know.
    Edited by: Srini VEERAVALLI on Feb 13, 2013 6:42 AM

Maybe you are looking for