Creating one dimensional hierarchy using columns from 2 different dimension

Hello guys
I have a case here.. The way our business is set up is that we have one dim table called channel dim, and another one call customers. Customer ID should be the child of channel ID. In other words, the measures at each Customer ID level should rollup to its parent channel ID level..
So I am creating a hierarchy in my BMM which is named channel sales Dim:
channel sales Dim--
-- Grand Total Level
-- Channel parent
channel ID (Key)
--Customer Details
Customer ID(Key)
Account (Sum)
Both channel_ID and Customer_ID are the primary keys of Channel Dim and Customer Dim, both dim are joined to the sales fact table..
So the hierarchy is created in such way, however when I check consistency it is giving me errors: nqserror15003: missing most detailed table for dimension table (Channel_Dim, Customer_Dim)
Any advice of how to deal with this error?
Much thanks

Hi,
Yes the fact table has the keys to the date and customer dimension. Is there any other column or information needed to create the constraint prompt?
Thanks.

Similar Messages

  • OBIEE Group By on 2 facts and concatenated columns from different dimensions

    Hi
    I have a different kind of problem involving 2 fact tables with different dimensional attributes.
    Fact 1 has Dim Attributes ( Cust,Facility )
    Measure - Gross Amount
    Fact2 has Dim attributes (Cust,Facility and Risk Group )
    Measure : Exposure Amount
    Since we have 2 facts with different dimensions,
    to exclude the 'Risk Group' dimension column from the group by for the Fact1,
    we set the 'Gross Amount' measure to total level (Risk Group Dimension ) in contents tab.
    So the values from both the fact tables appears in the same report correctly.
    But in the same report we have another requirement where the rating column from the customer dimension has to be concatenated with the ratings column in the facility dimension.
    We have to concatenate customer.rating with the facility.rating and display it in the report.
    when we just pull the individual columns from the dimensions into the report it works fine.
    But when we try to concatenate the 2 columns and show it in the report,
    the concatenated column does not appear in the select or the group by in the SQL Fact2.( Generated by OBIEE )
    The other fact1 has the concatenated column in the select as well as the group by clause ( Generated by OBIEE )
    As a result the report shows the concatenated values only for the results from the Fact1. But the results from Fact2 does not have the concatenated column values.
    The report should look like the below:
    Custor.Name,     Customer.Id,     Facility.Name,     Facility.Id,     Customer.Rating/Facility.Rating,     Risk Group,     Gross Amount,     Exposure Amount
    ===========    =========      ===========     =========   ========================      =========     ===========     ===============
    JPMC                123                    GROSS               123               08/10                                                  LNL                    45,000               25,000
    CLAIRE               456                    NET                    456               07/10                                                  RNK                    50,000               30,000
    Thanks,
    Chandra

    As suggested you really want to move your none-aggregated fact attributes to a logical dimension (using the same physical table as the logical fact). Map this in the BMM layer as a snowflake, Place a hierarchy on this dimension with (at minimum) Total -> Detail levels, then on the other fact table you want to include in the report, set the content level on your other fact measures to the 'Total' level for your new logical Dim and it will allow them to be present in the same report.

  • Help in creating MDX Calculated Member using attributes from multiple Dimension

    Hi All,
    First of all my knowledge on MDX is basic. In one of our projects, there is a requirement to create calculated member (similar to derived fields in SQL) which is more of a dimension attribute and not really a calculated member. Due to IP issues I cannot paste
    the actual queries but I will provide an SQL Query equivalent to what I am trying to achieve:
    Select P.Product, Case When ISNULL(FS.ArtistName,'') = '' Then P.ArtistName Else FS.ArtistName End Artist
     From
    dbo.FactMusicSales FS
    Join dbo.dimProduct P
    on P.DimProductKey =  FS.DimProductKey
    We are trying to replicate the logic for derving the "Artist" field using MDX script.
    We are running into issues while trying to build an MDX expression using the above logic. The main issue being that the new field/member "Artist" would not be calculated unless its elements are selected (FS.ArtistName, P.ArtistName). Besides this
    we are also unable to place this new member in a different folder other than a sub folder under the measures. Any pointers to solving this would be really helpful.
    Thanks in Advance,
    Venki

    Hi Venki,
    According to your description, you need to create calculated member (similar to derived fields in SQL) which is more of a dimension attribute and not really a calculated member, right?
    In your scenario, you needn't to achieve this requirement by using MDX. You can use a named query on your data source view. A named query is a SQL expression represented as a table. In a named query, you can specify an SQL expression to select rows and columns
    returned from one or more tables in one or more data sources. So in you scenario, you can use your query on the DSV, and then use the modified table to create a dimension.
    http://msdn.microsoft.com/en-IN/library/ms175683.aspx
    Regards,
    Charlie Liao
    TechNet Community Support

  • Report using Data from different tables

    Hello,
    I am trying to convert a Cobol batch program to Oracle 6i tabular report.
    The data is fetched from many different tables and there are lots of processing(i.e, based on the value of a column from one table need additional processing from different tables) required to generate the desired columns in the final report.
    I would like to know what is the best strategy to follow in Oracle Reports 6i. I heard that CREATE GLOBAL TEMPORARY TABLE is an option. ( or REF CURSOR ?) I do not know much about its usage. Can somebody guide me about this or any other better way to achieve the result.
    Thank you in advance
    Priya

    Hello,
    There are many, many options available to you, each of which has advantages and disadvantages. This is why it is difficult to answer "what is best?" without alot more details about your specific circumstances.
    In general, you're going to be writing PL/SQL to do any conditional logic that cannot be expressed as pure SQL. It can executed in the database, or it can executed within Reports itself. And most reports developers do some of both.
    As a general rule, you want to send only the data you need from the database to the report. This means you want to do as much filtering and aggregating of the data as is readily possible within the database. If this cannot be expressed as plain SQL queries, then you'll want to create a stored procedures to help do this work.
    Generally, the PL/SQL you create for executing within the report should be focused on control of the formatting, such as controlling whether a field is visible, or controlling display attributes for conditional formatting.
    But these are not hard and fast rules. In some cases, it is difficult to get all the stored procedures you might like installed into the database. Perhaps the dba is reluctant to let you install that many stored procedures. Perhaps there are restrictions when and how often updates can be made to stored procedures in a production database, which makes it difficult to incrementally adjust your reports based on user feedback. Or perhaps there are restrictions for how long queries are allowed to run.
    So, Reports offers lots of options and features to let you do data manipulation operations from within the report data model.
    In any case, Oracle does offer temporary table capabilities. You can populate a temp table by running stored procedures that do queries, calculations and aggregations. And you can define and initiate a dynamic query statement within the database and pass a handle to this query off to the report to execute (ref cursor).
    From the reports side, you can have as many queries as you want in the data model, arranged in any hierarchy via links. You can parameterize and change the queries dynamically using bind variables and lexicals. And you can add calculations, aggregations, and filters.
    Again, most people do data manipulation both in the database and in Reports, using the database for what it excels at, and Reports for what it excels at.
    Hope this helps.
    Regards,
    The Oracle Reports Team --skw                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • How do I create a single image using PSE12 from multiple originals where each original is still separate?

    How do I create a single image using PSE12 from multiple originals in which the originals are still separate (i.e. side by side or arranged in a square)? I could do this in PSE2, but can't find how to get PSE12 to do it.
    Grecophile55

    In PSE2 there was a single photo-merge. I browsed all my images and I could then click and drag each to its new position before saving. There doesn’t seem to be a similar facility in PSE12.

  • [POL-3309] trying to use datapage from different file.

    Getting this error trying to access both the ESB and BPEL datasources in SOA Suite 10.1.3 GA.
    Any ideas how to fix?

    I am also getting same error message when I am trying to establish a olite connection. Moreover I got this error when I opened BPEL console :
    Cannot fetch a datasource connection.
    The process domain was unable to establish a connection with the datasource with the connection URL "jdbc/BPELServerDataSourceWorkflow". The exception reported is: [POL-3309] trying to use datapage from different file
    Please check that the machine hosting the datasource is physically connected to the network. Otherwise, check that the datasource connection parameters (user/password) is currently valid.
    Please provide solution.....

  • How to update multiple columns from different tables using cursor.

    Hi,
    i have two tables test1 and test2. i want to udpate the column(DEPT_DSCR) of both the tables TEST1 and TEST2 using select for update and current of...using cursor.
    I have a code written as follows :
    DECLARE
    v_mydept1 TEST1.DEPT_CD%TYPE;
    v_mydept2 TEST2.DEPT_CD%TYPE;
    CURSOR C1 IS SELECT TEST1.DEPT_CD,TEST2.DEPT_CD FROM TEST1,TEST2 WHERE TEST1.DEPT_CD = TEST2.DEPT_CD AND TEST1.DEPT_CD = 'AA' FOR UPDATE OF TEST1.DEPT_DSCR,TEST2.DEPT_DSCR;
    BEGIN
    OPEN C1;
         LOOP
              FETCH C1 INTO v_mydept1,v_mydept2;
              EXIT WHEN C1%NOTFOUND;
              UPDATE TEST2 SET DEPT_DSCR = 'PLSQL1' WHERE CURRENT OF C1;
              UPDATE TEST2 SET DEPT_DSCR = 'PLSQL2' WHERE CURRENT OF C1;
         END LOOP;
         COMMIT;
    END;
    The above code when run says that it runs successfully. But it does not updates the desired columns[DEPT_DSCR].
    It only works when we want to update single or multiple columns of same table...i.e. by providing these columns after "FOR UPDATE OF"
    I am not sure what is the exact problem when we want to update multiple columns of different tables.
    Can anyone help me on this ?

    oops my mistake.....typo mistake...it should have been as follows --
    UPDATE TEST1 SET DEPT_DSCR = 'PLSQL1' WHERE CURRENT OF C1;
    UPDATE TEST2 SET DEPT_DSCR = 'PLSQL2' WHERE CURRENT OF C1;
    Now here is the upated PL/SQL code where we are trying to update columns of different tables --
    DECLARE
    v_mydept1 TEST1.DEPT_CD%TYPE;
    v_mydept2 TEST2.DEPT_CD%TYPE;
    CURSOR C1 IS SELECT TEST1.DEPT_CD,TEST2.DEPT_CD FROM TEST1,TEST2 WHERE TEST1.DEPT_CD = TEST2.DEPT_CD AND TEST1.DEPT_CD = 'AA' FOR UPDATE OF TEST1.DEPT_DSCR,TEST2.DEPT_DSCR;
    BEGIN
    OPEN C1;
    LOOP
    FETCH C1 INTO v_mydept1,v_mydept2;
    EXIT WHEN C1%NOTFOUND;
    UPDATE TEST1 SET DEPT_DSCR = 'PLSQL1' WHERE CURRENT OF C1;
    UPDATE TEST2 SET DEPT_DSCR = 'PLSQL2' WHERE CURRENT OF C1;
    END LOOP;
    COMMIT;
    END;
    Please let us know why it is not updating by using using CURRENT OF

  • How to use attributes from different context nodes in one view?

    I am VERY new to the concept of CRM and currently working on creating an alternate version of the BP_HEAD_SEARCH. With help from SAPPRESSs book 'SAP CRM Web Client' i was ble to create my own simple Z-component.
    However after going back and forth the book and the forum (including this [article|https://wiki.sdn.sap.com/wiki/display/CRM/Howtoaddanexistingfieldtoasearchpageofadifferent+component]) i was not able to find a solution to my problem. My current search uses BuilHeaderAdvancedSearch as context node for searching. But the search should also be able to use attributes from BuilActivity, which is directly related to BuilHeader. I can't seem to find a way to get attributes from BuilActivity into the search window of my component without having to change SAP-Standard.
    Is this really the only way? Please advise on possible code and insertion point.

    Any suggestions?

  • Report with non aggregated and aggregated columns from different facts.

    Hi,
    We have got requirement as follows,
    1) We have two dimension tables, and two fact(Fact1 and Fact2) table in physical.
    2) In BMM we have made hierarchies for both dimensions, and are joins both logical fact table.
    3)In fact1, we are having three measures of which we have made two as aggregation sum, and one is non aggregated(It contains character).
    4)Fact2 have two measures, both are aggregation as sum.
    5)Now here the problem arises, we want to make a report with some columns from dim and non aggrgated column from fact1 and and aggregated column fact2
    How to resolve the above issue.
    Regards,
    Ankit

    As suggested you really want to move your none-aggregated fact attributes to a logical dimension (using the same physical table as the logical fact). Map this in the BMM layer as a snowflake, Place a hierarchy on this dimension with (at minimum) Total -> Detail levels, then on the other fact table you want to include in the report, set the content level on your other fact measures to the 'Total' level for your new logical Dim and it will allow them to be present in the same report.

  • Copying column from different table

    I want to copy the column of one table1 to table2 column with the condition to add the existing data not to replace
    Regards

    Sure ->
    satyaki>>
    satyaki>> CREATE TABLE emp_source
      2  AS
      3     SELECT * FROM emp;
    Table created.
    satyaki>>
    satyaki>> SELECT COUNT(*) FROM emp_source;
      COUNT(*)
            14
    satyaki>>
    satyaki>> CREATE TABLE emp_target
      2  AS
      3     SELECT * FROM emp WHERE ROWNUM <= 8;
    Table created.
    satyaki>>
    satyaki>> SELECT COUNT(*) FROM emp_target;
      COUNT(*)
             8
    satyaki>>
    satyaki>> BEGIN
      2     MERGE INTO emp_target et
      3        USING ( SELECT * FROM emp_source ) es
      4        ON    ( et.empno = es.empno )
      5     WHEN MATCHED THEN
      6     UPDATE
      7        SET et.ename  = es.ename
      8        ,   et.sal    = es.sal
      9        ,   et.mgr    = es.mgr
    10        ,   et.deptno = es.deptno
    11     WHEN NOT MATCHED THEN
    12     INSERT
    13        ( et.empno, et.ename, et.sal, et.mgr, et.deptno )
    14        VALUES
    15        ( es.empno, es.ename, es.sal, es.mgr, es.deptno );
    16 
    17     DBMS_OUTPUT.PUT_LINE(TO_CHAR(SQL%ROWCOUNT) || ' rows merged.');
    18  END;
    19  /
    14 rows merged.
    PL/SQL procedure successfully completed.Hope this will help.
    Regards.
    Satyaki De.

  • Referencing different columns from different groups

    Hi all,
    I created a formula column in a group , say g1. This formula column references in a bind reference fashion one column from g1 and another column from another group , say g2. And when I run the report then there is an error because of the external reference from group g2. So how can I reference both the two columns because I must calculate something from both of the two columns !
    Thank you very much indeed.

    Hi,
    Here i'm facing similar problem.
    I have a query Q1 which will get data in two columns p_plan, p_real. And I have another Q2 which will bring the data in two columns m_plan, m_real. Now i want to display the difference of (p_plan - m_plan) and (p_real - m_real).
    Since these fields for which the diff should be calculated are present in two different groups, std error "below Frequency error is thrown.
    Any advice pls

  • Columns from different tables displayed in an ADF table format

    I have a many to one relationship between 2 tables (checklist -> subcontract). I would like to display columns from each table on a web page in an ADF Read Only Table format. I created a method that returns the data I need from the tables. When I drag that method over to my page JDev I'm only allowed to select columns from either the checklist table OR the subcontract table. I need one column from the subcontract table and several columns from the checklist table. I'm using JDev 10.1.3.2 and an Oracle 11g database. Thank you in advance.
    -Wade

    Thank you for your response. I ended up creating a new getter in the Checklist table which refers to the column in the Subcontract table. Then I was able to create a table column for that returned value.
    Thanks again!
    -W

  • PAS QUERY: parent-child in to different columns from single dimension

    Hello,
    We are looking for the syntax to execute a PAS (Pilot Application Server) query with the following characteristics:
    1)     Products dimension is hierarchically arranged by Product Type (parent) and the Product itself (child). There are other ancestors but we wonu2019t necessarily use them.
    2)     We want to obtain a report through PAS scripting which allows us to display product hierarchy names in two different columns, i.e.: Column1 (Product Type) Column2 (Product) , but since they are part of the same hierarchy (dimension), we are not able to present the results as shown in the example below:
    Example:
    Product_Type     Product        Metric
    Core               ProductX        MetricN
    Core              ProductY        MetricN
    New              ProductW        MetricN
    New              ProductZ        MetricN
    Any clues on how to attain this?
    Thanks in advance.

    Hi,
    You can make use of CrossJoin function in MDX, I give a sample MDX based on the AdventureWorks database:
    select {[Measures].[Reseller Sales Amount]} on 0,
    crossjoin({[Sales Territory].[Sales Territory Group].[Sales Territory Group].members},{[Sales Territory].[Sales Territory Country].[Sales Territory Country].members}) on 1
    from [Adventure Works]
    After execut the MDX you will get the result like this:
    Reseller Sales Amount
    Europe
    France
    $4,607,537.94
    Europe
    Germany
    $1,983,988.04
    Europe
    United Kingdom
    $4,279,008.83
    NA
    NA
    (null)
    North America
    Canada
    $14,377,925.60
    North America
    United States
    $53,607,801.21
    Pacific
    Australia
    $1,594,335.38
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

  • How do I use music from different ID's in iMovie

    I am "upconverting" my old iMovie swim shows to HD, which means remastering and re-linking some of my videos and even some of my pix.
    We have been using iMovie since 2008 so I know it's changed a lot but there's one thing that's become really aggravating and I'm hoping there's an answer.
    When we first started, we bought songs under two different ID's (big mistake--never do that!) and used songs from both ID's in previous iMovies without a problem. But iMovie '10 refuses to let me use songs from a different ID, even though I have authorized this computer for songs from that ID, and I have the password to the account, etc. etc.
    And here's the really aggravating part: It's only a few songs and at this point, it's not worth my time to figure it out. I'll just buy the music again and give the no-good record industry a little extra cash for something I presumably own. EXCEPT iTunes thinks I already own that song (I do) so it won't let me buy it again, even if I delete it.
    Now I'm really stuck. iMovie won't let me use the music from another ID, but iTunes won't let me buy it on the new ID cuz it knows I own it from the old one. Arrrgggggh!

    First of all if you havent done it yet i think u shold authorize the mac on both accounts on itunes. You also can switch the accounts on your Iphones at itunes while you are in the internet adn download the music.
    This is just an idea you should think of. For sure there are other ways I dont know.

  • Adding 2 columns from different queries

    Hi,
    Could someone let me know how to add 2 integer columns from 2 different queries and display it using a third field. I will need to have 2 queries.
    When I try to do it it gives me Column 'xxx' references column 'xxx', which has incompatible frequency error.
    Please need your help.

    never mind, i did it using summary columns, thanks

Maybe you are looking for

  • 2-Colorable Problem

    Hello. I hope I am not disturbing anyone by asking about this, but I have a homework assignment due relatively soon that involves determining whether a graph is 2-colorable or not. I am having problems figuring out how to prove a graph is or isn't 2-

  • Keychain doesnt save password - airport disk

    Hi, I have a 4th gen. Airport Extreme with a connected USB HDD . Ever since i switched to account based access to the airport disk , It have refused to stay logged on after restarts. This is okay, but it is super annoying that it refuses to remember

  • G4 as external Hard Drive

    Is it possible to use my G4 as an external HD to my Intel G5? If yes how is it done? Do I have to remove everything from the G4 drive? Thanks for any help. Marilyn

  • D110 will not reset content level of refilled black HP60 cartridge

    Had an HP60  black cartridge refilled, at Costco, D110 will not reset ink content level and therefore will not print. Tried several, supposed, solutions on web, including one on HP support site, low ink level will not reset. Is there anyway to reset

  • Need explanation of the following code

    HI All, I need your help on explanation of the following code : what I don't understand is how it route the request (all the benefit of the replace statement ) If the input is /scarr/LH/SPFLI/402 how he know to route it and what is the benefit for us