Compartilhar via


Função ParallelPeriod (MDX)

Retorna um membro de um período anterior na mesma posição relativa como um membro especificado.

Sintaxe

ParallelPeriod( [ Level_Expression [ ,Index [ , Member_Expression ] ] ] )

Argumentos

  • Level_Expression
    Uma linguagem MDX válida que retorna um nível.

  • Index
    Uma expressão numérica válida que especifica o número de períodos paralelos a serem atrasados.

  • Member_Expression
    Uma linguagem MDX válida que retorna um membro.

Comentários

Embora seja similar à função Cousin, a função ParallelPeriod tem uma relação maior com séries de tempo. A função ParallelPeriod aproveita o ancestral do membro especificado no nível especificado, encontra o irmão do ancestral com o atraso especificado e, finalmente, retorna o período paralelo do membro especificado entre os descendentes do irmão.

A função ParallelPeriod tem os seguintes padrões:

  • Se nem a expressão de nível nem uma expressão de membro for especificada, o valor de membro padrão será o membro atual da primeira hierarquia na primeira dimensão com um tipo de Time no grupo de medidas.

  • Se uma expressão de nível for especificada, mas uma expressão de membro não for, o valor do membro padrão será Level_Expression.Hierarchy.CurrentMember.

  • O valor de índice padrão é 1.

  • O nível padrão é o nível do pai do membro especificado.

A função ParallelPeriod é equivalente à instrução MDX a seguir:

Cousin(Member_Expression, Ancestor(Member_Expression, Level_Expression) .Lag(Numeric_Expression))

Exemplo

O exemplo a seguir retorna o período paralelo para o mês de outubro de 2003 com um atraso de três períodos, com base no nível do trimestre, que retorna o mês de janeiro de 2003.

SELECT ParallelPeriod ([Date].[Calendar].[Calendar Quarter]
   , 3
   , [Date].[Calendar].[Month].[October 2003])
   ON 0
   FROM [Adventure Works]

O exemplo a seguir retorna o período paralelo para o mês de outubro de 2003 com um atraso de três períodos, com base no nível do semestre, que retorna o mês de abril de 2002.

SELECT ParallelPeriod ([Date].[Calendar].[Calendar Semester]
   , 3
   , [Date].[Calendar].[Month].[October 2003])
   ON 0
   FROM [Adventure Works]

Consulte também

Referência