Transformation de données tabulaires en cubes à l'aide des en-têtes à désignation forcée

Les en-têtes (indicateurs) à désignation forcée vous permettent d'indiquer la manière dont les données tabulaires doivent être traitées lors du processus de transformation.

Par exemple, vous pouvez forcer le traitement d'une colonne en tant que dimension de mesures ou d'attributs. La plupart des en-têtes à désignation forcée requièrent un mot-clé entre crochets [ ]. Les en-têtes à désignation forcée sont indiqués dans les modèles Unstr_Hints.xlsx et Sample_Table.xlsx (disponibles dans la galerie).

Les formats d'en-tête à désignation forcée pris en charge sont les suivants :

Tableau 7-1 Formats d'en-tête à désignation forcée

Désignation Format d'en-tête Exemple

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]

Le parent le plus haut, s'il est unique, équivaut au nom de la dimension de compte. S'il ne l'est pas, ce membre est généré automatiquement dans la dimension Compte.

Measures.profit[measure]

profit.cost[measure]

cost.price[measure]

Measures formula

MeasureName[=formula_syntax;]

profit[="price"-"cost";]

profit[="D1"-"E1";]

price[=IF ("S1" == #MISSING) "R1"; ELSE "S1"; ENDIF;]

Measures consolidation

MeasureName[+] : ajouter au parent

MeasureName[-] : soustraire du parent

MeasureName[~] : aucune consolidation (équivaut à [measure])

La valeur par défaut est l'absence de consolidation.

price.shipment[+]

La consolidation ne peut être définie que pour une dimension de mesure.

Formula consolidation

FormulaName[+=<formula>] : ajouter au parent

FormulaName[-=<formula>] : soustraire du parent

profit[+=price-cost]

cost.external[+=ExternalWork+ExternalParts]

UDA

ReferenceGeneration[uda]

Product[uda]

Skip

La colonne n'est pas lue.

ColumnName[skip]

column[skip]

Recur

La valeur de la dernière cellule de colonne est utilisée pour les cellules vides.

Récurrent peut être associé à d'autres désignations imposées ; placez entre crochets la liste des désignations forcées séparées par des virgules, par exemple ColumnName[designationA,recur].

ColumnName[recur]

Product[recur]

Product[uda,recur]

Vous pouvez indiquer des colonnes en tant que dimensions de mesures et utiliser des formules pour créer des dimensions de mesures avec les données calculées lors du processus de transformation. Les en-têtes à désignation forcée de mesures et de formule de mesures sont indiquées avec le nom de la dimension de mesures, à la fin duquel est ajouté un mot-clé ou une formule entre crochets.

Vous pouvez également consolider des mesures et des formules en les ajoutant au parent ou en les en soustrayant.

Pour indiquer une colonne en tant que dimension de mesures, dans l'en-tête de colonne, saisissez le nom de la dimension de mesures et ajoutez le mot-clé [measure]. Par exemple, vous pouvez indiquer les colonnes Units et Costs en tant que dimensions de mesures à l'aide de la syntaxe suivante : Units[measure] et Fixed Costs[measure].

Le processus de transformation crée la hiérarchie suivante, où Units, Discounts, Fixed Costs, Variable Costs et Revenue sont des mesures :

Time
   Year
      Quarter
         Month
Regions
   Region
      Area
         Country
...
Product
   Brand
...
Units
Discounts
Fixed Costs
Variable Costs
Revenue

Vous pouvez créer une hiérarchie de génération de mesure (hiérarchie parent.child[measure]), de la même manière que vous créez des générations de dimensions régulières.

Par exemple, pour créer une hiérarchie de mesure, entrez Measures.profit[measure], profit.cost[measure] et cost.price[measure], ce qui produit la hiérarchie suivante :

Measures
      profit
            cost
                price

Pour créer des dimensions de mesures à partir de formules, dans l'en-tête de colonne, saisissez le nom de la dimension de mesures et ajoutez la syntaxe de formule entre crochets [ ]. Entre les crochets, utilisez le signe égal (=) au début de la formule et un point-virgule (;) à la fin de celle-ci. Les arguments dans la formule correspondent aux noms de colonne ou aux coordonnées de cellule, qui doivent être placés entre guillemets. Vous pouvez utiliser les commandes et les fonctions de calcul Essbase dans la formule.

Supposons que vous avez un fichier Excel nommé Spend_Formulas.xlsx avec des données tabulaires sur la feuille de calcul SpendHistory, qui comporte plusieurs colonnes. Par exemple, il y a des dimensions nommées Year (colonne A) et Quarter (colonne B), ainsi que des dimensions de mesures nommées Spend (colonne J) et Addressable Spend (colonne K). Ces colonnes comportent des données. Des en-têtes de colonne utilisent des formules pour créer des dimensions de mesures. Ces colonnes ne comportent pas de données. Par exemple, pour créer la dimension Total Spend, l'en-tête de la colonne O utilise la formule Essbase suivante : Measure.Total Spend[="Addressable Spend" + "Non-Addressable Spend";]. Pour créer la dimension AddSpendPercent, l'en-tête de la colonne P utilise la formule Essbase suivante : Measure.AddSpendPercent[="Addressable Spend"/"Total Spend";].

Le processus de transformation crée la hiérarchie suivante :


Image de l'aperçu de transformation des données tabulaires.

Le processus de transformation peut également identifier des dimensions de mesures lorsqu'un nom de dimension est dupliqué. Supposons que vous avez un en-tête de colonne qui utilise la formule Meas.profit[="a1"-"b1";], qui crée la dimension Meas. Si vous utilisez le nom de dimension Meas en tant que parent supérieur (par ex. Meas.Sales) dans un autre en-tête de colonne, la dimension Sales est également considérée comme une dimension de mesures.