Torres, bom dia.
A idéia da consulta mdx é criar membros com os períodos acumulados. Segue o exemplo:
WITH
MEMBER [Measures].[Janeiro]
AS
SUM( Data.&[2012-01-01T00:00:00]:Data.&[2012-01-31T00:00:00],
[Measures].[Valor]
MEMBER [Measures].[Fevereiro]
AS
SUM( Data.&[2012-02-01T00:00:00]:Data.&[2012-02-29T00:00:00],
[Measures].[Valor]
MEMBER [Measures].[Marco]
AS
SUM( Data.&[2012-03-01T00:00:00]:Data.&[2012-03-31T00:00:00],
[Measures].[Valor]
MEMBER [Measures].[Janeiro+Fevereiro]
AS
SUM( Data.&[2012-01-01T00:00:00]:Data.&[2012-02-29T00:00:00],
[Measures].[Valor]
MEMBER [Measures].[Janeiro+Fevereiro+Marco]
AS
SUM( Data.&[2012-01-01T00:00:00]:Data.&[2012-03-31T00:00:00],
[Measures].[Valor]
SELECT NON EMPTY {
[Measures].[Janeiro],
[Measures].[Fevereiro],
[Measures].[Marco],
[Measures].[Janeiro+Fevereiro],
[Measures].[Janeiro+Fevereiro+Marco]
}
ON COLUMNS
FROM [Cubo]
Eduardo Gomes - http://www.h1solucoes.com.br - Twitter: @edugp_sp