I think that the following link may be useful for you: {url=http://support.businessobjects.com/documentation/installation_resources/5i/tips_and_tricks/pdf/universe_design/ut001.pdf]see here[/url]
Hi Raj Alias and context are to be used depending upon the loop you encounter. Do let us know if you are struck anywhere in resolving the loops. The best way of designing a universe is keep you Logical Data Model with you and go accordingly.
I feel the best way of designing a universe is inserting one fact table at a time.
Insert one fact table and related dimension tables to that fact table.
Create all the joins.
Check for loops.
See if it can be resolved with an alias.
Create context. Make sure a context doesnt have any loops
Keep in mind that there are context issues in a universe that are not related to loops… a fan or chasm trap does not always include a loop, yet they require contexts, aliases, or a combination to solve.
A chasm trap is a many - one - many chain of tables. You need to use contexts to separate the two ends of that chain, as you cannot get a valid answer by using all three at the same time.
A fan trap is a one - many - many relationship with measures at all levels. You must separate out the measures from the dimension tables using aliases, then use contexts to resolve the resulting chasm traps.
Thank you all for helping me , I have another doubt , Is there any other purpose of setting cardinalities other than for resolving loops. Does the setting of cardinalities effect the report?
Yes, but only where you have the “Multiple SQL Statements for each Measure” turned on, and then only when you have measures spanning a fan trap. In that case you should see seperate sql statements for each measure.
Cardinalities are also used by the detection options, such as the “Detect Contexts” and “Detect Aliases” options.
It helps for support and further design.
You can see which way hierarchies are ordered.
I’m sure you’d appreciate cardinalities being set on any universes that you take over the maintenance and development of; it helps you to understand how the data is structured and identify any potential fan traps.
Welcome to BOB, if the loop has multiple fact tables, use contexts to resolve it and if it doesn’t then you can go for aliases. Aliases are not appropriate in situations where there are multiple fact tables.
They might not be appropriate as a loop-resolution mechanism, but it doesn’t follow that you can never us aliases in a universe with multiple facts. I don’t expect that is what you were trying to say, but thought I would clarify anyway.
I concur with Dave…
You really don’t want fan and prism traps in your universe.
You may need both aliases AND contexts to solve your issue. If it is too complex, use separate universes and link them together if this means it’s easier for you to understand.
But linked universes also has it’s own problem in terms of maintanence down the track…
Hi. I am relatively new to Business Objects and have been putting together some universes for our use. Most things I can accomplish well enough. However, I’ve run into an issue that I think fits within this topic.
I’ve got several related tables and I’m looking for the best way to construct the universe to support our queries. The best way to describe them is to say that the database has a table of Person records, and a table of Relationships. One Person may be related to another Person in a number of ways (sibling, spouse, parent, etc).
This can be pictured as
Person Relationship
ID ----< PersonID
-----< RelatedPersonID
or
Person1 —< Relationship >— Person2
where Person1 and Person2 really both point to the same physical table. I believe these tend to lend themselves to Aliases. However, each Person table really has a number of subordinate records in tables (addresses, phone numbers, etc).
While this can be done (and I’ve done so), it’s difficult to explain to some analysts why this construct is needed in the universe in order to answer a question like:
Give me all of Bob’s Siblings, their ages, and their addresses.
This is a simplification, as our structures actually include other types of Entities (Person, Business, Government, Organizations), all of which can be related to one another.
Is there a way that BO Universes will support this structure?
I searched the forum and was not able to find the downs is any of using context and alias.
I know the ups but need to know the downs or dis advantages of using them.
When you use aliases you are required to create additional objects that reference the copied tables. But once you’ve done that, you’re essentially done. When you introduce contexts to your universe the steps required to maintain the universe become longer. Every time you add a new table or join you have to consider which of the contexts should include that join. If not properly designed contexts can make the universe more confusing to users as they could get prompted to select one.
But in my opinion it’s a small price to pay for the power and flexibility that they (contexts) provide. An alternative to contexts is, of course, to create separate universes, and that’s going to generate even more work.
No, it doesn’t. It means you have two different sets of joins. It is commonly stated that you need a context for each fact table, but that’s a very simplified explanation.
Yes, if you use separate queries, or enable the “Multiple SQL For each Context” setting.