English (Español a continuación)
The following structure allows to select a range of members to which to apply a given condition.
- This structure can be included in the formula of an outline member.
Structure:
- Count(Intersect({RelMemberRange(Member 1, “x”, “y”,[GENERATION / LEVEL])}, {Member 2})) = 1
In which:
- Member 1: the member around which we select the range.
- “x”: the number of positions in the Outline above “Member 1” from which the members enter into the range.
- “y”: the number of positions in the Outline below “Member 1” up to which members enter into the range.
- [GENERATION / LEVEL]: It is optional; indicates whether the selection is made taking into account the level of «Member 1» or its generation.
- If it is not indicated, “GENERATION” is taken by default.
- Member 2: if this member is within the defined range, is selected.
Let’s see some examples: considering the following outline with the «Markets» dimension:
The structure:
- Count(Intersect({RelMemberRange([Madrid], 2, 5,LEVEL)}, {[Mercados].currentmember})) = 1
Select those members who belong to the same level as Madrid (Level 0) and who are in a range that goes from 2 positions above to 5 positions below:
- Members in orange (besides Madrid) are in the range.

The structure:
- Count(Intersect({RelMemberRange([Madrid], 1, 3)}, {[Mercados].currentmember})) = 1
In this case, it selects by generation (by default) and selects those members that belong to the same generation as Madrid (Generation 4) and that are in a range that goes from 1 position above to 3 positions below:
- Members in orange (besides Madrid) are in the range.

This range selection formula can be used within a conditional structure.
Let’s see an example: we include the following formula in the member “Obj_2022”, of the dynamic dimension “Indicators”.
- IIF(Count(Intersect({RelMemberRange([Madrid], 1, 3)}, {[Mercados].currentmember})) = 1, Sales * 1.5, Sales * 1.3)
Calculate the value of the member “Obj_2022”:
- For members of the selected range multiplying their sales by 1.5
- For the rest of members of the «Markets» dimension multiplying their sales by 1.3
Any question, please send an email to: essbaseeasy@gmail.com
Español
La siguiente estructura permite seleccionar un rango de miembros a los que aplicar una condición determinada.
- Esta estructura se puede incluir en la fórmula de un miembro del outline.
Estructura:
- Count(Intersect({RelMemberRange(Miembro 1, “x”, “y”,[GENERATION / LEVEL])}, {Miembro 2})) = 1
Siendo:
- Miembro 1: el miembro en torno al cual seleccionamos el rango.
- “x”: el número de posiciones en el Outline por arriba del “Miembro 1” a partir de la cual los miembros entran en el rango.
- “y”: el número de posiciones en el Outline por debajo del “Miembro 1” hasta la cual los miembros entran en el rango.
- [GENERATION / LEVEL]: Es opcional; indica si la selección del rango se realiza teniendo en cuenta el nivel del “Miembro 1” o su generación.
- Si no se indica se toma por defecto “GENERATION”.
- Miembro 2: si este miembro está situado dentro del rango definido, queda seleccionado.
Veamos unos ejemplos: partiendo del siguiente outline en el que mostramos la dimensión “Mercados”:
La estructura:
- Count(Intersect({RelMemberRange([Madrid], 2, 5,LEVEL)}, {[Mercados].currentmember})) = 1
Selecciona aquellos miembros que pertenecen al mismo nivel que Madrid (Nivel 0) y que se encuentran en un rango que va desde 2 posiciones por arriba hasta 5 posiciones por debajo:
- Quedan dentro del rango los miembros con fondo naranja (además de Madrid).

La estructura:
- Count(Intersect({RelMemberRange([Madrid], 1, 3)}, {[Mercados].currentmember})) = 1
En este caso selecciona por generación (por defecto) y selecciona aquellos miembros que pertenecen a la misma generación que Madrid (Generación 4) y que se encuentran en un rango que va desde 1 posición por arriba hasta 3 posiciones por debajo:
- Quedan dentro del rango los miembros con fondo naranja (además de Madrid).

Esta fórmula de selección de rango se puede utilizar dentro de una estructura condicional.
Veamos un ejemplo: incluimos la siguiente fórmula en el miembro “Obj_2022”, de la dimensión dinámica “Indicadores”.
- IIF(Count(Intersect({RelMemberRange([Madrid], 1, 3)}, {[Mercados].currentmember})) = 1, Ventas * 1.5, Ventas * 1.3)
Calcula el valor del miembro “Obj_2022”:
- Para los miembros del rango seleccionado multiplicando sus ventas por 1,5
- Para el resto de los miembros de la dimensión “Mercados” multiplicando sus ventas por 1,3
Cualquier consulta envía, por favor, un correo a: essbaseeasy@gmail.com