Insertion, mise à jour et suppression de membres (XMLA)

Vous pouvez utiliser les commandes Insert, Update et Drop dans XML for Analysis (XMLA) pour insérer, mettre à jour ou supprimer des membres d’une dimension compatible en écriture. Pour plus d’informations sur les dimensions compatibles avec l’écriture, consultez Write-Enabled Dimensions.

Insertion de nouveaux membres

La commande Insert insère de nouveaux membres dans des attributs spécifiés dans une dimension où l'écriture est activée.

Avant de construire la commande Insert , vous devez disposer des informations suivantes pour que les nouveaux membres soient insérés :

  • Dimension dans laquelle insérer les nouveaux membres.

  • Attribut de dimension dans lequel insérer les nouveaux membres.

  • Noms des nouveaux membres, y compris les traductions applicables pour le nom.

  • Clés des nouveaux membres. Si un attribut utilise une clé composite, la clé peut nécessiter plusieurs valeurs.

  • Valeurs pour toutes les propriétés d’attribut applicables qui ne sont pas implémentées en tant qu’autres attributs dans la dimension. Ces propriétés d’attribut incluent des opérations unaires, des transformations, des cumuls personnalisés, des propriétés de cumul personnalisées et des niveaux omis.

La commande Insert ne prend que deux propriétés :

  • Propriété Object , qui contient une référence d’objet pour la dimension dans laquelle les membres doivent être insérés. La référence d’objet contient l’identificateur de base de données, l’identificateur de cube et l’identificateur de dimension pour la dimension.

  • Propriété Attributes , qui contient un ou plusieurs éléments Attribute pour identifier les attributs dans lesquels les membres doivent être insérés. Chaque élément Attribute identifie un attribut et fournit le nom, la valeur, les traductions, l'opérateur unaire, le cumul personnalisé, les propriétés de cumul personnalisées et les niveaux ignorés pour qu'un membre unique soit ajouté à l'attribut identifié.

    Note

    Toutes les propriétés de l’élément Attribute doivent être incluses. Sinon, une erreur peut se produire.

Mise à jour des membres existants

La commande Update met à jour les membres existants dans les attributs spécifiés, en fonction des relations avec d’autres membres dans d’autres attributs, dans une dimension compatible en écriture. La commande Update peut déplacer des membres vers d’autres niveaux dans les hiérarchies contenues dans la dimension et peut être utilisée pour restructurer les hiérarchies parent-enfant définies par les attributs parents.

Avant de construire la commande Update , vous devez disposer des informations suivantes pour que les membres soient mis à jour :

  • Dimension dans laquelle mettre à jour les membres existants.

  • Attributs de dimension dans lesquels mettre à jour les membres existants.

  • Clés des membres existants. Si un attribut utilise une clé composite, la clé peut nécessiter plusieurs valeurs.

  • Valeurs pour toutes les propriétés d’attribut applicables qui ne sont pas implémentées en tant qu’autres attributs dans la dimension. Ces propriétés d’attribut incluent des opérations unaires, des traductions, des cumuls personnalisés, des propriétés de cumul personnalisées et des niveaux ignorés.

La commande Update ne prend que trois propriétés requises :

  • Propriété Object , qui contient une référence d’objet pour la dimension dans laquelle les membres doivent être mis à jour. La référence d’objet contient l’identificateur de base de données, l’identificateur de cube et l’identificateur de dimension pour la dimension.

  • Propriété Attributes , qui contient un ou plusieurs éléments Attribute pour identifier les attributs dans lesquels les membres doivent être mis à jour. L’élément Attribute identifie un attribut et fournit le nom, la valeur, les traductions, l’opérateur unaire, le cumul personnalisé, les propriétés de cumul personnalisées et les niveaux ignorés pour un membre unique mis à jour en rapport avec l’attribut identifié.

    Note

    Toutes les propriétés de l’élément Attribute doivent être incluses. Sinon, une erreur peut se produire.

  • Propriété Where , qui contient un ou plusieurs éléments Attribute qui limitent les attributs dans lesquels les membres doivent être mis à jour. La propriété Where est essentielle pour limiter une commande Update à des instances spécifiques d’un membre. Si la propriété Where n’est pas spécifiée, toutes les instances d’un membre donné sont mises à jour. Par exemple, il existe trois clients pour lesquels vous souhaitez changer le nom de la ville de Redmond à Bellevue. Pour modifier le nom de la ville, vous devez fournir une propriété Where qui identifie les trois membres de l’attribut Customer pour lequel les membres de l’attribut City doivent être modifiés. Si vous ne fournissez pas cette propriété Where , chaque client dont le nom de ville est actuellement Redmond aurait le nom de ville de Bellevue après l’exécution de la commande Update .

    Note

    À l’exception des nouveaux membres, la commande Update ne peut mettre à jour que les valeurs de clé d’attribut pour les attributs non inclus dans la clause Where . Par exemple, le nom de la ville ne peut pas être mis à jour lorsqu’un client est mis à jour ; sinon, le nom de la ville est modifié pour tous les clients.

Mise à jour des membres dans les attributs de parent

Pour prendre en charge les attributs parents, la commande Update et les propriétés facultatives MoveWithDescendants MoveWithDescendants. La définition de la propriété MoveWithDescendants sur true indique que les descendants du membre parent doivent également être déplacés avec le membre parent lorsque l’identificateur de ce membre parent change. Si cette valeur est définie sur false, le déplacement d’un membre parent entraîne la promotion des descendants immédiats de ce membre parent vers le niveau dans lequel le membre parent réside précédemment.

Lors de la mise à jour des membres dans un attribut parent, la commande Update ne peut pas mettre à jour les membres dans d’autres attributs.

Suppression des membres existants

Avant de construire la commande Drop , vous devez disposer des informations suivantes pour que les membres soient supprimés :

  • Dimension dans laquelle supprimer des membres existants.

  • Attributs de dimension dans lesquels supprimer des membres existants.

  • Clés des membres existants à supprimer. Si un attribut utilise une clé composite, la clé peut nécessiter plusieurs valeurs.

La commande Drop ne prend que deux propriétés requises :

  • Propriété Object , qui contient une référence d’objet pour la dimension dans laquelle les membres doivent être supprimés. La référence d’objet contient l’identificateur de base de données, l’identificateur de cube et l’identificateur de dimension pour la dimension.

  • Propriété Where , qui contient un ou plusieurs éléments Attribute pour limiter les attributs dans lesquels les membres doivent être supprimés. La propriété Where est essentielle pour limiter une commande Drop à des instances spécifiques d’un membre. Si la commande Where n’est pas spécifiée, toutes les instances d’un membre donné sont supprimées. Par exemple, il existe trois clients que vous souhaitez supprimer de Redmond. Pour supprimer ces clients, vous devez fournir une propriété Where qui identifie les trois membres de l’attribut Customer à supprimer et le membre Redmond de l’attribut City dont les trois clients doivent être supprimés. Si la propriété Where spécifie uniquement le membre Redmond de l’attribut City, chaque client associé à Redmond est supprimé par la commande Drop . Si la propriété Where spécifie uniquement les trois membres de l’attribut Customer, les trois clients sont supprimés entièrement par la commande Drop .

    Note

    Les éléments Attribute inclus dans une commande Drop doivent contenir uniquement les propriétés AttributeName et Keys . Sinon, une erreur peut se produire.

Suppression de membres dans les attributs parents

La définition de la propriété DeleteWithDescendants indique que les descendants d’un membre parent doivent également être supprimés avec le membre parent. Si cette valeur est définie sur false, les descendants immédiats du membre parent sont promus au niveau dans lequel le membre parent réside précédemment.

Important

Un utilisateur doit uniquement disposer d’autorisations de suppression pour le membre parent pour supprimer à la fois le membre parent et ses descendants. Un utilisateur n’a pas besoin d’autorisations de suppression sur les descendants.

Voir aussi

Élément Drop (XMLA)
Insérer Élément (XMLA)
Élément de mise à jour (XMLA)
Définition et identification d’objets (XMLA)
Développement avec XMLA dans Analysis Services