Referencias de generación en compilaciones de dimensiones

Los miembros de la dimensión de Essbase que ocupan una rama común están en la misma generación. La generación 1 es el nombre de dimensión y cada nivel inferior incrementa el número de generación. Al crear dimensiones desde un origen descendente, utilice el método de creación Generación. Si los datos de origen contienen valores nulos, utilice el método de creación Generación de procesos nulos.

Los orígenes de datos de arriba abajo se organizan de izquierda a derecha desde el nivel más alto hasta el más bajo. Cada registro comienza con la información más general y avanza a la información más específica. El nombre del nuevo miembro se encuentra al final del registro. Cuando utilice un origen de datos descendente, utilice el método de creación de referencias de generación. En el archivo de reglas, especifique el número de generación y el tipo de campo de cada campo del origen de los datos.

Essbase numera los miembros dentro de una dimensión según la posición jerárquica del miembro dentro de la dimensión. Los números se denominan referencias de generación. Una dimensión es siempre la generación 1. Todos los miembros de la misma rama de una dimensión se denominan generación. Las generaciones se numeran de arriba abajo según su posición relativa a la dimensión; es decir, relativa a la dimensión 1.

Por ejemplo, como se ilustra a continuación, la dimensión Product es la generación 1. El producto tiene un miembro 100, que es la generación 2. 100 tiene miembros, como 100-10, que son la generación 3. Para utilizar el método de generación de referencias, especifique el número de referencia de generación en el archivo de reglas.

Figura 14-1 Generaciones


Esta imagen ilustra los números de referencia de generación, como se describe en el texto que precede a la imagen.

Supongamos que tiene un cubo con una dimensión Product. Las dimensiones son la generación 1, por lo que Product es la generación 1. Supongamos que desea utilizar el siguiente archivo de datos descendente delimitado por tabuladores para crear la dimensión Product:

500	500-10	500-10-10
500	500-10	500-10-20
500	500-20	500-20-12
500	500-20	500-20-15
500	500-20	500-20-20

Normalmente, debe ejecutar una creación de dimensión mediante el método de creación Generación cuando los miembros de nivel inferior se secuencian de derecha a izquierda como se muestra anteriormente.

Puede utilizar la siguiente regla para crear las dimensiones mediante referencias de generación. La regla especifica el número de generación para cada campo del origen de datos. También debe seleccionar el método de creación Generación en las propiedades de dimensión de la regla, a menos que los datos de origen contengan valores nulos (para ese caso de uso, consulte Cómo tratar los campos vacíos, a continuación).

Archivo de reglas para generación. Campo 1: Producto, Generación 2 denominada Categoría. Campo 2: Product, Generation 3 denominada Product SKU. Campo 3: Producto, Generación 4 denominada Promociones

Essbase crea la siguiente jerarquía a partir del origen de datos y la regla:

Figura 14-2 Referencias de generación


En esta imagen se muestran los nuevos miembros que se crean durante la generación.

Gestión de campos vacíos

Al crear dimensiones a partir de referencias de generación o nivel en los datos de origen, puede optar por procesar valores nulos. El procesamiento nulo especifica qué acciones debe realizar Essbase cuando encuentra campos vacíos en el origen de datos.

Note:

Las opciones de procesamiento nulas solo están disponibles para las reglas de creación de dimensiones normales (no basadas en índices).

Si no se activa el procesamiento nulo, Essbase rechaza todos los registros con valores nulos y escribe un error en el registro de errores.

Para activar el procesamiento nulo, seleccione uno de los métodos de creación de procesamiento nulo en las propiedades de dimensión al crear la nueva regla de creación de dimensión: Generación de proceso nula o Nivel de proceso nulo.


Métodos de creación de procesamiento nulo en propiedades de dimensión para una nueva regla

Si utiliza el método de creación Generación de proceso nula, le indica a Essbase que espere algunos valores nulos al procesar referencias de generación en los datos de origen, lo que ayuda a evitar errores.

Ejemplo

Para este ejemplo de creación de dimensión, suponga que desea agregar una jerarquía irregular/asimétrica como la siguiente en una nueva dimensión de canal en Sample Basic.


La dimensión de canal es la generación 1. Una jerarquía "Todos los canales" es la generación 2. La Generación 3 incluye miembros "Indirectos" y "Directos". Indirect tiene ID de canal como secundarios en la generación 4. Direct tiene miembros de ubicación como "Outlet", "Mall" y "Kiosk" en la generación 4, seguidos de los ID de canal en la generación 5. Los ID de canal indirecto se encuentran en la generación 4, mientras que los ID de canal directo se encuentran en la generación 5, lo que lo convierte en una jerarquía desequilibrada/arrastrada.

El origen de datos es descendente, lo que significa que los niveles superiores (cerca del miembro de la dimensión superior) aparecen primero en cada registro. Por lo tanto, tiene sentido utilizar un método de creación de referencias de generación. Sin embargo, se requerirán instrucciones de manejo nulas. Los tres primeros registros de datos de origen contienen campos nulos, ya que no hay datos de ubicación para los canales indirectos.

"All Channels",Indirect,,Channel-04
"All Channels",Indirect,,Channel-07
"All Channels",Indirect,,Channel-24
"All Channels",Direct,Outlet,Channel-21
"All Channels",Direct,Mall,Channel-29
"All Channels",Direct,Kiosk,Channel-31

Puede crear una regla para crear las dimensiones y evitar errores relacionados con valores nulos mediante el método de creación Generación de proceso nulo.

Para crear una regla para este ejemplo,

  1. Importe/cree el cubo de ejemplo básico utilizando el libro de trabajo de la aplicación disponible en la galería del catálogo de archivos del servidor de Essbase.

  2. Cree un archivo de datos delimitado por comas como el siguiente, asígnele el nombre genchannel.txt y cárguelo en el directorio de cubo básico de ejemplo.

    "All Channels",Indirect,,Channel-04
    "All Channels",Indirect,,Channel-07
    "All Channels",Indirect,,Channel-24
    "All Channels",Direct,Outlet,Channel-21
    "All Channels",Direct,Mall,Channel-29
    "All Channels",Direct,Kiosk,Channel-31
    
  3. En la página Aplicaciones, abra la aplicación y, a continuación, abra la base de datos (cubo).

  4. Seleccione el separador Scripts y, a continuación, haga clic en Reglas.


    El separador Scripts está seleccionado y el mosaico Reglas está resaltado en la interfaz web de Essbase.

  5. Haga clic en Crear y seleccione Creación de dimensiones (normal).


    En el cuadro de diálogo de scripts de base de datos, se pulsa el botón Crear y se selecciona la opción Creación de dimensiones (normal)

  6. En el cuadro de diálogo Nueva regla,

    1. Introduzca un nombre de regla. Por ejemplo, genchannel.

    2. En Tipo de origen, seleccione Archivo, haga clic en Catálogo y navegue a genchannel.txt.

      Al hacer clic en Catálogo, se espera que el archivo se encuentre en el directorio de cubo del servidor de Essbase de forma predeterminada, por lo que ya debe haberlo cargado mediante la sección Archivos de la interfaz web de Essbase. Si el archivo está en la máquina cliente, haga clic en Explorador de archivos para localizar el archivo.

    3. Deje los campos Número de registro de cabecera y Número de registro de creación de dimensión como 0. Los registros de cabecera no son útiles para las compilaciones de dimensiones.

    4. Haga clic en Continuar.

    5. La regla de creación de dimensiones se abre con campos no definidos y los datos de vista previa (del archivo de texto) se rellenan en la cuadrícula debajo de los campos.
      Imagen del editor de reglas de creación de dimensiones para la nueva regla "genchannel", con los campos no definidos del 1 al 4 como columnas de metadatos a la espera de rellenarse. En cada campo se encuentran los valores de datos importados del archivo de datos de origen.

  7. Como se trata de una regla nueva, aún no hay dimensiones asociadas.

    1. Haga clic en Dimensiones.
      Botón Dimensiones en editor de reglas

    2. Escriba el nuevo nombre de dimensión Canal y haga clic en Agregar.
  8. Ahora debe definir el método de creación y comprobar otras instrucciones operativas de creación de dimensiones. Haga clic en el enlace Canal para editar las propiedades de dimensión.

  9. Cambie Método de creación a Generación de proceso nula.


    Imagen de la ventana Editar dimensiones en el editor de reglas de creación de dimensiones, con la generación de procesos nula seleccionada.

    Haga clic en Aceptar.

  10. Haga clic en el selector Dimensión en el campo 1 y seleccione Canal.


    Imagen del campo 1 del editor de reglas de creación de dimensiones con la dimensión Channel seleccionada.

  11. Cambie el selector Tipo del campo 1 a Generación.

  12. Aumente la generación a 2, ya que el miembro de jerarquía Todos los canales está en el nivel 2. El miembro de generación 1 siempre es el nombre de dimensión; en este caso, Canal.

  13. En los campos 2 a 4, ahora se debe seleccionar Canal como dimensión. Cambie los selectores de Tipo a Generación y marque los números de generación como 3 para el Campo 2, 4 para el Campo 3 y 5 para el Campo 4.


    En esta imagen se muestra una regla que crea una dimensión de canal con una jerarquía irregular mediante el método de creación de valores nulos de generación de proceso. El campo 1 se define como Canal, Generación, 2 y contiene Todos los canales. El campo 2 se define como Canal, Generación, 3 y contiene Indirecto para tres registros y Directo para tres registros. El campo 3 se define como Canal, Generación, 4 y contiene tres campos nulos y tres campos de ubicación (Salida, Centro comercial y Quiosco). El campo 4 se define como Canal, Generación, 5 y contiene ID de canal.

  14. Verifique la regla, luego guarde y cierre. Si hay errores, consulte Requisitos para archivos de reglas de creación de dimensiones válidas.

  15. Ejecute el trabajo de creación de dimensión.

  16. Consulte el esquema para confirmar que se han agregado la dimensión Channel y la jerarquía esperada de miembros.

Flujo de procesamiento nulo para compilaciones de dimensiones basadas en generación

Si se activa el procesamiento nulo, Essbase procesa los valores nulos de las siguientes formas:

  • Campo de generación nulo: si se produce un valor nulo donde Essbase espera un campo de generación, Essbase promociona el campo de siguiente generación para sustituir el campo que falta.

    Ejemplo

    La creación de dimensión promueve el ID de canal a la generación 4 en lugar de a la generación 5, porque la generación 4 contiene un valor nulo.


    El campo 1 es Canal, la generación 2 contiene Todos los canales. El campo 2 es Canal, la generación 3 contiene Indirecto. El campo 3 es Canal, la generación 4 contiene un valor nulo. El campo 4 es Canal, Generación 5 que contiene un ID de canal.

  • Campo nulo antes del campo secundario: si se produce un valor nulo directamente antes de un campo secundario, Essbase ignora el campo secundario. (Los tipos de campo secundarios son alias, propiedad, fórmula, generación duplicada, alias de generación duplicada, nombre de moneda, categoría de moneda, principal de atributo, ADU y nombre de una dimensión de atributo).

    Ejemplo

    La creación de dimensión ignora el alias en el campo 4, porque la generación 4 contiene un valor nulo y promueve el ID de canal a la generación 4 en lugar de a la generación 5.


    El campo 1 es Canal, la generación 2 contiene Todos los canales. El campo 2 es Canal, la generación 3 contiene Indirecto. El campo 3 es Canal, la generación 4 contiene un valor nulo. El campo 4 es Canal, Alias, que contiene Catálogo. El campo 5 es Canal, Generación 5 que contiene un ID de canal.

  • Campo secundario nulo: si se produce un valor nulo donde Essbase espera un campo secundario, Essbase ignora el campo nulo secundario y continúa cargándose (este es el mismo comportamiento que para el método de creación de Generación).

    Ejemplo

    La creación de dimensión ignora el alias en el campo 4, porque ese campo contiene un valor nulo. El miembro Outlet se agrega al esquema sin ningún alias.


    El campo 1 es Canal, la generación 2 contiene Todos los canales. El campo 2 es Canal, la Generación 3 contiene Directo. El campo 3 es Canal, Generación 4 que contiene Outlet. El campo 4 es Canal, Alias, que contiene un valor nulo. El campo 5 es Canal, Generación 5 que contiene un ID de canal.