Multiple Joins Between Folders

Hi Gurus,
I have a fact table which contains multiple candidate fields that can be joined to a lookup table
2 folders
fact_table
lookup_table1
2 Joins are possible between the two folders
fact_table.code_combination_id -> lookup_table1.code_combination_id
fact_table.accrual_code_combination_id -> lookup_table1.code_combination_id
When I try to create a workbook and include fields from the fact table, then include fields from the lookup table it asks me to choose the join.
If I then want to add fields based on the second join it won't ask me which join to use in future. It appears to assume the first join is still in affect between the two folders for the report. I know I can create another folder using the same lookup table and move one of the existing joins from the current folder to the new folder. Am I missing something or is this the only way to go?
Regards,
John

Hi John,
Interesting issue. This is how we resolved it in my last job.
Folders created:
Fact table: AR Fact
Lookup folder: Code Combination Lookup
Lookup folder: Accrual Code Combination Lookup
Then join AR Fact to each lookup folder. Generally, point the lookup folder to the AR Fact folder when creating the joins. Discoverer will like that direction best. As additional code combination types are referenced, add additional code combination folders. All of those folders come from the same lookup table. The only thing that is different is the column joined to in AR Fact.
So, in the end, your joins would be:
Code Combination Lookup.code_combination_id -> AR Fact.code_combination_id
Accrual Code Combination Lookup.code_combination_id -> AR Fact.accrual_code_combination_id
Hope this helps.
Regards,
Nancy

Similar Messages

  • Multiple Joins between 2 folders - when change condition value

    Hi
    I have created a report that joins 3 tables. The join between 2 of them gave me the option of two possible joins. I selected one and the report runs OK.
    There is a condition in the report that uses one of the fields from one of the tables that has multiple join paths.
    If I change the value of the condition from e.g. field = 04 to field = 05, then I get the error 'multiple join paths between folders'.
    If I disable the multiple join path detection it runs ok and the query matches the original one.
    However, do you know why I would get this error by just changing the value within an existing condition where the join path was already selected?
    Thanks
    GB

    Hi,
    Everytime when you change the value of the column, discoverer re-generates the query and hence asks for the Multiple joins.
    You can disable this option in Discoverer Desktop.
    Go to Tools > Options > Advanced > Uncheck "Multilpe Join Path Detection".
    Cheers!
    Yogini

  • Multiple joins between tables

    Not sure that the title best describes this.
    I've got two tables which I'll simplify here
    t1 - building (BuildingCode, Reception, Porter, Manager)
    A, 1, 3, 8
    B, 2, 4, 9
    C, 1, 4, 7
    t2 - staff (ID, Name, Extn)
    1, Dave, 3302
    2, Chris, 3994
    3, Claire, 3033
    8, Simon, 3255
    and i'd like to get a table out that looks like
    A, Dave, 3302, Claire, 3033, Simon, 3255
    B, Chris, 3994 etc.
    select b.buildingCode, s.Name, s.Extn
    from building b, staff s
    where s.ID = b.Reception
    would give me one set of details - how can i get all 3?
    Do I need to do 3 queries - where s.ID = b.Reception, where
    s.ID = b.Porter and where s.ID = b.Manager and then join the 3
    tables together or is there a more direct route?
    Many thanks
    Michael

    Now that I've had a chance to try the code I found that to
    use the results on the page I needed aliases in the select part as
    well - final code is
    select t1.BuildingCode, r.Name as rname, r.Extn as rextn,
    p.Name as pname, p.Extn as pextn, m.Name as mname, m.Extn as mextn
    from t1, t2 r, t2 p, t2 m
    where t1.Reception = r.ID
    and t1.Porter = p.ID
    and t1.Manager = m.ID

  • Multiple foreign key joins between two tables

    Hi,
    I have a question about building a repository.
    I have a date dimension and one fact. The fact table has about 10 foreign key columns that link to the date Dimension.
    In this case should I create 10 aliases to create joins in the Physical and BMM layer or is there any other way to handle this situation.
    I am asking this question because 10 aliases can get very confusing for me at the later point of time while creating reports.
    Using OBIEE 10.1.3

    Hi
    I have a follow up question on this.
    I am okay with not seeing the different date tables under the Subject area. Even if it just shows a it as a Simple DATE Dimension I am good with it.
    In this case which is the efficient way, creating 10 aliases or creating 10 joins in the physical layer. I just figured out that we can create multiple joins between the same set of two tables but do not know how will that effect the way BI server works.
    Please help me in understanding this concept.
    thanks
    This request id for OBIEE 10.1.3

  • Error: There are multiple join paths between these folders

    I occasionally see this multiple join path error message when collapsing a field in a cross-tab report. The strange thing is that this error only occurs when collapsing on detail of the field, but does not happen when collapsing on the field title. For example, if the column is the department field, there is no error when collapsing on the department title at the top of the column. However, when collapsing on a single department (e.g. president_office) then the error occurs. The second odd thing, when reviewing the SQL there is only one join to the department table.
    Does anyone have an explanation, solution, or a suggestion on how to debug this error? Sometimes I found that by rearranging the layout of the fields fixes the problem, but this is not an option in every report.
    thanks

    Since it's using the "Firstname lastname" to reference the user when I use add-distributiongroupmember, I suspect that referencing the smtp address would return different results.
    Does Add-DistributionGroupMember reference AD objects, even if they don't have an associated mailbox? I ran into the same error when giving myself full permissions on a mailbox; I have only one Exchange object (a mailbox) but I have a second
    AD object (user object with dom admin rights). I then went and found that the user I had trouble adding to the DG has an
    AD object with no associated mailbox. (We frequently create AD users for business partners to access published remote applications.)
    My suspicion is that Add-DistributionGroupMember references AD objects, and not just valid Exchange recipients. This would make sense if you're using security enabled groups and having them pull double duty - which we don't do at this company.
    If my suspicion is correct, it should be documented on the technet article. http://technet.microsoft.com/en-us/library/aa995970(v=exchg.141).aspx

  • 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.

  • Join Between PO and Requisition

    Hi,
    I am trying to do a report in Disco (4.1.48) on all the Open Po's associated Req with the Req Amount and Amount receipted.
    I can get the info for the Req fine and the info for the PO's fine.
    But I cannot get the join between the Po and Req to work so all the data pulls onto one sheet.
    I keep getting an error "Join configuration cannot resolved as one detail folder uses non aggregated items"
    I have a Join between Po Distributions All.Req Distribution Id and Po Req Distributions All.Distribution Id
    Any Help Greatly appreciated
    Mick

    Hi,
    Personally, I would avoid custom folders. It sounds as though you are using a master and two detail folders in your report, and you are using an aggregation function (e.g. SUM) on an item in one of the detail folders. You may be able to resolve this by changing (using Discoverer Administrator) the join on the other detail folder to be a one-to-one join.
    Rod West

  • Multiple Joins

    Using HR demonstration schema, I am trying to understand how Oracle performs this multiple join:
    select r.region_name, c.country_name, l.city, d.department_name
    from departments d natural join locations l
    natural join countries c natural join regions r
    I ran the query using SQL Developer 2.1.1.64.45 and SQLPlus and the result I obtain is the same: 27 rows.
    The documentation says that I should obtain a set of 2700 rows:
    “The join between DEPARTMENTS and LOCATIONS creates an interim
    result set consisting of 27 rows. These tables provide the DEPARTMENT_NAME
    and CITY columns. This set is naturally joined to the COUNTRIES table. Since
    the interim set does not contain the COUNTRY_ID column, a Cartesian join is
    performed. The 27 interim rows are joined to the 25 rows in the COUNTRIES
    table, yielding a new interim results set with 675 (27 × 25) rows and three columns: DEPARTMENT_NAME, CITY, and COUNTRY_NAME. This set is naturally joined to the REGIONS table. Once again, a Cartesian join occurs because the REGION_ID column is absent from the interim set. The final result set contains 2700 (675 × 4) rows and four columns.”
    I parsed the query like it is suggested and the difference began with the second join:
    select c.country_name, l.city, d.department_name
    from departments d natural join locations l
    natural join countries c;
    I obtain a set of 27 rows instead of 675 as the documentation says (and I assume the documentation is correct).
    If the result set from first Join it is fed as first term for the second join(from left to right) the result should be a Cartesian join and still my tools returns a set of 27 rows .
    I verified the structure and contain of the 4 tables involved and it do match the one describe in documentation.
    Why is my result different from the one provide in doc?
    It is like it doesn’t matter if I select country_id column or not from first join,
    somehow Oracle knows to identify the common column for the second join.

    Hi,
    Welcome to the forum!
    user12290417 wrote:
    Using HR demonstration schema, I am trying to understand how Oracle performs this multiple join:
    select r.region_name, c.country_name, l.city, d.department_name
    from departments d natural join locations l
    natural join countries c natural join regions r
    I ran the query using SQL Developer 2.1.1.64.45 and SQLPlus That's a very good idea to post the exact version number of your front end!
    The version of your database can make a big difference, too. Don't just put an easy-to-miss tag, like "11g" on your message; come right out and say "I'm using Oracle 11.1.0.7.0" (or whatever it is).
    and the result I obtain is the same: 27 rows.
    The documentation says that I should obtain a set of 2700 rows:I get 2700 rows, using Oracle 10.2.0.1.0 Express Edition. I might be able to test it on Oracle 11 tomorrow.
    “The join between DEPARTMENTS and LOCATIONS creates an interim
    result set consisting of 27 rows. These tables provide the DEPARTMENT_NAME
    and CITY columns. This set is naturally joined to the COUNTRIES table. Since
    the interim set does not contain the COUNTRY_ID column, a Cartesian join is
    performed. The 27 interim rows are joined to the 25 rows in the COUNTRIES
    table, yielding a new interim results set with 675 (27 × 25) rows and three columns: DEPARTMENT_NAME, CITY, and COUNTRY_NAME. This set is naturally joined to the REGIONS table. Once again, a Cartesian join occurs because the REGION_ID column is absent from the interim set. The final result set contains 2700 (675 × 4) rows and four columns.”Can you post a link, or at least a reference, to the source of this quote? Is it describning Oracle 11 specifically?
    I parsed the query like it is suggested and the difference began with the second join:
    select c.country_name, l.city, d.department_name
    from departments d natural join locations l
    natural join countries c;
    I obtain a set of 27 rows instead of 675 as the documentation says (and I assume the documentation is correct).Again, I get 675 rows, like your source.
    If the result set from first Join it is fed as first term for the second join(from left to right) the result should be a Cartesian join and still my tools returns a set of 27 rows .
    I verified the structure and contain of the 4 tables involved and it do match the one describe in documentation.
    Why is my result different from the one provide in doc?
    It is like it doesn’t matter if I select country_id column or not from first join,
    somehow Oracle knows to identify the common column for the second join.Yes, the behavior you're seeing does seem to be like that.
    When you explicitly give the join conditions in an ON clause, you can use any columns in any table that's been introduced up to that point. You're not limited to columns that are in the SELECT clause. The behavior you're seeing is consistent with that.
    For what it's worth, the only people I've ever heard of using NATURAL JOIN are students, and even then, only if they are very diligent about following instructions. In real life, there are so many generic column names, such as QUANTITY, or MODIFY_DATE_TIME, that NATURAL JOIN is often meaningless. Also, it's a very fragile technique. If someone adds a column to a table, suddenly dozens of queries using NATURAL JOINs could start giving bad results. Most people want to write robust code, and minimize the probability of needing to re-write it.
    There are lots of good places to invest your time, and lots of useful things to learn in Oracle. Spend your time learning about things that you might use, such as regular expressions, or analytic functions, or recursive sub-queries, before you spend too much time on NATURAL JOIN (or USING).

  • Error: 38015, Physical tables have multiple joins.

    Hi,
    I have 5 dimensions and 1 fact table. One of the dimension table have 2 keys, which are referenced with fact table.
    I have created aliases for all table on which I have defined joins.
    But, It is giving me error like
    ERRORS:
    GLOBAL:
    *[38015] Physical tables "obidb".."ORDER_DETAILS"."FACT" and "obidb".."ORDER_DETAILS"."BILLING_ACCOUNT" have multiple joins.*
    Delete new foreign key object if it is a duplicate of existing foreign key.
    Please give me any suggestions.....
    Thanks.

    Hi,
    Did your deleted existing foreign key before joining the alis_dim1(fk1), dim1(fk2) to fact join?
    double check u r model its comes like circular join so by using alias method u r can resolve that issue.
    In your model just check all your FK relation ship here u can find FK ending with #1 (double time just delete them and check metadata consitancey) if its not working delete the dimension and import it newly then create alias of the dim then join each other required fact also check below link
    http://mtalavera.wordpress.com/2012/03/29/obieerpd-fails-global-consistency-on-joins-between-tables/
    Thanks
    Deva
    Edited by: Devarasu on Nov 23, 2012 4:44 PM

  • Outer join between two Contexts not working

    Hi,
    I have two contexts. A Context and B Context. To define hierachy or to show the both contexts data in single table/report in Web-I, i joined main tables of both contexts with a join. In those main two tables i want to show the table1 data irrespective of corresponding data exist in second table.
    To solve that i tried LEFT/RIGHT outer joins but nothing solved my prob. Because of those were in different context, I suppose. But it's not the same case when i work within a context (Single).
    Hope you got my prob now...!! Please help me out...
    Thank You!!

    Thanks Rohit for your reply.
    Nope, i can't cpntinue without having that join between those two tables. It must be there to get the exact results.
    It's not the prob of using Merged Dimensions... those are useful for another purpose. In my case those two Dimensions have different sets of data and have relation between those two.
    Like:
    Tab-1------Tab2
    Prod1------Cat1
    Prod1------Cat2
    Prod2------Cat3
    Prod3------Cat4
    Prod4------(NULL)
    As per requirement i should show the row for empty, in my ex it's in Prod4.
    If i use two SQL's prob:
    I can't relate those two and which have relation more over interdependent. Shows data as two separate tables in report.
    If i use multiple dataproviders:
    Prob Tab2 is has other joins with other tables to complete the project hierarchy.
    Hope you got it...
    Thank You!!

  • Multiple Joins from one Dimension Table to single Fact table

    Hi all,
    I have a single fact table with attributes as such:
    Action_ID
    Action_Type
    Date_Started
    Date_Completed
    and a Time Dimension to connect to the fact table. Currently the 2 Date columns in my fact table are in the format of 20090101 (which is the same as my key in the time dimension), if it means anything. I've tried to create multiple joins but have been getting error messages. What is the easiest way to link the time dimension with the two date columns in my fact table? Thanks.

    hi..
    it seems to be, you need to use between operator to join time dimension with fact (i.e. Non-equi join)
    If it's then you should create complex join in physical layer by connecting dimension with your fact.
    select columns and operators in such a way that it resembles something like the below.
    timeDimension.timeKey BETWEEN FactTable.Date_Started AND FactTable.Date_Completed

  • Multiple Joins - or Joins in General -- Impossible in Discoverer????

    I would like to do multiple joins in Discoverer and/or custom sql.... How do I do this? Currently I can only do joins on Aggregated/Calculated Items

    Hi,
    You can still use simple folders for more complex joins.
    Eg: where (a.col1 = b.col1) ....
    AND ( (a.col2 = b.col2) OR (a.col2 is null ) )
    This can be achived using Disco Administrator > right click on col name > create join
    create all 3 joins in the same level > select 2 joins which you want to be in inner level select join1 + Shift key + join 2 > select And . This will add a group.The advantage of using simple folder is that you can have all the columns of the table in one shot. If you need only few columns then you can use custim folder, add custom SQL query.
    Hope this helps!
    Yogini

  • Joins between two schemas

    Hi
    I need data from two different schemas. Can develop one subject area taking 2 tables from 2 different schemas or we need to have these two tables from one schema only ?
    Can any one help on this.
    Thanks
    Manu

    Hi,
    When you try to create physical join between these two tables of different schemas.
    The join condition is REGION.REGION_CODE = REGION.REGION_ID
    Note: The table name is same in both the schema.
    Now as soon as I click on Ok, it gives an error.Because You can not create join between two tables with the same name.
    So, create alias for these two tables and try to create the join with the same join condition.
    It allowed me to create join perfectly. I moved ahead with the creation of Subject Area based out of these two tables.
    Opened Presentation Services, selected few attributes from both the Presentation folders.But it gave ODBC error as :
    Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 46036] Internal Assertion: Condition m_CountFields == static_cast<int32>(m_ColumnNameVector.size()), file .\Src\SQCSCacheStorageListStream.cpp, line 221. (HY000)
    Now in order to fix that issue, rename the base tables as Schema1_name.REGION and Schema2_name.REGION in the repository.
    Reload the rpd and run the same report, it would give correct result.
    But instead you can have the tables in the same schema for better maintenance activities.
    Hope this solved your question.
    Regards
    MuRam

  • How can we make an outer join (+) between 2 Queries

    in the data model, i have 2 queries
    i.e
    Q_master and Q_detail
    i want to make a data link between
    these two queries and
    also make an outer join between these
    two queries(i.e. to display all the detail
    records, whether they have details or not)
    please reply is it possible ?
    if yes then how?
    plz write.
    [email protected]
    null

    Hello,
    Left outer join behavior is what you get by default with a link between two queries in Reports.
    If you want a full outer join behavior, you'll need to create a third query that selects the detail records that have no corresponding master, and also create an extra layout region to display them in as a default group left or group above won't pick up these extra records.
    If you want right outer join behavior, you'll need to put in a summary in the master query that counts the rows in the detail, and then put in a format trigger in the master repeating frame that suppresses printing when there are no detail records. And you'll also need the third query and layout section as in the full outer join case.
    Regards,
    The Oracle Reports Team --skw                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

  • Major delay when switching between folders in Mail

    More often than not when I switch between folders (inbox-to-trash or junk-to-inbox, etc) none of the messages in that folder show up and it says on top "0 messages".
    Sometimes they come back after 5 or 6 seconds. Other times it takes over a minute. There usually aren't that many messages in either the folder I'm coming from or going to.
    Any thoughts?

    Based on the tons of new messages showed up in the Trash, I suggest the following.
    Quit Mail first and using the Finder go to Home > Library > Mail.
    Copy the Mail folder and place the copy on the Desktop for backup purposes.
    Using the Finder, go to Home > Library > Mail > Envelope Index.
    Delete the Envelope Index file and empty the Trash.
    The Envelope Index file stores an index of all mailboxes and messages.
    Launch Mail and you will be prompted to import mailboxes. Select OK and allow the process to complete. This isn't really importing anything but creating a new Envelope Index file within the Mail folder and re-indexing all mailboxes and messages within.
    This may cause more previously deleted messages to re-appear but this should resolve the delay problem.
    After confirming all mailboxes are available and there is nothing unusual, you can delete the copy of the Mail folder placed on the Desktop.

Maybe you are looking for