SELECTION BY RANGES / SELECCIÓN POR RANGOS

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