BusinessObjects Board

Chasm Trap / Fan Trap

Hi,

I did some search on this topic, but i couldn’t resolve the below issue.
Attached is the screenshot for the same.

Please help me here.
Fan Trap_Chasm Trap.png


yourajai :india: (BOB member since 2011-03-09)

What you have is many to many relations between tables.
You should model your DB in such a way that there should not be such many to many relations.
But in real life such relations can’t be avoided, for instance author and book relation.
But you can use junction table or bridge table to get one to many relation.

Search bridge table on this forum or read following blog to get more idea about it.
http://blog.oaktonsoftware.com/2011/04/bridge-tables-and-many-to-many.html

Thanks,
Raghvendra


Raghvendra Deshpande :india: (BOB member since 2008-05-26)

Hi Raghvendra,

Thanks for quick reply.

Infact, I have seen your previous post for the same problem.

  1. Do you want me to create the bridge table at DB?
  2. Is there any work around in Business Objects Desginer? Why because, if i do the Integrity checking… It is giving NO Error. As you know the Traps can’t be identified by BO, it should be identified by visually.

If possible, Please suggest me with some links where i can see the step by step procedure for Fan and Chasm Trap resolution.

It would be great, if you can help me here.

Thanks in advance.


yourajai :india: (BOB member since 2011-03-09)

Integrity check won’t give any error as it doesn’t matter what cardinality you have in order to generate SQL.
Read following blog to understand and resolve traps:
http://www.dagira.com/category/design/fan-chasm-trap/

And as far as bridge table is concerned, it would be good if you could create bridge table in DB but not sure whether you have access to change the DB design.
You can get rid of problems caused by N-N relations if you could add filters in where clause in such a way that there would be 1-N cardinality finally. I use it often in my design.

Let me give you an example:
-Assume two tables Language and Country.
-In language table you have 5 rows, one for every every language that you use in your business.
-In country table you have 4 rows for a single country.
-Now there is N-N relation between these two tables.
-If you try to join, you’d get 5*4=20 rows.
-If you restrict Language table to one language only and if you join it with country table, you get 4 rows only. So relation became 1-N.

After you get 1-N cardinality, look at your design and see if you have any traps.

Thanks,
Raghvendra


Raghvendra Deshpande :india: (BOB member since 2008-05-26)

Hi,

There are Designer’s FAQ that can help:
Fan trap: FAQ: Designer
Chasm trap: FAQ: Designer


Marek Chladny :slovakia: (BOB member since 2003-11-27)

Thank you Raghvendra!!!


yourajai :india: (BOB member since 2011-03-09)