If you are unable to create a new account, please email support@bspsoftware.com

 

News:

MetaManager - Administrative Tools for IBM Cognos
Pricing starting at $2,100
Download Now    Learn More

Main Menu

Cognos model question

Started by magicksol13, 20 Jul 2016 08:41:06 AM

Previous topic - Next topic

magicksol13

Hi to all in here.

I'm new in this forum but i already looked at some posts in here related to framework manager issues and also surfed a little other forums and google. I read a little about
loop joins and the creation of ALIAS shortcuts. I am also aware thay it is often the case that we have 3 layers in a cognos model:
DatabaseLayer, Modeller Layer (Where we usually create new query subjects for example or rename our query items etc...) and Presentation Layer (only shortcuts to modeller view query subjects). It is also the cas where i work.   :)

I still have some questions regarding "loop" joins in framework manager an hope to have some valuable tips and advices in here.

- First, when running the context explorer of Dimension#2 we see the following joins between the tables it is joined to
( i don't show the 2 other tables that Dimension#2 is linked to
here but instead decided to only show the area i beleive we are facing a LOOP join
)
Fact(1..n)---(0..1)Dimension#1(1..n)---(1..1)Dimension#2

- So Dimension#2 is linked to TableZ1 and TableZ2 just to let you know but id di not bother showing it here

- The Database Admin and analyst at our company decided that we should add another link between table [Fact] and table Dimension#2
so we applied it in our Database Layer as follows:
Fact(1..n)---(0..1)Dimension#1(1..n)---(1..1)Dimension#2(0..1)---(1..n)Fact

- This is the loop join we are now dealing with

----------
----------
QUESTIONS:
A) I saw that the model i inherited already have 2 or existing loops between other tables not really related with this demand (first impression) so my fisrt question is:
DO WE ALWAYS NEED TO GET RID OF LOOP JOINS IN OUR COGNOS FRAMEWORK MANAGER MODEL ?

B) If we need to get rid of loop joins, then i will begin by getting rid of the one i'm assigned with. I mean the one created by me after the data admin/analyst's demand. Which
brings me to this other questions: HOW DO ANY OF YOU SUGGEST I GET RID OF THIS LOOP JOIN ? Do we need to simply:
1- Delete the newly created join between [Fact] and table Dimension#2 that has created our loop join in our Database Layer ?

2- Then do we simply create an ALIAS SHORTCUT of Dimension#2 and link it to the [Fact] table so that we end up with the following joins ?
Fact(1..n)---(0..1)Dimension#1(1..n)---(1..1)Dimension#2
Fact(1..n)---(0..1)Dimension#2

3- Do we need to recreate all other joins for our our newly created ALIAS SHORTCUT ? I mean because this alias shortcut comes from Dimension#2 and that this dimension table is also linked
to TableZ1 and TableZ2 as mentionned at the beggining of this post. Or no need for that as for the shortcut implies that it inherits all other joins that Dimension#2 might already have ?

C) How do i represent this in our Modeller View (the 2nd layer of our model) ?

AnalyticsWithJay

A) You don't always have to get rid of loop joins. Cognos is able to automatically resolve loop joins IF the cardinality clearly distinguishes facts from dimensions. The example you referenced below is an example where it's not clear (1..n on dimension).

B) This depends on your model, but if your dimensions represent a hierarchy, you could collapse the dimensions into a new query subject, and connect the fact to that new query subject.

2) No, not a good approach.

3) See #2.