Condividi tramite


ParallelPeriod (MDX)

Restituisce un membro di un periodo precedente nella stessa posizione relativa del membro specificato.

Sintassi

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

Argomenti

  • Level_Expression
    Espressione MDX (Multidimensional Expression) valida che restituisce un livello.

  • Index
    Espressione numerica valida che specifica il numero di periodi paralleli per l'intervallo.

  • Member_Expression
    Espressione MDX (Multidimensional Expression) valida che restituisce un membro.

Osservazioni

ParallelPeriod è simile alla funzione Cousin ma è più strettamente correlata alle serie temporali. La funzione ParallelPeriod recupera il predecessore del membro specificato al livello specificato, individua l'elemento di pari livello del predecessore con l'intervallo specificato e infine restituisce il periodo parallelo del membro specificato tra i discendenti dell'elemento di pari livello.

La funzione ParallelPeriod utilizza le impostazioni predefinite seguenti:

  • Se non viene specificata un'espressione di livello né un'espressione di membro, il valore del membro predefinito corrisponde al membro corrente della dimensione di tipo temporale (Time.CurrentMember).

  • Se viene specificata un'espressione di livello, ma non viene specificata un'espressione di membro, il valore del membro predefinito corrisponde a Level_Expression.Hierarchy.CurrentMember.

  • Il valore di indice predefinito è 1.

  • Il livello predefinito è il livello dell'elemento padre del membro specificato.

La funzione ParallelPeriod è equivalente all'istruzione MDX seguente:

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

Esempio

Nell'esempio seguente viene restituito il periodo parallelo per il mese di ottobre 2003 con un intervallo di tre periodi, in base al livello trimestre. Viene così restituito il mese di gennaio 2003.

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

Nell'esempio seguente viene restituito il periodo parallelo per il mese di ottobre 2003 con un intervallo di tre periodi, in base al livello semestre. Viene così restituito il mese di aprile 2002.

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