Sources de données ne nécessitant pas de règle de chargement

Pour charger des données dans un cube Essbase, vous avez généralement besoin d'une règle de chargement, sauf si les données source sont parfaitement mappées avec le cube. Toutefois, si une source de données contient toutes les informations requises, vous pouvez charger la source de données directement dans un chargement de données de format libre sans règle.

Si vous effectuez une construction de dimension, ignorez cette section. Les builds de dimension nécessitent toujours des règles de chargement.

Pour qu'une valeur de données puisse être chargée correctement, Essbase doit rencontrer un membre de chaque dimension avant de rencontrer la valeur de données. Par exemple, Essbase charge la valeur de données 42 dans la base de données avec les membres Texas, 100-10, Jan, Sales et Actual.


Cette image illustre le concept d'enregistrements et de champs dans une source de données, tel que décrit dans le texte précédant l'image.

Si Essbase rencontre une valeur de données avant qu'un membre de chaque dimension ne soit spécifié, il arrête le chargement des données.

Pour une mise en correspondance parfaite, une source de données doit contenir tous les éléments suivants et rien d'autre :

  • Un ou plusieurs membres valides de chaque dimension. Un nom de membre doit être placé entre guillemets s'il contient l'un des éléments suivants :

    • les espaces,

    • Caractères numériques (0-9)

    • Tirets (moins de signes, tirets)

    • Signes supplémentaires

    • Sperluette (&)

      Si vous effectuez un chargement de données sans fichier de règles, lorsque Essbase rencontre un champ de membre non valide, il arrête le chargement de données même si l'indicateur Abandonner en cas d'erreur n'est pas défini sur True. Essbase charge tous les champs lus avant le champ non valide dans la base de données, ce qui entraîne un chargement partiel des valeurs de données.

  • Une ou plusieurs valeurs de données valides. Voir Champs de données valides.

    Si la source de données contient des champs vides pour les valeurs de données, remplacez les champs vides par #MI ou #MISSING. Sinon, les valeurs de données risquent de ne pas se charger correctement.

  • Délimiteurs valides. Reportez-vous à Délimiteurs valides.

Les champs de la source de données doivent être formatés dans un ordre que Essbase comprend. La façon la plus simple de formater un enregistrement est d'inclure un membre de chaque dimension et un champ de données, comme illustré ci-dessous :

Sales "100-10" Ohio Jan Actual 25
Sales "100-20" Ohio Jan Actual 25
Sales "100-30" Ohio Jan Actual 25

Aucune source de données mal formatée ne sera chargée. Vous pouvez modifier la source de données à l'aide d'un éditeur de texte et résoudre le problème. Si vous devez effectuer plusieurs modifications (telles que le déplacement de plusieurs champs et enregistrements), utilisez une règle de chargement.

Les sections suivantes décrivent des méthodes plus complexes de formatage des sources de format libre.

Fourchettes de champs de membre dans les données source

Vous pouvez exprimer les noms de membre Essbase sous forme de plages au sein d'une dimension. Une plage est une série de valeurs. Une source de données peut contenir des plages de plusieurs dimensions à la fois. Découvrez comment Essbase traite les plages au cours d'un chargement de données, si aucune règle de chargement n'est utilisée.

Si vous effectuez une construction de dimension, ces informations ne sont pas applicables, car les constructions de dimension nécessitent toujours une règle. Si vous effectuez un chargement de données, ces informations s'appliquent lorsqu'aucune règle n'est utilisée (mais il est également utile de connaître les plages lorsque vous concevez une règle de chargement de données).

Vous pouvez exprimer les noms de membre sous forme de plages au sein d'une dimension. Par exemple, Sales et COGS forment une plage dans la dimension Measures. Les plages de noms de membre peuvent gérer une série de valeurs.

Une source de données peut contenir des plages de plusieurs dimensions à la fois. Dans l'exemple ci-dessous, Jan et Feb forment une plage dans la dimension Year et Sales et COGS forment une plage dans la dimension Measures.


Actual   Texas   Sales   COGS
           Jan   Feb   Jan   Feb
"100-10"   98    89    26    19
"100-20"   87    78    23    32

Notez que Sales est défini pour les deux premières colonnes et COGS pour les deux dernières colonnes.

Plages automatiques

Lorsque Essbase rencontre plusieurs membres de la même dimension sans champs de données intermédiaires, il configure une plage pour cette dimension. La plage reste active jusqu'à ce qu'Essbase rencontre un autre nom de membre de la même dimension, auquel cas Essbase remplace la plage par le nouveau membre ou la nouvelle plage de membres.

L'exemple suivant contient une plage allant de Jan à Feb dans la dimension Year. Il reste en vigueur jusqu'à ce qu'Essbase rencontre un autre nom de membre, tel que Mar. Lorsque Essbase rencontre Mar, la plage passe à Jan, Feb, Mar.

Texas   Sales
                    Jan   Feb   Mar
Actual   “100-10"   98    89    58
         “100-20”   87    78    115

Valeurs de données hors limites

Lorsque Essbase rencontre une plage de membres, il suppose qu'il existe une plage de valeurs de données correspondante. Si les valeurs de données ne se trouvent pas dans la plage de membres, le chargement des données s'arrête. Essbase charge tous les champs de données lus avant le champ non valide dans le cube, ce qui entraîne un chargement partiel des données.

L'exemple suivant contient plus de champs de données que de champs de membre dans la plage de membres définie. Le chargement des données s'arrête lorsqu'il atteint le champ de données 10. Essbase charge les champs de données 100 et 120 dans le cube.

Cola   Actual   East
        Jan   Feb
Sales   100   120   10
COGS    30    34    32

Membres répétés dans une plage

Plages de structure dans les données source afin qu'Essbase les interprète correctement. Si un membre apparaît plusieurs fois dans une plage, Essbase ignore les membres répétés.

Le premier tableau ci-dessous présente les membres répétés pour Actual, Budget, Sales et COGS et deux fourchettes : Actual à Budget et Sales à COGS. Essbase ignore les instances répétées de Actual, Budget, Sales et COGS (par exemple, sur la deuxième ligne, les instances répétées Actual et Budget sont ignorées) :


Cola   East
      Actual   Budget   Actual   Budget
      Sales   Sales   COGS   COGS
Jan   108     110     49     50
Feb   102     120     57     60

Pour Actual, premier membre de la première plage, Essbase mappe les valeurs de données avec chaque membre de la deuxième plage (Ventes et CMV). Essbase passe ensuite à la valeur suivante de la première plage, Budget, en mettant en correspondance les valeurs avec chaque membre de la deuxième plage. Par conséquent, Essbase interprète le fichier comme indiqué ci-dessous :

Cola   East
      Actual         Budget
      Sales   COGS   Sales   COGS
Jan   108     110    49      50
Feb   102     120    57      60

Colonnes dans les données source

Découvrez comment Essbase traite les colonnes lors d'un chargement de données, si aucune règle de chargement n'est utilisée. Les colonnes de données source que vous chargez dans le cube peuvent être symétriques ou asymétriques.

Si vous effectuez une construction de dimension, ces informations ne sont pas applicables, car les constructions de dimension nécessitent toujours une règle. Si vous effectuez un chargement de données, ces informations s'appliquent lorsqu'aucune règle n'est utilisée (mais il est également utile de connaître les colonnes lorsque vous concevez une règle de chargement de données).

Les sources de données contiennent généralement des colonnes de champs. Essbase prend en charge le chargement de données à partir de colonnes symétriques ou asymétriques.

Colonnes symétriques

Les colonnes symétriques ont le même nombre de membres sous elles. Dans l'exemple suivant, chaque colonne de dimension contient une colonne de membres. Par exemple, Product a une colonne sous elle (100-10 et 100-10) et Market a une colonne sous elle (Texas et Ohio).


Product    Measures   Market    Year   Scenario   
"100-10"   Sales      Texas    Jan    Actual     112
"100-10"   Sales      Ohio     Jan    Actual     145

Les colonnes du fichier suivant sont également symétriques, car Jan et Feb ont le même nombre de membres sous eux :

                                 Jan               Feb
                           Actual   Budget   Actual   Budget
"100-10"   Sales   Texas   112      110      243      215
"100-10"   Sales   Ohio    145      120      81       102

Colonnes asymétriques

Les colonnes asymétriques comportent des nombres de membres différents. Dans l'exemple suivant, les colonnes Jan et Feb sont asymétriques car Jan contient deux colonnes (Actual et Budget) et Feb contient une colonne (Budget) :

                           Jan      Jan      Feb
                           Actual   Budget   Budget
"100-10"   Sales   Texas   112      110      243
"100-10"   Sales   Ohio    145      120      81

Si un fichier contient des colonnes asymétriques, étiquetez chaque colonne avec le nom de membre approprié.

L'exemple ci-dessus est valide car le libellé Jan est désormais supérieur à Réel et Budget. Pour Essbase, il est clair que les deux colonnes sont mappées avec Jan.

L'exemple suivant n'est pas valide car les libellés de colonne sont incomplets. Le libellé Jan doit apparaître sur les colonnes Actual et Budget.

                           Jan               Feb
                           Actual   Budget   Budget
"100-10"   Sales   Texas   112      110      243
"100-10"   Sales   Ohio    145      120      81