Alternative of Bridge table in data Modelling.

Hello Gurus,
while doing the data modeling, we found one place where we have Many to Many joins between One Fact and 3 Dim.
where in Dim., we mostly have only one attribute/ Dim, which relates Many to Many with Fact.
so as in obiee we have to build the bridge table to take care of the issue.
is there any alternative method of data modeling that can eliminate the Bridge table itself?
I was thinking to add the dim attribute in fact itself. though it's with diff grain it should work??

If you really have a many-to-many relationship from fact to dimension, which attribute value (which of the many) would you put on the fact?
What is the issue you are having with a bridge table?

Similar Messages

  • How to generate the java code of a table's data model by parsing it's FXML?

    I have know how to create FXML file that describes a table. Meanwhile, according to [Oracle Tutorial|http://docs.oracle.com/javafx/2/fxml_get_started/fxml_tutorial_intermediate.htm#CACFEHBI], it is a best practice to implement a class that defines the data model and provides methods and fields to further work with the table.
    However, It's rather cumbersome and time consuming to typing the code. So, is there any tools that can generate the java code of a table's data model by parsing it's FXML describe file?
    Regards, Qinn
    Edited by: 854675 on Oct 7, 2012 11:02 PM

    I have know how to create FXML file that describes a table. Meanwhile, according to [Oracle Tutorial|http://docs.oracle.com/javafx/2/fxml_get_started/fxml_tutorial_intermediate.htm#CACFEHBI], it is a best practice to implement a class that defines the data model and provides methods and fields to further work with the table.
    However, It's rather cumbersome and time consuming to typing the code. So, is there any tools that can generate the java code of a table's data model by parsing it's FXML describe file?
    Regards, Qinn
    Edited by: 854675 on Oct 7, 2012 11:02 PM

  • How to record partitioned tables in Data Modeler ?

    Hi,
    I have discovered the options for partitioned tables. Some questions remain, however.
    1) Static partitions
    For one table, a set of predefined partitions is set up in the data model. In certain situations, a new partition is added. Is it possible to generate alter table DDL from the model that will add this partition ?
    2) Dynamic partitions
    For another table, partitions are added and deleted on the fly (exhange partition). For this tabel, I would like to record just 1 partition, which is added when the tabels are created initially. It is not important to include the actual partitions when synchronizing with the database. Is it possible to skip this for a certain table (i.e. record this preference with the table, since it does not apply for all partitioned tables... ) ?
    Thanks,
    Richard.

    Hi Richard,
    For one table, a set of predefined partitions is set up in the data model. In certain situations, a new partition is added. Is it possible to generate alter table DDL from the model that will add this partition ?
    In Data Modeler version 4.1, ALTER TABLE ... ADD PARTITION statements are generated for new LIST partitions, but not for other types of partitions.
    For another table, partitions are added and deleted on the fly (exhange partition). For this tabel, I would like to record just 1 partition, which is added when the tabels are created initially. It is not important to include the actual partitions when synchronizing with the database. Is it possible to skip this for a certain table (i.e. record this preference with the table, since it does not apply for all partitioned tables... ) ?
    I've logged an enhancement request on this.
    Regards,
    David

  • Sort Order of Tables in Data Modeler in SQL Developer 3.0

    I have a schema with many tables and would like the Data Modeler (in SQL Developer 3.0) to create a Relational Model sorted by table name in Alphabetical Order. The default seems to be random alphabetic order.

    There's an algorithm involved, and I'm pretty sure it's related to the number of grouped objects by relations, but instead of guessing I'll ask the developer to weigh in with the 'real answer.'
    When working with larger models, I've found the #1 tip for making them easier to digest is to break them down into smaller SubViews. Have you experimented much with this feature yet? Also, you can right-click on a table in the tree and 'Go To Diagram' to find the object in the diagram.

  • Dimension table design Data modeling question

    Hi Experts,
    Sorry if I am putting my question in a wrong forum and please suggest an appropriate forum.
    need your opinion on the existing design of our 10 years old datawarehouse.
    There is one dimension table with structure like following
    Dimension Table
    Dimension Key Number (THIS IS NOT A PRIMARY KEY)
    Natural key (from source) Number
    source name character
    current record indicator char(1)
    form_date date
    to_date date
    many other columns, which if change a new current record is created and previous is marked as H-historical
    Data is stored in the dimension table like this
    Dimension_key Natural key Source Name current record ind from_date to_date
    1 10001 Source1 H 1-jan-2005 31-may-2005
    1 10001 Source1 H 1-jun-20005 12-dec-2011
    1 10001 Source1 C 13-dec-2011 NULL
    2 20002 Source1 H 1-jun-20001 12-dec-2011
    2 20002 Source1 C 13-dec-2011 NULL
    The problem I see in this design is that there is no surrogate key, if any attribute is changed the new record is inserted by first taking the dimension key based on the (natural_key,source_name,current_record_ind).
    Shouldn't it be stored like following based on the data-warehousing principals.
    Dimension_key Natural key Source Name current record ind from_date to_date
    1 10001 Source1 H 1-jan-2005 31-may-2005
    2 10001 Source1 H 1-jun-20005 12-dec-2011
    3 10001 Source1 C 13-dec-2011 NULL
    4 20002 Source1 H 1-jun-20001 12-dec-2011
    5 20002 Source1 C 13-dec-2011 NULL
    Please let me know the pros and cons of the current design.

    And what if you have both the features something like this :
    Lineno  Dimension_key Natural key Source Name current record ind    from_date         to_date
         1              1       10001     Source1                  H   1-jan-2005     31-may-2005
         2              1       10001     Source1                  H  1-jun-20005     12-dec-2011
         3              1       10001     Source1                  C  13-dec-2011            NULLI mean just add a new column and populate it with required order by clause. Because what i guess, that in the second example you just added a new column which is something like a line number.
    Regards
    Girish Sharma

  • Customized table cell renderer doesn't work after table data model changed

    Hi:
    I have a jtable with a custimized table cell render (changes the row color). Everything works fine while the data model is unchanged. I can change the row color, etc. However, after I delete one row or any number of rows in the table, the data model is updated and the custmized table cell renderer is not being called anymore while jtable is rendering on its cells. Seems like the table cell render is no long associated with the jtable. Is this a known problem? Any help would be appreciated.
    Thanks

    I am having the same problem. Has anybody solved this issue?
    Thanks

  • Bridge table or factless fact table?

    Hello,
    I have a model a bit different that I've worked with in OBIEE (10), and I can't make it work. I have 1 fact table and two dimensions, joined this way in the physical layer:
    Fact Table >- Dim Person -< Dim Address
    The join between Fact Table and Dim Person is 1:N and the join between Person and Address is also 1:N, for example one person can have many addresses.
    I have searched in forum, internet, etc. how to model this in the BMM, but I can't find the same model as an example. I have found similar models solved with a bridge table, but the model is a bit different (Fact Table -< Dim Person >- Dim Address), so it won't help.
    I have tried many things, but the option that I thought it's more logic, is treating Dim Address as a factless fact table. However, when I choose in a report a fact from the real Fact Table, the person ID and the address, the fact was treated as null. What I expect is that the fact table should be repeated for every address that the person has. So, if the fact is 3 for one person, and the person has 4 addresses, the result should be 4 lines with the value 3 in each of them.
    Can I make Dim Address be a factless fact table in the BMM? Should I include the Dim Address in the LTS of a single logical table? Is Dim Person a bridge table??
    I hope you can help me with this one, thanks!

    I'm not sure how much info you need to show on the reports, but you can try creating 2 separate logic schemas with alias tables.
    1) Create alias table for fact and Dim Person and join them
    2) Create another alias for fact (Fact1) and Address (always thinking that the perdon ID is also in the Address table) and join them.
    Try to make your report between fact1 and address (in this case you can't put detail of the person,but you can make another report showing the persona information using the first schema.
    J.

  • Setting Primary Keys in Data Modeler

    I just created a table in Data Modeler 3 and set the Primary Key columns, but I did not see the # symbol next to the PK columns, as it is in the other tables previously created. Is there a setting that is preventing them from appearing?

    Thanks very much Phillip.
    I am wondering now if there's a way to use that browser to correct another problem I've been having:
    Sometimes I find that if I have to rename an attribute, the tool keeps a redundant,unneeded attribute in the list of attributes, typically placing a 1 or 2 after the name. I can not delete these unwanted attributes using the delete button. So how can I get rid of them? Does the browser offer a way? Thanks.

  • Calling function in data model

    Hello All,
    I am having 1 issues in a report.
    Here is what i am doing.
    I created a type of varchar2 and created a function which will return me the output of type.
    this runs fine in sqlplus but when i put the same query in data model and join another set of tables,the data model is not able to determine the output of the colums.It shoes me a question mark and not the varchar field.
    Due to this my generation to xml is failing.
    Pls help
    Thanks
    Saurabh

    TYPE CREATED.
    create or replace type str2tblType as table of varchar2(4000);
    FUNCTION CREATED.
    create or replace
    function str2tbl
    (date_from in number,date_to in number,v_inter number)
    return str2tblType
    as
    d varchar2(100);
    l_data str2tblType := str2tblType();
    v_date_from varchar2(100);
    v_date_to varchar2(100);
    begin
    v_date_from := date_from/3600;
    v_date_to := date_to/3600;
    IF INSTR(v_date_from,'.')=0 THEN
    v_date_from := v_date_from||':00';
    ELSE
    v_date_from := SUBSTR(v_date_from,1,INSTR(v_date_from,'.')-1)||':'||(v_date_from - SUBSTR(v_date_from,1,INSTR(v_date_from,'.')-1)) * 60 ;
    END IF;
    IF INSTR(v_date_to,'.')=0 THEN
    v_date_to := '0'||v_date_to||':00';
    ELSE
    v_date_to := SUBSTR(v_date_to,1,INSTR(v_date_to,'.')-1)||':'||(v_date_to - SUBSTR(v_date_to,1,INSTR(v_date_to,'.')-1)) * 60 ;
    END IF;
    d := v_date_from;
    WHILE d!=v_date_to
    loop
    l_data.extend;
    d:= to_char(to_date(d,'HH24:MI')+v_inter/60/24,'HH24:MI');
    l_data(l_data.count) :=d;
    end loop;
    return l_data;
    end;
    SELECT QUERY:
    select * from TABLE(cast( str2tbl(36000,21600,20) as str2TblType ) )

  • How to print ERD from Data Modeler Tool

    Hello Everyone,
    I have an oracle 10g DB and I want to create its ERD. I was able to export the tables using Data Modeler tools but I cannot find the option to arrange these table on pages and then print them. How can I do that? It's a very basic requirement and I am sure it must be here somewhere but I can't seem to find it.
    Regards,
    Afraz Ali

    Hi Afraz,
    there is no support for arranging tables on pages. For printing - use "File>Print" or "File>Print Diagram".
    Philip

  • Calc problem with fact table measure used as part of bridge table model

    Hi all,
    I'm experiencing problems with the calculation of a fact table measure ever since I've used it as part of a calculation in a bridge table relationship.
    In a fact table, PROJECT_FACT, I had a column (PROJECT_COST) whose default aggregate was SUM. Whenever PROJECT_COST was used with any dimension, the proper aggregation was done at the proper levels. But, not any longer. One of the relationships PROJECT_FACT has is with a dimension, called PROJECT.
    PROJECT_FACT contains details of employees and each day they worked on a PROJECT_ID. So for a particular day, employee, Joe, might have a PROJECT_COST of $80 for PROJECT_ID 123, on the next day, Joe might have $40 in PROJECT_COST for the same project.
    Dimension table, PROJECT, contains details of the project.
    A new feature was added to the software - multiple customers can now be charged for a PROJECT, where as before, only one customer was charged.
    This percentage charge break-down is in a new table - PROJECT_BRIDGE. PROJECT_BRIDGE has the PROJECT_ID, CUSTOMER_ID, BILL_PCT. BILL_PCT will always add up to 1.
    So, the bridge table might look like...
    PROJECT_ID CUSTOMER_ID BILL_PCT
    123          100     .20
    123          200     .30
    123          300     .50
    456 400 1.00
    678 400 1.00
    Where for project 123, is a breakdown for multiple customers (.20, .30. .50).
    Let's say in PROJECT_FACT, if you were to sum up all PROJECT_COST for PROJECT_ID = 123, you get $1000.
    Here are the steps I followed:
    - In the Physical layer, PROJECT_FACT has a 1:M with PROJECT_BRIDGE as does PROJECT to PROJECT_BRIDGE (a 1:M).
    PROJECT_FACT ===> PROJECT_BRIDGE <=== PROJECT
    - In the Logical layer, PROJECT has a 1:M with PROJECT_FACT.
    PROJECT ===> PROJECT_FACT
    - The fact logical table source is mapped to the bridge table, PROJECT_BRIDGE, so now it has multiple tables it maps to (PROJECT_FACT & PROJECT_BRIDGE). They are set for an INNER join.
    - I created a calculation measure, MULT_CUST_COST, using physical columns, that calculates the sum of the PROJECT_COST X the percentage amount in the bridge table. It looks like: SUM(PROJECT_FACT.PROJECT_COST * PROJECT_BRIDGE.BILL_PCT)
    - I brought MULT_CUST_COST into the Presentation layer.
    We still want the old PROJECT_COST around until it get's phased out, so it's in the Presentation layer as well.
    Let's say I had a request with only PROJECT_ID, MULT_CUST_COST (the new calculation), and PROJECT_COST (the original). I'd expect:
    PROJECT_ID MULT_CUST_COST PROJECT_COST
    123          $1000     $1000
    I am getting this for MULT_CUST_COST, however, for PROJECT_COST, it's tripling the value (possibly because there are 3 percent amounts?)...
    PROJECT_ID MULT_CUST_COST PROJECT_COST
    123          $1000 (correct)      $3000 (incorrect, it's been tripled)
    If I were to look at the SQL, it would have:
              SELECT SUM(PROJECT_COST),
    SUM(PROJECT_FACT.PROJECT_COST * PROJECT_BRIDGE.BILL_PCT),
                   PROJECT_ID
              FROM ...
              GROUP BY PROJECT_ID
    PROJECT_COST used to work correctly before modeling a bridge table.
    Any ideas on what I did wrong?
    Thanks!

    Hi
    Phew, what a long question!
    If I understand correctly I think the problem lies with your old cost measure, or rather combining that with you new one in the same request. If you think about it, your query as explained above will bring back 3 rows from the database which is why your old cost measure is being multiplied. I suspect that if you took it out of the query, your bridge table would be working properly for the new measure alone?
    I would consider migrating your historic data into the bridge table model so that you have a single type of query. For the historic data each would have a single row in the bridge with a 1.0 BILL_PCT.
    Best of luck,
    Paul
    http://total-bi.com

  • Data Modeler : Modifying the Table Report layout

    Hi ,
    I'm using SQL Data Modeler (DM) 4.0 EA .
    I used the File -> reports option to generate the reports on Table and in the report
    1) I couldn't see the column data type ? (Refer below table ) , Is there any options to bring on the Data Type in the Report ?
    No
    Column Name
    PK
    FK
    M
    Data Type
    DT
    kind
    Domain Name
    Formula
    (Default Value)
    Security
    Abbreviation
    1
    ID1
    P
    Y
    (10)
    LT
      2
    ID2
    F
    Y
    (10)
    LT
    3
    ID3
    Y
    (1)
    LT
    4
    ID4
    Y
    (10)
    LT
    5
    ID5
    F
    (20,4)
    LT
    2) In options to manage the Table report (Reports -> Manage). Currently I can only remove a heading (like Descriptions Notes ,columns,column comments.). Is there is any way to customize the report in such a way that I can remove some columns (mostly the empty ones) from the report and add the column comments along with the column table than a new column comments table.
    Please let me know  ,is there is an option to customize the report .
    Note: I even tried generating the report using the search then report , but it doesn't give a complete report (i was only able to generate a report on column or table name or constraints , not all together.)
    Thanks,
    Srinivasan.K

    Thanks for the immediate reply.
    I checked on the DM again, the report comes good for the one which has the data type . But now all my data type changed to UNKNOWN and lokks like ,due to this my table report is coming without the "Data Type".
    Can you please help me in fixing this unknown data type issue ?
    Table report for the ones with proper Data type:
    Columns
    No
    Column Name
    PK
    FK
    M
    Data Type
    DT
    kind
    Domain Name
    Formula
    (Default Value)
    Security
    Abbreviation
    1
    ID1
    Y
    NUMERIC (10)
    LT
    2
    SCRIPT
    Y
    VARCHAR (1024)
    LT
    3
    UPGRADE_S
    Y
    VARCHAR (10)
    LT
    4
    UPGRADE_D
    Y
    VARCHAR (250)
    LT
    5
    UPGRADING_F
    Y
    VARCHAR (20)
    LT
    6
    TIMESTAMP2
    Y
    Timestamp
    LT

  • Table or view does not exist - Data Dictionary Import Wizard(Data Modeler)

    Hi All,
    In Data Modeler, Data Dictionary Import Wizard, I'm able to connect to database.But while going to the second stage (Select Schema/Database), I'm getting an error "ORA-00942: table or view does not exist".
    I am able to select the table with select * from all_tables and I can open many tables as well.
    Could anyone tell me, whether I'm missing any privilege, that causing this error.
    Thanks in advance for you support.
    Thanks.

    Hi,
    Thanks for your response, sorry for my late reply as I was away from my place.
    Yes, it is showing "Connection established successfully".
    log file as below-
    2012-08-02 10:37:26,471 [main] INFO ApplicationView - Oracle SQL Developer Data Modeler 3.1.1.703
    2012-08-02 10:39:42,889 [AWT-EventQueue-0] ERROR AbstractDBMExtractionWizardImpl - java.sql.SQLSyntaxErrorException: ORA-00942: table or view does not exist
    Pls see oracle version details-
    Oracle Database 11g Enterprise Edition
    11.1.0.6.0
    64bit Production
    Thanks again and waiting for reply.

  • PowerPivot removed table replicated into the data model on refresh

    Hey
    I am facing the following problem which is absolutely persistent and annoying in nature. I am using a data model created with PowerPivot with connections to three different SQL servers and 25 tables. The bug is that every time I refresh my data, a table
    that was initially added to the data model (and later removed) is replicated in equivalent number of tables that use this connection, which is currently around 12 tables, so I get 12 duplicates of the same unnecessary table on every refresh, named with the
    name of the schema on the SQL server that is followed by a running number. Removing these from the data model on every refresh simply takes too much time on a daily basis. The additional undesired table which is created is what is defined in the SQL query
    of the connection string of this connection.
    I tried to solve this problem by zipping the Excel file and modifying this SQL statement present in the connection string in the connections.xml file in a way that it would not return anything, but this always leads into a corrupted workbook.
    After encountering this I have managed to avoid this problem by making sure that the initial table I'm adding to the data model will remain in the model, but I really don't want to rebuild this current model. Is there any fix for this issue without
    rebuilding the data model?
    Thanks for all the help in advance!

    I am using 64-bit Office 2013 with the recent SP1 upgrade and the included PowerPivot plug-in on a Windows 8.1 machine.
    I always create the connection by using "From SQL server" then fill in the server and log in details and use a ready SQL statement that I have written by using SQL Server Management Studio to import the initial table. For all the preceding tables
    using the same server and schema, I always select it from existing connections and just paste the SQL queries required for any additional tables to the "Write a query that will specify the data to import", rather than using the table import tool.
    I am not sure if it could have any effect that I've been using the type connection "From SQL server" although the database is really running on Azure (there is a possibility to select From Other sources > Microsoft SQL Azure, but the functionality
    seems the same).
    I don't really understand what I should edit from the existing connections section. Just to clarify, apparently the Connection String parameters can be edited from PowerPivot, but not the Command Text which can be viewed from Excel Data > Connections
    > Properties, but is shown in gray with a message "Some properties cannot be changed because this connection was modified using the PowerPivot add-in."
    In the data model I am using two sets of identical tables, but connected to two different servers that are running a database 1:1 in structure. Initially the problem considered only the other of these, but I accidentally reproduced it by, again, editing
    the SQL query in the table that was initially imported when that connection was created (PowerPivot > Design > Table Properties). Now when refreshing I get tables that are structured as in what the "Connection Text" part of the connection would
    produce, which replicated for the equivalent amount of additional tables using the same connection, so now I'm getting 12 tables (the number of tables using the same connection) each named "*schemaname1* Query", "*schemaname1* Query2",
    "*schemaname1* Query3" "*schemaname2* Query" and so on.
    Personally I can definitely see a pattern here. If there isn't a table matching what has been specified in the "Command Text" that was described when the connection was created, then it for some reason runs this query anyway on every table that
    is using the connection.

  • Store value in data model without showing it in table

    Hi,
    How can I store something in my table model without showing it in my table? I have an arraylist which contains a list of my own data objects. I have my own table model like
    public class MyTableModel extends AbstractTableModel {
                  public Object getValueAt(int row, int col) {
                   TableDataObject tdo  = (TableDataObject) data.get(row);
                   switch(col) {
                        case 0:
                             return tdo.getFoo();
                                     default:
                                             break;
    }my "hidden" value is stored in the data list...but I have to get the hidden value from my table model, not from my arraylist.

    Nothing to it, but to do it:
    import java.awt.*;
    import javax.swing.*;
    import javax.swing.table.*;
    public class ColumnModelExample {
        public static void main(String[] args) {
            Object[] columnNames = {"hidden", "column 1", "column 2"};
            Object[][] rowData = {
                {"hidden 0","row 0, col 1","row 0, col 2"},
                {"hidden 1","row 1, col 1","row 1, col 2"},
            TableModel model = new DefaultTableModel(rowData, columnNames);
            JTable table = new JTable(model);
            TableColumnModel columnModel = table.getColumnModel();
            columnModel.removeColumn(columnModel.getColumn(0));
            JFrame f = new JFrame("ColumnModelExample");
            f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            f.getContentPane().add(new JScrollPane(table));
            f.pack();
            f.setLocationRelativeTo(null);
            f.setVisible(true);
    }One typical use of this is for displaying the records of a database table, where you don't want to
    show the user a sequence column which would only confuse the user...

Maybe you are looking for

  • Billing doc doubts

    Hi Experts, I just need to clarify my understanding for the following about what system does when billing doc is created: 1. DR posting on customer's Receivables Account : this account means the receivable account of the company that records which cu

  • DBAT error while creating a connector

    Hi, I have installed OIM (and patched it to version *9.1.0.2* , build 1866.24) and newest version of Database Application Tables Connector (DBAT *9.1.0.3* ). When I try to create a provisioning connector, after specyfying connection parameters, table

  • Excise JV - How to post to Excise Duty Payable

    Hi In my scenario, we have charged less amount to customer at the time of sales. For ex: Sales order was prepared for Rs.10000 and relevant excise duty was (@ 10% was charged). We did delivery and billing. We issued excise invoice as per Rs.10000 and

  • I try to archive catalog using Catalog Manager but option is disabled

    I try to archive catalogue using catalogue manager but option is disabled even i check rights to archive catalogue. pl suggest, what should i do? i want to archive from one instance and try to unarchive in other server, is it possible to use this rem

  • I have a HP wireless printer, and im trying to connected to my macbook pro. But will not connect..

    I have a HP wireless printer, and im trying to connected to my macbook pro. But will not connect..