Hi Kamel,
Here's a high-level approach in AS 2005, based on my understanding of
your scenario:
- Create 4 cube time dimensions: General, Created, Accepted and
Completed, based on a single dimension playing multiple roles. [General
Time] does not directly relate to a Measure Group, but is for
analysis/reporting purposes.
- [OrderCount] is a cube measure with "Count" aggregation on order_id,
then there are 3 calculated measures:
[Measures].[CreatedCount]:
Quote:
|
([Measures].[OrderCount],
|
LinkMember([General Time].[Time].CurrentMember,
[CreatedTime].[Time]))
[Measures].[AcceptedCount]:
Quote:
|
([Measures].[OrderCount],
|
LinkMember([General Time].[Time].CurrentMember,
[AcceptedTime].[Time]))
[Measures].[CompletedCount]:
Quote:
|
([Measures].[OrderCount],
|
LinkMember([General Time].[Time].CurrentMember,
[CompletedTime].[Time]))
- The MDX query with desired layout will look like:
Quote:
|
select [CreatedTime].[Time].[Day].Members on 0,
|
CrossJoin([GeneralTime].[Time].[Day].Members,
{[Measures].[CreatedCount],
[Measures].[AcceptedCount],
[Measures].[CompletedCount]}) on 1
from [OrderCube]
- Deepak
Deepak Puri
Microsoft MVP - SQL Server
*** Sent via Developersdex http://www.developersdex.com ***