MDX - calculate member on dimension

MDX - calculate member on dimension

Post by Shmulik Sitto » Thu, 22 Jun 2000 04:00:00



Hi all

Can I create a calculate member on dimension that has 1 level
and the level children are selected with Where function from
another dimension ?

For example:

In my cube there is 2 dimensions the first is Region   and the
second dimension is dealers so, when I choose Region X on
the Region dimension I wish to get only the list of all
dealers from Region X  on the dealers dimension.

If so can anyone send me the MDX example?

ThanX

Got questions?  Get answers over the phone at Keen.com.
Up to 100 minutes free!
http://www.keen.com

 
 
 

MDX - calculate member on dimension

Post by Sean Boo » Fri, 23 Jun 2000 04:00:00


Have you thought about putting Region and Dealers on the same dimension.
-Region
--Dealers

Otherwise you can do a crossjoin and use the nonempty clause in MDX when
displaying the rsults.

Sean


Quote:> Hi all.

> Can I create a calculate member on dimension that has 1 level
> and the level children are selected with Where function from
> another dimension ?

> For example:

> In my cube there is 2 dimensions the first is "Region"   and the
> second dimension is "dealers" so, when I choose Region "X" on
> the "Region" dimension I wish to get only the list of all
> dealers from Region "X"  on the "dealers" dimension.

> If so can anyone send me the MDX example.?

> ThanX

> Got questions?  Get answers over the phone at Keen.com.
> Up to 100 minutes free!
> http://www.keen.com


 
 
 

MDX - calculate member on dimension

Post by Shmulik Sitto » Sat, 24 Jun 2000 04:00:00


Hi Sean ...

Yes, I though about putting Region and Dealers on the same
dimension but for some resones I drop this idea.

Can you send me an exsample of how to use the crossjoin to get
this results ???

I will appraiser any help...

Shmulik

Got questions?  Get answers over the phone at Keen.com.
Up to 100 minutes free!
http://www.keen.com

 
 
 

1. Creating an MDX Calculated Member as an Average over Time Dimension

Hello:

I'm currently working on a retail cube solution, and I'm stuck with the
Average Stock indicator.

The indicator works thus:

a) The following applies for the Store N1, Product N 1,
for the first three days of a given week:

On Monday, Stock = 4
On Tuesday, Stock = 6
On Wednesday, Stock = 8

For the three days, the Average Stock for Store N1, Product N 1,
= 6 = (4+6+8) / Distinct Number of Days = 18 / 3

b) Now, the following applies for the Store N2, Product N 1,
for the first three days of a given week:

On Monday, Stock = 6
On Tuesday, Stock = 8
On Wednesday, Stock = 13

For the three days, the Average Stock for Store N2, Product N 1,
= 9 = (6+8+13) / Distinct Number of Days = 27 / 3

c) Finallly, considering both Store N1 and Store N2, for Product N 1,

On Monday, Stock = 10
On Tuesday, Stock = 14
On Wednesday, Stock = 21

So, for the three days, the Average for Store N1 and Store N2, Product
N 1,
= 15 = (10+14+21) / Distinct Number of Days = 45 / 3

As you can see, this is a rather complex indicator, that for any given
period (a specific day, week, month, etc) is the SUM() of its individual
members values, but across a number of days, you have to divide by the
disticnt
number of days.

In fact, the formula

[Average Stock] = Iif([Time].CurrentMember.Children.Count = 0 ,
[Measures].[Stock],
[Measures].[Stock]/[Measures].[Distinct Days])

does gives the required results, having the primitive Measures defined as:

[Stock]= SUM("dbo"."FT"."Stock")
[Distinct Days] = Distinct(Count("dbo"."FT"."Date"))

The problem with this approach is that if you try to display this data
on EXCEL (with Pivot Table Service) and you select a subset of values of
the
[Time] dimension (like Monday and Wednesday, excluding Tuesday), the
[Distinct Days] indicator gets undefined and so does the [Average Stock]
calulated Member.

On the other hand, you can try the following formula:

[Average Stock] = AVG(
{
Descendants([Time].CurrentMember,
[Time].Levels.Count-[Time].CurrentMember.Level.Ordinal,
LEAVES)
[Measures].[Stock]
)

It works exactly as the "Distinct Days" approach, but if you select a
subset of values
of the [Time] dimension (like Monday and Wednesday, excluding Tuesday), the
[Average Stock] member isn't undefined, but it doesn't reflect de selected
days data;
it reflects the data of the three days, ignoring the days excluded.

Both approaches behave exactly the same, wether you select a subset of
days, weeks,
months, years or whatever hierarchy levels you define for the [Time]
dimension.
One goes undefined, the other ignores your selection.

If anyone has any clue whatsoever at some way to solve this problem,
please e-mail
me back through the newsgroup or through my e-mail account.

Thanks in advance,

Sebastian Armas.

2. Opinions on Codebase?

3. thegolfspot.com

4. The Marketing Warehouse

5. MDX-syntax to check which time dimension to use in a calculated member

6. Error -952 on console screen of Informix SE

7. Urgetn MDX question - Calculated measure depends on another dimension members

8. Major MDX problems with Calculated member (this is a good test for MDX)

9. MDX - Member properties in a calculated member

10. Analysis Services, Dimension Member ordering, Calculated Members

11. Adding Calculated Member to a Parent Member in the dimension through code