Options de stockage des valeurs de données par les membres
Vous pouvez déterminer comment et quand Essbase stocke les valeurs de données d'un membre. Par exemple, vous pouvez indiquer à Essbase de calculer la valeur d'un membre uniquement lorsqu'un utilisateur le demande, puis d'ignorer la valeur de données.
Chaque propriété de stockage de membre disponible est décrite comme suit.
Tableau 5-4 Choix des propriétés de stockage
| Propriété de stockage | Comportement |
|---|---|
|
Magasin |
Stocke la valeur de données avec le membre. |
|
Calcul dynamique |
Ne calcule pas la valeur de données tant qu'un utilisateur ne l'a pas demandée, puis la rejette. |
|
Information seule |
Les membres Label Only permettent de regrouper ou d'étiqueter d'autres membres. Aucune donnée n'est stockée dans la base de données pour les membres Label Only. |
|
Membre partagé |
Partage des valeurs entre les membres. Par exemple, dans la base de données Sample Basic, le membre 100-20 est stocké sous le parent 100 et partagé sous le parent Diet. |
|
Ne jamais partager |
Ne permet pas le partage implicite de membres. Les membres marqués comme Never share ne peuvent être partagés que explicitement. Pour partager explicitement un membre, créez-le avec le même nom et étiquetez-le comme partagé. |
Pour définir les propriétés de stockage des membres à l'aide de l'interface Web Essbase, ouvrez l'outline pour la modifier, sélectionnez un membre et modifiez ses propriétés générales. Modifiez le type de stockage de données, le cas échéant. Pour plus d'informations, reportez-vous à Définition des propriétés générales.
Si vous utilisez un classeur d'application ou le concepteur de cubes pour définir les propriétés de stockage des membres, mettez à jour la propriété STORAGE avec le code approprié, en regard de chaque membre de la feuille de calcul de dimension appropriée. S est destiné au stockage, X à Calcul dynamique, O à étiquette uniquement et N à jamais partager. Pour plus d'informations, voir Comprendre les feuilles de calcul de dimension.
Membres stockés
Les membres stockés contiennent des valeurs calculées qui sont stockées avec le membre dans la base de données Essbase après le calcul. Par défaut, les membres sont définis comme stockés.
Membres de calcul dynamique
Lorsqu'un membre est Calcul dynamique, Essbase ne calcule pas la valeur de ce membre tant qu'un utilisateur ne le demande pas. Une fois que l'utilisateur l'a consulté, Essbase ne stocke pas la valeur de ce membre.
Essbase marque automatiquement les membres des dimensions d'attribut comme calcul dynamique. Il est impossible de modifier ce paramètre.
Voir aussi Calcul dynamique des valeurs de données.
Membres à information seule
Les membres de type Libellé uniquement dans Essbase n'ont aucune donnée associée. Utilisez-les pour regrouper des membres ou pour faciliter la navigation et le reporting à partir de Smart View. En règle générale, vous devez attribuer aux membres label only la propriété "no consolidation".
Vous ne pouvez pas associer des attributs à des membres de type libellé uniquement. Si vous marquez un membre de dimension de base ayant des associations d'attributs comme libellé uniquement, Essbase enlève les associations d'attributs et affiche un message d'avertissement.
Un descendant d'un membre de libellé uniquement ne peut pas être marqué comme calcul dynamique. Dans l'exemple suivant, lors de la vérification de l'outline, Essbase émet un message d'erreur indiquant que ChildB ne peut pas être balisé en tant que libellé uniquement :
ParentA = Label Only
ChildB = Label Only
DescendantC = Dynamic CalcLe marquage de DescendantC comme données de stockage résout le problème.
Membres partagés
Les membres partagés Essbase peuvent vous aider à calculer le même membre pour plusieurs parents dans l'outline, ce qui peut être utile lorsqu'un élément appartient à plusieurs catégories. Les valeurs de données associées à un membre partagé proviennent d'un autre membre de l'outline portant le même nom, appelé membre prototype.
Le membre partagé stocke un pointeur vers les données contenues dans le membre prototype et les données ne sont stockées qu'une seule fois. Pour définir un membre comme partagé, un membre prototype du même nom doit exister. Par exemple, dans la base de données Sample.Basic, le membre 100-20 sous 100 stocke les données de ce membre. Le membre 100-20 sous Diet indique cette valeur.
Les membres partagés sont généralement utilisés pour calculer le même membre entre plusieurs parents, par exemple pour calculer un membre Diet Cola dans les parents 100 et Diet.
L'utilisation de membres partagés permet d'utiliser des membres de façon répétée dans une dimension. Essbase stocke la valeur de données une seule fois, mais elle s'affiche à plusieurs emplacements. Le stockage de la valeur des données une seule fois permet d'économiser de l'espace et d'améliorer l'efficacité du traitement.
Pour en savoir plus sur les membres partagés, consultez les sections suivantes.
- Lignes directrices pour les membres communs
- Extraction de membre partagé lors de l'analyse descendante
- Membres partagés implicites
Remarques :
Les membres portant le même nom peuvent être des membres en double au lieu de membres partagés. Reportez-vous à Noms de membre en double dans les outlines.
Lignes directrices pour les membres communs
Les membres partagés Essbase ne doivent pas avoir d'enfants, d'attributs définis par l'utilisateur, d'attributs ou de formules. Ils doivent être dans la même dimension que leurs prototypes, et les suivre dans l'ordre du contour. Les membres partagés peuvent avoir des alias uniques et ils peuvent avoir le même nom que les autres membres.
Suivez ces instructions pour éviter les erreurs lors de la création de membres partagés :
-
Les membres partagés doivent être dans la même dimension que leur membre prototype. Par exemple, les deux membres 100-20 de la base de données Sample.Basic se trouvent dans la dimension Product.
-
Le membre prototype doit précéder le membre partagé dans l'ordre d'outline.
-
Les membres partagés ne peuvent pas avoir d'enfants.
-
Un nombre illimité de membres partagés peut avoir le même nom.
-
Les attributs définis par l'utilisateur ou les formules ne peuvent pas être affectés à des membres partagés.
-
Vous pouvez créer un membre partagé pour un membre dont le nom est en double.
-
Les attributs ne peuvent pas être associés à des membres partagés.
-
Si les propriétés des comptes sont affectées à des membres partagés, les valeurs de ces propriétés sont extraites du membre prototype, même si les propriétés des comptes du membre partagé sont modifiées.
-
Les alias peuvent être affectés à des membres partagés.
-
Si un alias est vide pour un membre partagé, Essbase utilise l'alias du membre stocké.
-
Si vous affectez un alias à un membre partagé et que vous modifiez l'alias d'un membre prototype, l'alias du membre partagé ne change pas.
-
Un membre prototype doit être situé avant son membre partagé.
-
Evitez les relations complexes entre les prototypes et les membres partagés qui feront partie d'un calcul d'attribut, ou un calcul peut renvoyer des résultats inattendus. Reportez-vous à Calcul d'attribut et membres partagés.
-
Vous ne pouvez pas placer un membre partagé et son membre prototype sous le même parent. Dans une outline de membres en double, les semblables doivent être uniques.
-
Dans les clients Grid (par exemple, Smart View), les membres partagés peuvent facilement être différenciés de leurs membres prototype, car vous pouvez indiquer qu'ils doivent être affichés avec un nom qualifié (par exemple, [Parent].[Enfant]). Les membres partagés peuvent être affichés avec des noms qualifiés même si vous n'avez pas défini l'outline pour activer les noms de membre en double. En outre, vous pouvez utiliser des noms de membre qualifiés pour rechercher des membres partagés dans la grille ou utiliser la sélection de membres.
Extraction de membre partagé lors de l'analyse descendante
Lors des opérations de zoom avant (exploration vers le bas), Essbase extrait les membres de prototype au lieu des membres partagés, lorsqu'ils sont disponibles. Le zoom arrière (exploration) sur un membre partagé extrait le parent du membre partagé plutôt que le prototype.
Essbase extrait les membres partagés lors de l'exploration vers le bas, en fonction de leur emplacement dans la feuille de calcul ou le client de grille. Essbase suit les règles suivantes lors de l'extraction de la grille :
-
extrait les membres de prototype (et non leurs membres partagés) par défaut.
-
extrait d'abord du bas d'une feuille de calcul.
-
Si le parent d'un membre partagé est un semblable du membre prototype de l'un des membres partagés, extrait le membre prototype.
Exemple de membres partagés d'une dimension unique
Si vous créez une dimension de test avec tous les membres partagés en fonction des prototypes de membres de la dimension Est à partir de l'outline Sample.Basic, l'outline est similaire à celle illustrée dans la figure 5-1 :
Figure 5-1 Membres partagés d'une dimension unique

Le zoom arrière sur un membre partagé renvoie le parent partagé, et non le membre prototype. Par exemple, si vous effectuez un zoom arrière sur la Floride, Essbase renvoie le parent partagé, test.
Si vous extrayez uniquement les enfants d'East, tous les résultats proviennent des membres de prototype car Essbase extrait les membres de prototype par défaut.
Toutefois, si vous extrayez des données avec les enfants de test au-dessus dans la feuille de calcul, Essbase extrait les membres partagés :
New York
Massachusetts
Florida
Connecticut
New Hampshire
testSi vous déplacez test au-dessus de ses deux derniers enfants, Essbase extrait les trois premiers enfants en tant que membres partagés, mais les deux derniers en tant que membres prototypes. De même, si vous insérez un membre au milieu de la liste ci-dessus qui n'était pas un semblable des membres partagés (par exemple, Californie insérée entre la Floride et le Connecticut), Essbase extrait les membres partagés uniquement entre le non-sibling et le parent (dans ce cas, entre la Californie et le test).
Exemple d'extraction avec des membres partagés de génération croisée
Vous pouvez modifier l'outline Sample.Basic pour créer un membre partagé dont la contrepartie de membre prototype est un semblable à son propre parent, comme illustré dans la figure 5-2 :
Figure 5-2 Récupération avec des membres partagés de génération croisée

Si vous créez une feuille de calcul avec des membres partagés dans cet ordre, Essbase extrait tous les membres partagés, sauf le membre prototype Ouest, et non le membre partagé Ouest :
West
New York
Massachusetts
Connecticut
New Hampshire
testEssbase extrait les membres dans cet ordre car test est un parent de west et un semblable de son équivalent de membre prototype, West.
Membres partagés implicites
Si le partage implicite est activé, les membres parent partagent implicitement la valeur de leurs membres enfant uniques (lorsqu'il n'y en a qu'un) ou de leur seul enfant de consolidation (lorsqu'il n'y en a qu'un seul qui consolidate, ce qui signifie qu'il a un opérateur autre que ~ ou ^).
Ces parents sont des membres partagés implicites, sauf si :
- Ils ont une formule
- Ils sont définis sur Ne jamais partager
- partage implicite non activé
Par défaut, le partage implicite n'est pas activé. A partir d'Essbase 21c, vous pouvez l'activer si nécessaire à l'aide du paramètre de configuration IMPLIED_SHARE_ON_CREATE.
Si le partage implicite est activé, Essbase suppose (ou implique) une relation de membre partagé dans les situations suivantes :
-
Un parent n'a qu'un enfant. Dans ce cas, le parent et l'enfant contiennent les mêmes données. Essbase ignore la propriété de consolidation sur l'enfant et ne stocke les données qu'une seule fois. Ainsi, le parent a une relation partagée implicite avec l'enfant. Dans l'exemple suivant, le parent 500 n'a qu'un enfant, 500-10, de sorte que le parent partage la valeur de cet enfant :
500 (+) 500-10 (+) -
Un parent n'a qu'un enfant consolidant le parent. Si le parent a quatre enfants, mais que trois sont marqués comme n'étant pas consolidés, le parent et l'enfant qui sont consolidés contiennent les mêmes données. Essbase ignore la propriété de consolidation sur l'enfant et ne stocke les données qu'une seule fois. Ainsi, le parent a une relation partagée implicite avec l'enfant. Dans l'exemple suivant, le parent 500 n'a qu'un seul enfant, 500-10, qui revient à lui. Les autres enfants sont marqués comme Non consolidé(~), de sorte que le parent partage implicitement la valeur de 500-10.
500 (+) 500-10 (+) 500-20 (~) 500-30 (~)
Les cas ci-dessus ne s'appliquent pas lorsque le membre parent a une formule.
Si vous ne voulez pas qu'un membre soit partagé implicitement, marquez le parent comme Jamais partagé afin que les données soient dupliquées à la place.