CREATE MEMBER (instrucción MDX)
Crea un miembro calculado.
Sintaxis
CREATE [ SESSION ] [HIDDDEN] [ CALCULATED ] MEMBER CURRENTCUBE | Cube_Name.Member_Name
AS MDX_Expression
[,Property_Name = Property_Value, ...n]
......[,SCOPE_ISOLATION = CUBE]
Argumentos
Cube_Name
Expresión de cadena válida que proporciona el nombre del cubo donde se creará el miembro.Member_Name
Expresión de cadena válida que proporciona un nombre de miembro. Especifique un nombre completo para crear un miembro dentro de una dimensión que no sea la dimensión Measures. Si no proporciona un nombre de miembro completo, el miembro se creará en la dimensión Measures.MDX_Expression
Expresión MDX (Expresiones multidimensionales) válida.Property_Name
Cadena válida que proporciona el nombre de una propiedad de miembro calculado.Property_Value
Expresión escalar válida que define el valor de la propiedad de miembro calculado.
Comentarios
La instrucción CREATE MEMBER define los miembros calculados disponibles durante la sesión y que, por lo tanto, se pueden utilizar en varias consultas mientras la sesión esté activa. Para obtener más información, vea Crear miembros calculados de ámbito de sesión (MDX).
También puede definir un miembro calculado para su uso en una sola consulta. Para definir un miembro calculado limitado a una sola consulta, use la cláusula WITH de la instrucción SELECT. Para obtener más información, vea Crear miembros calculados en el ámbito de consulta (MDX).
Property_Name puede hacer referencia a propiedades de miembro calculado estándar u opcionales. Las propiedades de miembro estándares se indican más adelante, en este mismo tema. Los miembros calculados creados mediante CREATE MEMBER y sin ningún valor SESSION tienen un ámbito de sesión. Además, las cadenas incluidas en las definiciones del miembro calculado se delimitan mediante comillas dobles. Este método es distinto del definido por OLE DB, en el que las cadenas deben delimitarse con comillas simples.
Si especifica un cubo distinto del que está conectado actualmente, se genera un error. Por lo tanto, debe utilizar CURRENTCUBE en lugar de un nombre de cubo para indicar el cubo actual.
Para obtener más información acerca de las propiedades de miembro definidas por OLE DB, vea la documentación de OLE DB.
Ámbito
Los miembros calculados pueden existir en cualquiera de los ámbitos que se incluyen en la siguiente tabla:
Ámbito de consulta
La visibilidad y la duración del miembro calculado se limita a la consulta. El miembro calculado se define en una consulta individual. El ámbito de consulta prevalece sobre el ámbito de sesión. Para obtener más información, vea Crear miembros calculados en el ámbito de consulta (MDX).Ámbito de sesión
La visibilidad y duración del miembro calculado se limita a la sesión en la que se crea. (La duración puede ser inferior a la duración de la sesión si se ejecuta la instrucción DROP MEMBER en el miembro calculado). La instrucción CREATE MEMBER crea un miembro calculado con ámbito de sesión.
Aislamiento de ámbito
Cuando un script MDX (Expresiones multidimensionales) de cubo contiene miembros calculados, éstos se resuelven de forma predeterminada antes de que se resuelva cualquier cálculo de ámbito de sesión y cualquier cálculo definido por la consulta.
[!NOTA]
En determinados escenarios, las funciones Aggregate (MDX) y VisualTotals (MDX) no presentan este comportamiento.
El comportamiento permite a las aplicaciones cliente genéricas trabajar con cubos que contienen cálculos complejos, sin tener en cuenta la implementación específica de los cálculos. Sin embargo, es posible que en algunos escenarios desee ejecutar miembros calculados de ámbito de consulta o sesión antes de realizar determinados cálculos en el cubo y que no pueda aplicarse ni la función Aggregate ni la función VisualTotals. Para lograr esto, utilice la propiedad de cálculo de SCOPE_ISOLATION.
Ejemplo
A continuación, se muestra un ejemplo de script de un escenario donde es necesaria la propiedad de cálculo SCOPE_ISOLATION para generar el resultado correcto.
Script MDX del cubo:
CREATE MEMBER CURRENTCUBE.Measures.ProfitRatio AS 'Measures.[Store Sales]/Measures.[Store Cost]', SOLVE_ORDER = 10
Consulta MDX:
WITH MEMBER [Customer].[Customers].[USA]. USAWithoutWA AS
[Customer].[Customers].[Country].&[USA] - [Customer].[Customers].[State Province.&[WA], SOLVE_ORDER=5
SELECT {USAWithoutWA} ON 0 FROM SALES
WHERE ProfitRatio
El resultado deseado de la consulta anterior es el ratio de ventas en USA sin WA, para almacenar el costo de USA sin WA. La consulta anterior no devuelve el resultado deseado, sino la ratio de EE.UU. menos la ratio de WA, que es un resultado que carece de significado. Para obtener el resultado deseado, puede utilizar la propiedad de cálculo SCOPE_ISOLATION.
Consulta MDX con la propiedad de cálculo SCOPE_ISOLATION:
WITH MEMBER [Customer].[Customers].[USA]. USAWithoutWA AS
[Customer].[Customers].[Country].&[USA] - [Customer].[Customers].[State Province.&[WA], SOLVE_ORDER=5
,SCOPE_ISOLATION=CUBE
SELECT {USAWithoutWA} ON 0 FROM SALES
WHERE ProfitRatio
Propiedades estándar
Cada miembro calculado tiene un conjunto de propiedades predeterminadas. Cuando se conecta una aplicación cliente a Microsoft Analysis Services, se admiten las propiedades predeterminadas, o bien se ponen a disposición para ser admitidas, según lo que decida el administrador.
Puede haber otras propiedades de miembro adicionales disponibles, según la definición del cubo. Las siguientes propiedades representan información relevante para el nivel de dimensión del cubo.
Identificador de la propiedad |
Significado |
||
---|---|---|---|
SOLVE_ORDER |
Orden de resolución del miembro calculado en aquellos casos en los que un miembro calculado haga referencia a otro miembro calculado (es decir, cuando exista una intersección de miembros calculados). |
||
FORMAT_STRING |
Cadena con formato de Microsoft Office que puede utilizar la aplicación cliente para mostrar los valores de las celdas. |
||
VISIBLE |
Valor que indica si el miembro calculado es visible en el conjunto de filas del esquema. Los miembros calculados visibles pueden agregarse a un conjunto mediante la función AddCalculatedMembers. Un valor distinto de cero indica que el miembro calculado es visible. El valor predeterminado de esta propiedad es Visible. Los miembros calculados no visibles (cuando el valor se establece en cero) suelen utilizarse como pasos intermedios en miembros calculados más complejos. También otros tipos de miembro, como las medidas, pueden hacer referencia a estos miembros calculados. |
||
NON_EMPTY_BEHAVIOR |
Medida o conjunto utilizados para determinar el comportamiento de los miembros calculados al resolver celdas vacías.
|
||
CAPTION |
Cadena que utiliza la aplicación cliente como título para el miembro. |
||
DISPLAY_FOLDER |
Cadena que identifica la ruta de la carpeta que usa la aplicación cliente para mostrar el miembro. La aplicación cliente define el separador de niveles de carpetas. Para las herramientas y clientes proporcionados por Analysis Services, el separador de niveles es la barra diagonal inversa (\). Si va a asignar varias carpetas para mostrar a un miembro definido, utilice un punto y coma (;) para separar las carpetas. |
||
ASSOCIATED_MEASURE_GROUP |
Nombre del grupo de medida al que se asocia el miembro. |
Vea también
Referencia
DROP MEMBER (Instrucción, MDX)
UPDATE MEMBER (instrucción MDX)