CurrentMember (MDX)
Devuelve el miembro actual de una jerarquía especificada durante la iteración.
Sintaxis
Hierarchy_Expression.CurrentMember
Argumentos
- Hierarchy_Expression
Expresión MDX válida que devuelve una jerarquía.
Comentarios
En cada paso de una iteración en un conjunto de miembros de jerarquía, el miembro con el que se está trabajando es el miembro actual. La función CurrentMember devuelve dicho miembro.
Importante
Cuando una dimensión contiene solo una única jerarquía visible, se puede hacer referencia a la jerarquía por el nombre de la dimensión o por el nombre de la jerarquía, dado que el nombre de la dimensión se resuelve en su única jerarquía visible.Por ejemplo, Measures.CurrentMember es una expresión MDX válida debido a que se resuelve en la única jerarquía de la dimensión Measures.
Ejemplos
La consulta siguiente muestra el modo en que puede utilizarse Currentmember para buscar el miembro actual de las jerarquías en el eje de columnas, el eje de filas y el eje segmentador:
WITH MEMBER MEASURES.CURRENTDATE AS
[Date].[Calendar].CURRENTMEMBER.NAME
MEMBER MEASURES.CURRENTPRODUCT AS
[Product].[Product Categories].CURRENTMEMBER.NAME
MEMBER MEASURES.CURRENTMEASURE AS
MEASURES.CURRENTMEMBER.NAME
MEMBER MEASURES.CURRENTCUSTOMER AS
[Customer].[Customer Geography].CURRENTMEMBER.NAME
SELECT
[Product].[Product Categories].[Category].MEMBERS
*
{MEASURES.CURRENTDATE, MEASURES.CURRENTPRODUCT,MEASURES.CURRENTMEASURE, MEASURES.CURRENTCUSTOMER}
ON 0,
[Date].[Calendar].MEMBERS
ON 1
FROM [Adventure Works]
WHERE([Customer].[Customer Geography].[Country].&[Australia])
El miembro actual cambia en una jerarquía que se utiliza en un eje en una consulta. Por lo tanto, el miembro actual en otras jerarquías de la misma dimensión que no se utilizan en un eje también cambia; este comportamiento se denomina 'Autoexist' y puede encontrar información detallada al respecto en Conceptos clave de MDX (Analysis Services). Por ejemplo, la consulta siguiente muestra cómo el miembro actual en la jerarquía Calendar Year de la dimensión Date cambia con el miembro actual en la jerarquía Calendar, cuando el último se muestra en el eje de filas:
WITH MEMBER MEASURES.CURRENTYEAR AS
[Date].[Calendar Year].CURRENTMEMBER.NAME
SELECT
{MEASURES.CURRENTYEAR}
ON 0,
[Date].[Calendar].MEMBERS
ON 1
FROM [Adventure Works]
CurrentMember es muy importante para realizar cálculos que dependen del contexto de la consulta en la que se utilizan. El siguiente ejemplo devuelve la cantidad de pedido de cada producto y el porcentaje de cantidades de pedido por categoría y modelo del cubo Adventure Works. La función CurrentMember identifica el producto cuya cantidad de pedido se utilizará durante el cálculo.
WITH
MEMBER [Measures].[Order Percent by Category] AS
CoalesceEmpty
(
([Product].[Product Categories].CurrentMember,
Measures.[Order Quantity]) /
(
Ancestor
( [Product].[Product Categories].CurrentMember,
[Product].[Product Categories].[Category]
), Measures.[Order Quantity]
), 0
), FORMAT_STRING='Percent'
SELECT
{Measures.[Order Quantity],
[Measures].[Order Percent by Category]} ON COLUMNS,
{[Product].[Product].Members} ON ROWS
FROM [Adventure Works]
WHERE {[Date].[Calendar Year].[Calendar Year].&[2003]}