Transformación de datos tabulares en cubos
Puede crear el cubo de Essbase a partir de datos tabulares extrayendo tablas del hecho de una base de datos relacional en un archivo de Excel y, a continuación, desplegando el cubo con Diseñador de cubos o la interfaz web de Essbase.
Essbase detecta patrones en las relaciones entre cabeceras de columna y datos, y lo utiliza para desplegar un cubo multidimensional. Las estructuras que utiliza Essbase para transformar datos tabulares en un cubo multidimensional incluyen:
-
Correlaciones entre columnas
-
Correlaciones entre tipos de columnas (como fecha, número y texto)
-
Análisis de texto de cabecera para prefijos comunes y términos relacionados con la inteligencia de negocio (como costo, precio, cuenta)
-
Estructura del informe (como celdas fusionadas y celdas vacías)
-
(Opcional) Cabeceras de designación forzada que se utilizan para definir explícitamente la forma de un cubo y que pueden incluir fórmulas para crear dimensiones de medidas.
-
Jerarquías de medidas (se pueden generar también en Transformar datos en el diseñador de cubos).
Se proporcionan archivos de Excel de datos tabulares de ejemplo para demostrar los conceptos de cabeceras intrínsecas y de designación forzada.
Al trabajar con datos tabulares, debe analizar los datos antes de crear un cubo a partir de ellos. A continuación, una vez creado el cubo, debe determinar si el esquema del cubo es tal y como desea.
Puede crear un cubo a partir de datos tabulares en la interfaz web de Essbase o en el diseñador de cubos. Consulte Crear y Actualizar un Cubo a partir de Datos Tabulares.
Utilización de cabeceras intrínsecas para transformar datos tabulares en cubos
Las cabeceras intrínsecas utilizan la tabla.column formato, que se muestra en el archivo Sample_Table.xlsx. En este archivo de ejemplo, las cabeceras de columna tienen nombres como Units, Discounts, Time.Month, Regions.Region, and Product.Brand.
El proceso de transformación crea esta jerarquía:
Units
Discounts
Fixed Costs
Variable Costs
Revenue
Time
Month
Quarter
Years
Regions
Region
Area
Country
Channel
Product
Brand
...Uso de cabeceras de designación forzada para transformar datos tabulares en cubos
Al transformar datos tabulares en una base de datos de Essbase, las cabeceras de designación forzada (también conocidas como indicaciones) pueden ayudarle a especificar cómo se deben manejar los datos tabulares durante el proceso de transformación.
Por ejemplo, puede forzar que se trate una columna como una dimensión de medidas o atributos. La mayoría de cabeceras de designación forzada necesitan una palabra clave entre corchetes [ ]. Las cabeceras de designación forzada se demuestran en las plantillas Unstr_Hints.xlsx y Sample_Table.xlsx (ambas disponibles en la sección de galería del catálogo de archivos de Essbase).
Los formatos soportados de cabeceras de designación forzada se enumeran a continuación:
Tabla 5-1 Formatos de Cabecera de Designación Forzada
| Designación | Formato de cabecera | Ejemplo |
|---|---|---|
| Dimension generation |
ParentGeneration.CurrentGeneration |
Category.Product |
| Alias |
ReferenceGeneration.Generation[alias] |
Year.ShortYearForm[alias] |
| Attribute |
ReferenceGeneration.AttributeDimName[attr] |
Product.Discounted[attr] |
| Measures |
MeasureName[measure] |
Price[measure] |
| Measure generation |
Parent.child[measure] El principal superior, si es único, es el nombre de la dimensión de cuentas. Si no es único, este miembro se generará automáticamente en la dimensión de cuentas. |
Measures.profit[measure] profit.cost[measure] cost.price[measure] |
| Measures formula |
MeasureName[=formula_syntax;] |
profit[="precio"-"costo";] profit[="D1"-"E1";] price[=IF ("S1" == #MISSING) "R1"; ELSE "S1"; ENDIF;] |
| Measures consolidation |
MeasureName[+] : agregar a principal MeasureName[-] : restar de principal MeasureName[~] : sin consolidación (equivalente a [measure]) El valor por defecto es sin consolidación. |
price.shipment[+] Solo se puede definir la consolidación para dimensiones de medida |
| Formula consolidation |
FormulaName[+=<formula>] : agregar a principal FormulaName[-=<formula>] : restar de principal |
profit[+=price-cost] cost.external[+=ExternalWork+ExternalParts] |
| UDA |
ReferenceGeneration[uda] |
Product[uda] |
| Skip No se lee la columna. |
ColumnName[skip] |
column[skip] |
| Recur Se utiliza el valor de celda de la última columna para las celdas vacías Recurrente se puede combinar con otras designaciones forzadas; incluya una lista separada por comas de designaciones forzadas entre corchetes, ColumnName[designationA,recur]. |
ColumnName[recur] |
Product[recur] Product[uda,recur] |
Puede especificar que las columnas sean dimensiones de medidas y puede utilizar fórmulas para crear dimensiones de medidas con datos calculados durante el proceso de transformación. Las cabeceras de designación forzada de medidas y fórmulas de medidas se especifican con el nombre de la dimensión de medidas, seguido de una palabra clave o fórmula que se pone entre corchetes y se agrega al nombre de la dimensión de medidas.
También puede consolidar medidas y fórmulas agregándolas al principal o restándolas de este.
Para especificar que una columna sea una dimensión de medidas, en la cabecera de columna, introduzca el nombre de la dimensión de medidas y, a continuación, agregue la palabra clave [measure]. Por ejemplo, puede especificar las columnas Units y Fixed Costs como dimensiones de medidas utilizando esta sintaxis: Units[measure] y Fixed Costs[measure].
El proceso de transformación crea esta jerarquía, con Units, Discounts, Fixed Costs, Variable Costs y Revenue como medidas:
Time
Year
Quarter
Month
Regions
Region
Area
Country
...
Product
Brand
...
Units
Discounts
Fixed Costs
Variable Costs
RevenuePuede crear una jerarquía de generación de medidas (jerarquía parent.child[measure]), de manera similar a como se crean las generaciones de dimensiones regulares.
Por ejemplo, para crear una jerarquía de medidas se introduce Measures.profit[measure], profit.cost[measure] y cost.price[measure], lo que da lugar a la siguiente jerarquía:
Measures
profit
cost
price
Para crear dimensiones de medidas a partir de fórmulas, en la cabecera de columna, introduzca el nombre de la dimensión de medidas y, a continuación, agregue la sintaxis de fórmula entre corchetes [ ]. Entre corchetes, inicie la fórmula con un signo igual (=) y finalícela con un punto y coma (;). Los argumentos de la fórmula se corresponden con nombres de columnas o coordenadas de celdas, que deben estar entre comillas. Puede utilizar comandos y funciones de cálculo de Essbase en la fórmula.
Suponga que ya existe un archivo de Excel denominado Spend_Formulas.xlsx con datos tabulares en la hoja de trabajo SpendHistory, que tiene varias columnas. Por ejemplo, existen dimensiones denominadas Año (columna A) y Trimestre (columna B), y dimensiones de medidas denominadas Gasto (columna J) y Gasto permitido (columna K). Estas columnas tienen datos. A continuación, hay cabeceras de columna que usan fórmulas para crear dimensiones de medidas. Estas columnas no tienen datos. Por ejemplo, para crear la dimensión Gasto total, la cabecera de la columna O utiliza esta fórmula de Essbase: Measure.Total Spend[="Gasto permitido" + "Gasto no permitido";]. Para crear la dimensión AddSpendPercent, la cabecera de la columna P utiliza esta fórmula de Essbase: Measure.AddSpendPercent[="Gasto permitido"/"Gasto total";].
El proceso de transformación crea esta jerarquía:

El proceso de transformación también puede identificar dimensiones de medidas cuando un nombre de dimensión está duplicado. Suponga que tiene una cabecera de columna que utiliza esta fórmula, Meas.profit[="a1"-"b1";], que crea la dimensión Med. Si, en otra cabecera de columna, utiliza el nombre de dimensión Med. como principal superior, como Meas.Sales, la dimensión Ventas también se considera una dimensión de medidas.