BusinessObjects Board

chasm Trap problem

Hello

I have discovered lately that I have a chasm trap in my universe. As it is recommended, I used a context for each side of the chasm trap.

The problem is resolved and the amounts are appearing correctly. The prblem is, once I added the two contexts, Web Intelligence is no more accepting some objects from conext one to be added in the same bloc with objects from context two.

Here is how each context is set:

Context1:
Matter 1-many players many-1 entities

Context2 :

Matter 1-many MatterInvoice 1-1 Invoice

Can any one help :oops:


zizou :tunisia: (BOB member since 2008-07-31)

Assuming you have multiple data providers, did you merge the dimensions?


zack :us: (BOB member since 2007-08-02)

Turn your unsynchronized dimensions into details (report variables) associated to the linked dimension.


SteveBickerton :canada: (BOB member since 2002-08-15)

Hello,

actually, the synchronisation is made by the universe as it merge between context1 and contxt2 automatically every time we shoose two objects from the two contexts. So always there are only one query that is created.

Regards,


zizou :tunisia: (BOB member since 2008-07-31)

You have fixed the problem, and now you want to break it again? :slight_smile:

When you have a chasm trap you need to fix it. Once you fix it, you can safely use measure objects from either side of the chasm trap without issues. However, dimensions on either side of the chasm trap (as opposed to those that might be shared by the “central” table) cannot be put together as they have no valid relationship.


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

Hi dave

Let me explain the data and you will maybe find that it is normal that we want to associate mesures from context2 to objects from context1:

I have matters. Every matter have it’s invoices and it’s players. a Matter have about 4 players every time but he can have so many invoices. Let say that, for one matte, the invoice amount is 3000$ so normally the user would like to see a line like this:

Matter | 3000$

Now he would like to see something like this:

Matter | Player1 | 3000
Matter | Player2 | 3000
Matter | Player3 | 3000
Matter | Player4 | 3000
sum for the matter |3000

the problem is that without contexts this is the info that he will see if he bring the players in the query:

Matter | 12000$

using the players object in the bloc:

Matter | Player1 | 3000
Matter | Player2 | 3000
Matter | Player3 | 3000
Matter | Player4 | 3000
sum for the matter |12000

I then introduced a context for each side and I m getting what I need.

The problem that I m facing now is that ,if I add any other object (invoice currency for example), Web Intelligence will not accept to put this new object in the bloc an will say that they are incompatible.

What do you think.

Regards,


zizou :tunisia: (BOB member since 2008-07-31)

So the chasm trap looks like this:

invoice >- matter -< player

A matter can have multiple invoices, and a matter can have multiple players. Do I have that right?

Assuming I do, what do you expect to see with this data? I have a single “matter” which has three invoices and two players. Invoice 1 is for player 1, and invoices 2 and 3 are for player 2. Invoice 1 and 2 are in US Dollars and invoice 3 is in Euros. Now show me how you are going to correctly summarize that data in a way that makes sense. :slight_smile:

Currency type is only associated with an invoice, and therefore has no relationship to the player. That’s why you’re not able to bring the two together.


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

Your explanation is right but Invoices are related to matter(that’s the reason I link then to matter)and not to players.

Any one would like to see something like this:

matter | Player1 | 3000 | USD
matter | Player2 | 3000 | USD
matter | Player3 | 3000 | USD
matter | Player4 | 3000 | USD

Regards,


zizou :tunisia: (BOB member since 2008-07-31)

I know invoices are linked to matters. :slight_smile: You missed my point. What happens if you have multiple invoices with different currency types for the same matter? How will you pick which one to show?


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

Hi Dave

Thank you for ur intrest. I just chowed you on example. For the example you suggested, here how it will be shown:

matter | Player1 | 3000 | USD
matter | Player2 | 3000 | USD
matter | Player3 | 3000 | USD
matter | Player4 | 3000 | USD
matter | Player1 | 4000 | CAD
matter | Player2 | 4000 | CAD
matter | Player3 | 4000 | CAD
matter | Player4 | 4000 | CAD

I don’t think it will be a problem when using multiple currencyes because each invoice have it’s currency.

Regards,


zizou :tunisia: (BOB member since 2008-07-31)

It looks like you don’t want the right answer.

$3000 for 4 rows should add up to $12000. It looks like you want to display it as $3000.

Am I hearing you correctly?

What level of granulairty is the data at?


Eileen King :us: (BOB member since 2002-07-10)

Hi

Normally the invoice amount is 3000$. so adding the matter in the bloc should keep it a 3000$. also, adding the players should give 3000$ for each row. It’s normal because ther is no relation between players and invoices. It’s between invoices and matters.

Regards,


zizou :tunisia: (BOB member since 2008-07-31)

In my opinion, what you are asking for is completely wrong, inaccurate, and misleading. :slight_smile: That being said…

You will need to go back and undo your chasm trap fix, which will then allow you to combine the dimension objects that you want to combine. Then create an alias for the invoices table. Make sure that the only objects from the alias are measures. Finally, set up one context that includes the matter, player, and original invoice table. Set up a second context that includes matters and the invoice alias table. Try that, and see if it gets you what you expect to see.

As a matter of opinion, I would never personally sign off on a universe that worked like this. It’s just wrong. It may be what is being requested, but part of the job of the universe designer is - again, in my opinion - to ensure that people get the correct answer, as opposed to the answer they think they want.


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

Let me chime in since I think I have the same problem as zizou. I also have a chasm trap in my universe. I have three tables Degree >- Alumni -< Gifts. An alum can have more than one degree, they can also have made more than one gift. If I create a separate context for each then I cannot combine dimensions from both degree and alumni with gifts data. So if I want a list of alumni gifts from alums who have an engineering degree I end up with two blocks in my report, one a list of people with engineering degrees, and another of people who have made gifts, neither of which is what I want. What I should be able to get is
Name Major Gift Amount
Bob Baylor EGR $100
Without the context the gift amount is multiplied by the number of degrees the alum has.
Am I thinking about this the wrong way?


dkolls :us: (BOB member since 2009-06-23)

Maybe you need to look at joining the queries at the report level, keeping the contexts…?


Mak 1 :uk: (BOB member since 2005-01-06)

Use a sub-query to return the alums as a unique list, then use that to return the gift amounts for those people. Does that make sense?


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

Hi you say;

I’ld say :yesnod: you ARE thinking the wrong way,
see this example;
What if Bob had another degree and another gift, then what goes where?

Name Major Gift Amount
Bob Baylor EGR $100
Bob Baylor XXX $150
Bob Baylor EGR $150
Bob Baylor XXX $100

That exactly is your chasm trap, so you end up with a cartesian product,
because you don’t know to what Major the gift amount applies!
(Rightly so, because there IS no relation)
I’m sure this is NOT what you want.

What then is valid; two blocks of data (the default like you described)
One says
Name Major
Bob Baylor EGR
Bob Baylor XXX

and the other
Name Gift Amount
Bob Baylor $100
Bob Baylor $150

Or a section on Name (the common dimension) and a block per chasm end;

Name Major Gift Amount
Bob Baylor EGR $100
XXX $150

So the Name/Bob Baylor is the section master cell,
the Table Major is positioned to the right of that
and the table Gift Amount to the right of that.
Note that the two tables are independent,
you can have as many lines in either of the tables that are needed.

I’m guessing this IS what you want.
It will total the gift amount per graduate without multiplying,
because you solved the chasm trap using contexts…

Hope this helps,
Marianne


marianne :netherlands: (BOB member since 2002-08-20)