Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
RRaj_293
Helper I
Helper I

Data Modelling Issue (Many to Many between Fact and Dimension)

Hello , 

 

Please help with the below data modelling question-

 

I have a fact table called purchase Order and few other dimensions connected in star schema . Now I have brought in a connection to smartsheet and the columns in both the fact and smart sheet table is as shown-

 

 

Purchase Order Fact Table   
Purchase OrderLine NumberOrdered Units
ABC114
ABC125
ABC132
PQR2113
PQR2224
PQR235
PQR241
XYZ313
XYZ328
XYZ339

 

Smart Sheet Table-

Program CodeProgram NamePurchase Order
123united pgmABC1
345Exclusive pgmABC1
678Rep PgmPQR
123united pgmXYZ3
678Rep PgmXYZ3
   

 

- Purchase Order is the only common field(joining field) between both the fact and smart sheet table.

- One purchase order in Smart sheet table could belong to more than 1 program and hence can have more than one       program  code. This results in a M-M relationship as shown in table above(Multiple records of purchase order).

- In the Power BI report , Purchase order Number is used for display from Fact table and only 'Program Code' and 'Program Name' is used from Smartsheet table.

 

Problem - I tried single and bi-directional filter for the M-M relationship between these two tables they are not yielding right results. Even if I create a bridging table it would have one purchase order occuring twice because of the program codes.

 

Please advise how fix this data model issue.

1 ACCEPTED SOLUTION
Burhan_Jiru
Frequent Visitor

Hi,

try creating a bridge/factless fact table it will solve your many to many relationship problem.
if your don't know about bridge/factless fact table you can search on google that how to build one and what are the use cases of it.

 

I hope this is helpfull

thank you

View solution in original post

3 REPLIES 3
RRaj_293
Helper I
Helper I

Hi , Thank you all for responding. A bridge table did not resolve it. I went with a M-M bi-directional join and enabled the 'show items with no data' so this gave me the expected results of a left outer join by bringing in only the program codes of the Purchase order used from fact. 

lbendlin
Super User
Super User

That is not a Purchase Order Fact Table. It is a PO Line Item fact table.  Add a PO dimension table in between.

Burhan_Jiru
Frequent Visitor

Hi,

try creating a bridge/factless fact table it will solve your many to many relationship problem.
if your don't know about bridge/factless fact table you can search on google that how to build one and what are the use cases of it.

 

I hope this is helpfull

thank you

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.