Ancestors (MDX)

Función que devuelve el conjunto de todos los antecesores de un miembro especificado en un nivel especificado o a una distancia especificada del miembro. Con Analysis Services, el conjunto devuelto siempre constará de un solo miembro: Analysis Services no admite varios elementos primarios para un solo miembro.

Sintaxis

  
Level syntax  
Ancestors(Member_Expression, Level_Expression)  
  
Numeric syntax  
Ancestors(Member_Expression, Distance)  

Argumentos

Member_expression
Expresión MDX válida que devuelve un miembro.

Level_Expression
Expresión MDX válida que devuelve un nivel.

Distancia
Expresión numérica válida que especifica la distancia desde el miembro especificado.

Comentarios

Con la función Ancestors , se proporciona la función con una expresión miembro MDX y, a continuación, se proporciona una expresión MDX de un nivel antecesor de ese miembro o una expresión numérica que representa el número de niveles por encima de ese miembro. Con esta información, la función Antecesores devuelve el conjunto de miembros (que será un conjunto que consta de un miembro) en ese nivel.

Nota

Para devolver un miembro antecesor, en lugar de un conjunto antecesor, use la función Antecesor .

Si se especifica una expresión de nivel, la función Ancestors devuelve el conjunto de todos los antecesores del miembro especificado en el nivel especificado. Si el miembro especificado no se encuentra en la misma jerarquía que el nivel especificado, la función devuelve un error.

Si se especifica una distancia, la función Ancestors devuelve el conjunto de todos los miembros que son el número de pasos especificados en la jerarquía especificada por la expresión miembro. Un miembro puede especificarse como miembro de una jerarquía de atributos, una jerarquía definida por el usuario o, en algunos casos, una jerarquía de elementos primarios y secundarios. El número 1 devuelve el conjunto de miembros en el nivel primario y el número 2 devuelve el conjunto de miembros en el nivel primario de segundo nivel (si existe). El número 0 devuelve el conjunto, incluyendo únicamente al propio miembro.

Nota

Use esta forma de la función Antecesores para los casos en los que se desconoce el nivel del elemento primario o no se puede llamar.

Ejemplos

En el ejemplo siguiente se usa la función Ancestors para devolver la medida Internet Sales Amount para un miembro, su elemento primario y su abuelo. Este ejemplo utiliza expresiones de nivel para especificar los niveles que se devolverán. Los niveles están en la misma jerarquía que el miembro especificado en la expresión de miembro.

SELECT {  
    Ancestors([Product].[Product Categories].[Product].[Mountain-100 Silver, 38],[Product].[Product Categories].[Category]),  
    Ancestors([Product].[Product Categories].[Product].[Mountain-100 Silver, 38],[Product].[Product Categories].[Subcategory]),  
    Ancestors([Product].[Product Categories].[Product].[Mountain-100 Silver, 38],[Product].[Product Categories].[Product])  
    } ON 0,  
[Measures].[Internet Sales Amount] ON 1  
FROM [Adventure Works]  

En el ejemplo siguiente se usa la función Ancestors para devolver la medida Internet Sales Amount para un miembro, su elemento primario y su abuelo. Este ejemplo utiliza expresiones numéricas para especificar los niveles que se devuelven. Los niveles están en la misma jerarquía que el miembro especificado en la expresión de miembro.

SELECT {  
   Ancestors(  
      [Product].[Product Categories].[Product].[Mountain-100 Silver, 38],2  
      ),  
   Ancestors(  
      [Product].[Product Categories].[Product].[Mountain-100 Silver, 38],1  
      ),  
   Ancestors(  
      [Product].[Product Categories].[Product].[Mountain-100 Silver, 38],0  
      )  
   } ON 0,  
[Measures].[Internet Sales Amount] ON 1  
FROM  [Adventure Works]  

En el ejemplo siguiente se usa la función Ancestors para devolver la medida Internet Sales Amount para el elemento primario de un miembro de una jerarquía de atributos. Este ejemplo utiliza una expresión numérica para especificar el nivel que se devuelve. Dado que el miembro de la expresión de miembro forma parte de una jerarquía de atributo, su elemento primario es el nivel [All].

SELECT {  
   Ancestors(  
      [Product].[Product].[Mountain-100 Silver, 38],1  
      )  
   } ON 0,  
[Measures].[Internet Sales Amount] ON 1  
FROM [Adventure Works]  

Consulte también

Referencia de funciones MDX (MDX)