BusinessObjects Board

superfluous aggregations

Hi all,

In my universe I’m displaying some discrete measure for my Employee, namely the salary. Now I have another table EmployeeActivities with a FK to Employee. The relationships are as follows:
Employees:1–>N:EmployeeActivities
Moreover I have following objects in my universe
Emp_ID=Employees.ID
Emp_salary=Employees.salary [b](whereas the aggregation is defined as sum)
/b]Emp_activity=EmployeeActivities.Name

The problem is that whenever I add these 3 objects to a report.
The Emp_salary is aggregated per emp_activities, however when I display a table {EMP_ID, EMP_SALARY} I want to see correct results for the salary.

What’s the most efficient way to solve this? I think I can solve this with an extra universe context, but as I display plenty more detailsfrom separate employee table, I only get trouble when the Emp_salary table is involved, so performance is very important.

thanks a lot for your quick response.


keizersoz (BOB member since 2005-12-14)

What you have described is a chasm trap.


Dave Rathbun :us: (BOB member since 2002-06-06)

Sounds like a typical fan trap to me (Fact >— EmployeeMaster –< EmployeeActivities).


Andreas :de: (BOB member since 2002-06-20)

Andreas,

A fan is one -< many -< many
A chasm is many >- one -< many

But you knew that :wink:


Dave Rathbun :us: (BOB member since 2002-06-06)

Hi Dave, I always consider the fact table the “driver”, and then I see:

Fact –< Dimension,

which to me is a fan trap.


A chasm trap to me is:

Fact1 >-- Dimension --< Fact2

Regardless of the terminology, the solution is clear :wink:


Andreas :de: (BOB member since 2002-06-20)

Hi,

thanks all for your reply. However I don’t see any chasm or fan traps here. my relations are: 1<->1–>N
Employee_details(various single tables):1<–1:Employees:1–>N: Employee_activites

Actually what I try to achieve is the following, depending of the available objects, I want to enforce an addtional query.
So whenever I combine the objects {(Emp Salary), (Emp activity}
I want (emp salary) to be generated by a separate query.

So if I have a report with the following objects {(Emp ID),(Emp Ref),(Emp Salary)} I want BO to calculate this in 1 query
However when I would have the objects {(Emp ID),(Emp Ref),(Emp Salary), ((Emp activ) } I want BO to calculate
the (Emp Salary) in a separate query.

Can I achieve this through aggregate_aware/aggregate_navigation? To my understanding this is something else than
a fan, chasm trap. However I haven’t been able to solve this with aggregate aware (in BO 6.5)

thank so much for your feedback


keizersoz (BOB member since 2005-12-14)

You’re right… I went back and reread the original post more closely. But at the same time, look at the diagram you posted. :wink:

That is in itself a chasm trap, is it not? It doesn’t matter what the tables are or what their roles are, if you have many >- one -< many you have a chasm.

Back to the original question… if the salary is coming from the employee table, and there are many activities in the “activities” table, then you do in fact (as Andreas correctly identified) have a fan trap. One way to solve it is to create an alias of your employees table and join it back to the employees table, then adjust your salary measure so that it comes from the new alias, and finally set up contexts to handle the chasm trap :wink: that was created by the new alias.

In my defense, I thought the salary was coming from a child table just like activities, therefore I suggested that it was a chasm trap.


Dave Rathbun :us: (BOB member since 2002-06-06)