Funciones Relacionadas con los Miembros
Utilice las funciones de miembro de Essbase en las fórmulas para especificar listas y rangos de miembros, generar listas de miembros, manipular nombres de miembros y trabajar con combinaciones de miembros en todas las dimensiones.
En este apartado se describe la creación de fórmulas que hacen referencia a miembros.
Especificar listas de miembros y rangos
Al utilizar algunas funciones de cálculo de Essbase, puede que necesite introducir una lista de miembros de esquema y/o un rango de miembros. Las listas pueden ser listas separadas por comas de nombres de miembros literales o pueden ser devueltas por funciones de cálculo. Los rangos se pueden especificar con sintaxis de dos puntos o pueden ser devueltos por funciones de cálculo.
Por ejemplo, la función @ISMBR prueba si un miembro que se está calculando coincide con cualquiera de una lista o rango de miembros especificados.
En la siguiente tabla, se muestra la sintaxis para especificar miembros:
Tabla 17-8 Sintaxis para especificar listas y rangos de miembros
| Lista o rango de miembros | Sintaxis |
|---|---|
|
Un Miembro |
El nombre del miembro. Por ejemplo: |
|
La lista de miembros |
Lista de nombres de miembros delimitada por comas (,). Por ejemplo: |
|
Un rango de todos los miembros en el mismo nivel, entre e incluyendo los dos miembros que definen |
Los dos nombres de miembros que definen separados por dos puntos (:). Por ejemplo: |
|
Un rango de todos los miembros de la misma generación, entre los dos miembros que definen |
Los dos nombres de miembros que definen separados por dos puntos (::). Por ejemplo: |
|
Una lista generada por funciones de miembros o un rango de miembros |
Para obtener una lista del contenido de la lista de miembros y las funciones correspondientes, consulte Generar listas de miembros. |
|
Una combinación de rangos y lista |
Separe cada rango, lista y función con una coma (,). Por ejemplo: o bien, |
Si no especifica una lista de miembros o un rango de miembros en una función que lo requiera, Essbase utiliza los miembros de nivel 0 de la dimensión etiquetada como tiempo. Si no se etiqueta ninguna dimensión como hora, Essbase muestra un mensaje de error.
Generar listas de miembros
Las funciones de conjunto de miembros de Essbase permiten generar listas de miembros basadas en una lista de miembros o miembros especificada.
Tabla 17-9 Lista de funciones de juego de miembros
| Función | Contenido de la lista de miembros |
|---|---|
|
Todos los ascendientes del miembro especificado, incluidos los ascendientes de cualquier miembro especificado como miembro compartido. Esta función no incluye el miembro especificado. |
|
|
Todos los antecesores del miembro especificado, incluidos los antecesores del miembro especificado como miembro compartido. Esta función incluye el miembro especificado. |
|
|
El ascendiente del miembro especificado en la generación o nivel especificados |
|
|
Todos los ascendientes del miembro especificado (opcionalmente, hasta la generación o el nivel especificados), pero no el miembro especificado |
|
|
Todos los ascendientes del miembro especificado (opcionalmente, hasta la generación o el nivel especificado), incluido el miembro especificado |
|
|
Todos los ascendientes de la lista de miembros especificada (opcionalmente, hasta la generación o el nivel especificados), pero sin incluir los miembros especificados |
|
|
Todos los ascendientes de la lista de miembros especificada (opcionalmente, hasta la generación o el nivel especificados), incluidos los miembros especificados |
|
|
Todos los miembros de dimensión base que están asociados al miembro de dimensión de atributo especificado |
|
|
Todos los miembros base asociados a atributos que cumplen las condiciones especificadas |
|
|
Todos los miembros cuyo valor del nombre de cadena queda entre dos tokens de cadena especificados, ambos incluidos. |
|
|
Todos los hijos del miembro especificado, pero sin incluir el miembro especificado |
|
|
Todos los hijos de un miembro especificado, incluido el miembro especificado |
|
|
El miembro actual que se está calculando para la dimensión especificada |
|
|
Todos los descendientes del miembro especificado (opcionalmente, hasta la generación o el nivel especificados), pero no el miembro especificado ni los descendientes de los miembros compartidos |
|
|
Todos los descendientes del miembro especificado (opcionalmente, hasta la generación o el nivel especificados), incluido el miembro especificado, pero no los descendientes de los miembros compartidos |
|
|
Todos los descendientes de la lista de miembros especificada (opcionalmente, hasta la generación o el nivel especificados), pero sin incluir los miembros especificados |
|
|
Todos los descendientes de la lista de miembros especificada (opcionalmente, hasta la generación o el nivel especificados), incluidos los miembros especificados |
|
|
Todos los descendientes del miembro especificado (opcionalmente, hasta la generación o el nivel especificados), incluidos los descendientes de los miembros compartidos, pero no el miembro especificado |
|
|
Todos los descendientes del miembro especificado (opcionalmente, hasta la generación o el nivel especificados), incluidos el miembro especificado y los descendientes de los miembros compartidos |
|
|
Nombres de miembros que coinciden con el nombre del token especificado |
|
|
Nombres de miembros que no coinciden con el nombre del token especificado |
|
|
Expande una búsqueda de usuarios mediante la llamada a una función de conjunto de usuarios para cada miembro de una lista de miembros. |
|
|
Todos los miembros de la generación especificada en la dimensión especificada |
|
|
Todos los miembros del nivel especificado en la dimensión especificada |
|
|
Nombres de miembros que coinciden con el patrón especificado. |
|
|
Listas separadas de miembros que deben procesar las funciones que requieren varios argumentos de lista |
|
|
Todos los miembros que coinciden con la selección de comodines especificada |
|
|
Nombres de miembros que coinciden con los criterios de comparación |
|
|
Principal del miembro especificado |
|
|
El miembro con el nombre que se proporciona como cadena de caracteres |
|
|
Una lista de dos listas fusionadas de miembros procesadas por otra función |
|
|
Padre del miembro actual que se va a calcular en la dimensión especificada |
|
|
Lista de miembros que cruza el miembro especificado de una dimensión con el rango de miembros especificado de otra dimensión |
|
|
Lista de miembros de los que se han eliminado algunos miembros |
|
|
Todos los miembros del nivel o generación especificados que están por encima o por debajo del miembro especificado |
|
|
Lista de miembros que identifica todos los miembros compartidos entre los miembros especificados |
|
|
Todos los hermanos del miembro especificado, pero no el miembro especificado |
|
|
Todos los hermanos del miembro especificado, incluido el miembro especificado |
|
|
Todos los hermanos que preceden al miembro especificado en el esquema de la base de datos, pero no al miembro especificado |
|
|
Todos los hermanos que siguen el miembro especificado en el esquema de la base de datos, pero no el miembro especificado |
|
|
Todos los hermanos que preceden al miembro especificado en el esquema de la base de datos, incluido el miembro especificado |
|
|
Todos los hermanos que siguen el miembro especificado en el esquema de la base de datos, incluido el miembro especificado |
|
|
El hermano a la distancia especificada del miembro |
|
|
El siguiente, o más a la derecha, hermano del miembro |
|
|
El hermano anterior o el más a la izquierda del miembro |
|
|
Todos los miembros que tienen un ADU común definido en el servidor de Essbase |
|
|
Lista de miembros que identifica el rango de miembros entre (e incluyendo) dos miembro individuales o interdimensionales especificados en el mismo nivel |
Manipulación de nombres de miembros
Puede trabajar con nombres de miembros de Essbase como cadenas de caracteres en las fórmulas de almacenamiento de bloques y los scripts de cálculo.
En la siguiente tabla se muestran las funciones de manipulación de cadenas de caracteres:
Tabla 17-10 Lista de funciones de manipulación de cadenas de caracteres
| Función | Manipulación de cadena de caracteres |
|---|---|
|
Crear una cadena de caracteres que sea el resultado de agregar un nombre de miembro o una cadena de caracteres especificada a otro nombre de miembro o cadena de caracteres |
|
|
Devolver un nombre de miembro como una cadena |
|
|
Devolver una subcadena de caracteres de otra cadena de caracteres o de un nombre de miembro |
Trabajo con combinaciones de miembros en distintas dimensiones
Los operadores multidimensionales -> en las fórmulas de Essbase son una forma de hacer referencia a los valores de datos multidimensionales de combinaciones de miembros específicas. El comando FIX puede ser mejor para el rendimiento.
Utilice el operador multidimensional para apuntar a valores de datos de combinaciones de miembros específicas. Cree el operador multidimensional mediante un guión (-) y un símbolo mayor que (>). No incluya un espacio entre el operador tridimensional y los miembros.
Note:
El uso del operador multidimensional puede tener implicaciones significativas en el rendimiento. Para obtener directrices de optimización, consulte Operadores multidimensionales en fórmulas de miembros.
A continuación se muestra una ilustración simplificada de un cubo multidimensional, en el que Jan es la primera columna del eje X, Sales es la cuarta y la primera fila del eje Y, y Actual es la primera fila del eje Z. En este ejemplo, Sales -> Jan -> Real es la intersección de un único valor de datos.
Figura 17-2 Especificación de un Valor de Datos Único

El siguiente ejemplo, que asigna gastos varios a cada producto en cada mercado, ilustra cómo utilizar el operador multidimensional. El valor de Misc_Expenses para todos los productos en todos los mercados es conocido. La fórmula asigna un porcentaje del valor total de Misc_Expenses a cada combinación de producto -> mercado. La asignación se basa en el valor de Ventas para cada producto en cada mercado.
Misc_Expenses = Misc_Expenses -> Market -> Product * (Sales / ( Sales -> Market -> Product));Essbase recorre la base de datos realizando los siguientes cálculos:
-
Divide el valor de Ventas para la combinación de miembros actual por el valor de Ventas total para todos los mercados y todos los productos (Ventas -> Mercado -> Producto).
-
Multiplica el valor calculado en el paso 1 por el valor Misc_Expenses para todos los mercados y todos los productos (Misc_Expenses -> Market -> Product).
-
Asigna el resultado a Misc_Expenses para la combinación de miembros actual.