BusinessObjects Board

Finding Fan & Chasm Traps

Hi BO Gurus,

Can anyone please let me know how to find the whether there is Fan or Chasm Trap and Multipled Aggregation.

Thanks in Advance
Madhuri


madhum1078 (BOB member since 2007-07-20)

FanTrap

A Fan Trap is a one many - many relationship.
This would happen if you are using a Summary and a Detail table in one query. Fan Traps can cause numbers to multiply.
Business Objects resolves this transparently by using 2 queries.It is resolved automatically as long as the measure objects have aggregrate functions that means, (query will split in 2).
Also, you just need to make sure the Multiple SQL Statements for Each Measure box is checked in Designer. File -> Parameters->SQL-> Check “Multiple SQL Statements for each measure”

Another way to solve this problem is,

1.Create an alias for the table (Original table) that is producing multiplied aggregation
2.Create a one to one join between the alias table and the original table
3.Build the object that is causing the aggregation on the alias tables
4.Define a context for a original table and a context for the alias table
5.File -> Parameters->SQL-> Check “Multiple SQL Statements for each measure”
6.Modify the select statement for the columns that are summed so that the columns in the alias table are summed and not the columns in the original table

Chasm Trap

A chasm Trap is a one many - one relationship.
This would happen when two “many to one” joins converge on a single table. You will get incorrect results when the following circumstances exist:

A “many to one to many relationship” exists among three tables in the universe structure. The query includes objects based on two tables both at the “many” end of their respective joins. There are multiple rows returned for a single dimension.

One way to resolve a Chasm Trap use Designer to define a context for each table at the “many” end of the joins. This creates two SQL statements and two separate tables in Business Objects.

Another way to resolve a Chasm Trap is in Designer select the option Multiple SQL Statements for Each Measure from the Universe Parameters dialog box. (This is a default setting). Only applies to measures. You force the SQL generation engine in Reporter to generate SQL queries for each measure that appears in the Query panel. You cannot use this solution to generate multiple SQL statements for dimensions.

If some one else has more detailed information, please share.

Thanks,

John


JohnJustus :us: (BOB member since 2007-06-25)

Hi,
There is one PDF document provided by BO, on the traps at this link
Trap Document. Select the first link
Draw the diagram of the join as it is seen in the BO designer andsee if there is any fan/chasm trap or not. You should set teh display as the arity in the Tool->Options–> Graphics.

Hope this helps you.


Omkar Paranjpe :us: (BOB member since 2006-02-13)

Hi,

I came to know that there is a fan trap in my universe:

Table A --< Table B --< Table C

Can you please let me know for which table do I need to create the alias and how to find the Multipled Aggregation.

Thanks
Madhuri


madhum1078 (BOB member since 2007-07-20)

Hi,

Please do read What is a fan trap, why is it a problem, and how do I resolve it? entry in Designer’s FAQ that is a sticky topic in Semantic Layer / Universe Designer forum.


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

John

why we have to check “Multiple SQL Statements for each measure” ? Defining contexts will split the query, in this case “Multiple SQL Statements for each measure” is redundant. Correct me if I am wrong.


Marfi :poland: (BOB member since 2006-12-18)