Given this explanation:
The following example returns the set of members from the beginning of the Quarter level in the Time dimension, from the ancestor of Time.CurrentMember , through Time.CurrentMember:
Qtd()
What is the "beginning of the Quater level in the Time dimension"? What is the writer talking about? "from the ancestor of Time.CurrentMember"? What the heck! And "through Time.CurrentMember". I am going to cry and my stomach is like thousands of stupid snakes churning. Perhaps I am stupid beyond God’s save.
Let look at it this way and try hard to explain it more clearly.
Q1->month 1, month 2, month3
(Q1 is ancestor of month 1, month 2, month 3)
Q2->month 3, month 4, month 5
(Q2 is ancestor of month 3, month 4, month 5)
What I understand is that, it’s beginning from the ancestor level’s first child of Time.CurrentMember and "going through the members at the Time.CurrentMember" level to the Time.CurrentMember.
Following example:
WITH
MEMBER [Measures].[QTD Salaries] AS
'Sum(QTD(),[Org Salary])'
SELECT
{[Measures].[Org Salary] , [Measures].[QTD Salaries]} ON COLUMNS,
[Time].[Month].Members ON ROWS
FROM HR
if I am at month 2 (Time.CurrentMember), the QTD() starts from month 2’s "ancestor level’s" first child member (month 1) ; "ancestor level" of month 2 is Q1.
If I am at month 5 (now it’s the Time.CurrentMember), the QTD() starts from month 5’s "ancestor level’s" first child member (month 4) ; "ancestor member" of month 5 is Q2.
Now I understand it. It could have been explained more clearly.
Here are this and some other articles about MDX:
http://ssas-wiki.com/w/Articles#About_MDX