Einfügen, Aktualisieren und Löschen von Elementen (XMLA)
Sie können die Befehle Einfügen, Aktualisieren und Löschen in XML for Analysis (XMLA) verwenden, um Elemente aus einer Dimension mit aktivierten Schreibzugriffen bzw. Elemente aus einer Dimension mit Aktivierter Schreibberechtigung ein- bzw. zu aktualisieren bzw. zu löschen. Weitere Informationen zu Dimensionen mit aktivierten Schreibzugriffen finden Sie unter Dimensionen mit aktivierter Schreibberechtigung.
Einfügen von neuen Elementen
Der Insert-Befehl fügt neue Elemente in angegebene Attribute in einer Dimension mit aktivierten Schreibzugriffen ein.
Vor dem Erstellen des Insert-Befehls sollten die folgenden Informationen für die neuen Elemente verfügbar sein, die eingefügt werden sollen:
Die Dimension, in die die neuen Elemente eingefügt werden sollen.
Das Dimensionsattribut, in die die neuen Elemente eingefügt werden sollen.
Die Namen der neuen Elemente, einschließlich alle entsprechenden Übersetzungen für den Namen.
Die Schlüssel der neuen Elemente. Wenn ein Attribut einen zusammengesetzten Schlüssel verwendet, erfordert der Schlüssel möglicherweise mehrere Werte.
Werte für alle entsprechenden Attributeigenschaften, die nicht als andere Attribute innerhalb der Dimension implementiert wurden. Derartige Attributeigenschaften umfassen unäre Operationen, Übersetzungen, benutzerdefinierte Rollups, benutzerdefinierte Rollupeigenschaften und übersprungene Ebenen.
Der Insert-Befehl hat nur zwei Eigenschaften:
Die Object-Eigenschaft , die einen Objektverweis für die Dimension enthält, in die die Elemente eingefügt werden sollen. Der Objektverweis enthält den Datenbankbezeichner, den Cubebezeichner sowie den Dimensionsbezeichner für die Dimension.
Die Attributes-Eigenschaft , die ein oder mehrere Attribute-Elemente enthält, um die Attribute zu identifizieren, in die Elemente eingefügt werden sollen. Jedes Attribute-Element identifiziert ein Attribut und stellt Den Namen, Wert, Übersetzungen, unären Operator, benutzerdefinierten Rollup, benutzerdefinierte Rollupeigenschaften und übersprungene Ebenen für ein einzelnes Element dar, das dem identifizierten Attribut hinzugefügt werden soll.
Hinweis
Alle Eigenschaften für das Attribute-Element müssen eingeschlossen werden. Andernfalls tritt möglicherweise ein Fehler auf.
Aktualisieren von vorhandenen Elementen
Der Update-Befehl aktualisiert vorhandene Elemente in angegebenen Attributen basierend auf Beziehungen mit anderen Membern in anderen Attributen in einer dimension mit aktivierten Schreibzugriffen. Der Update-Befehl kann Elemente auf andere Ebenen in Hierarchien verschieben, die in der Dimension enthalten sind, und zum Umstrukturieren über- und untergeordneter Hierarchien verwendet werden, die von übergeordneten Attributen definiert werden.
Vor dem Erstellen des Update-Befehls sollten die folgenden Informationen für die zu aktualisierenden Member verfügbar sein:
Die Dimension, in der die vorhandenen Elemente aktualisiert werden sollen.
Die Dimensionsattribute, in denen die vorhandenen Elemente aktualisiert werden sollen.
Die Schlüssel der vorhandenen Elemente. Wenn ein Attribut einen zusammengesetzten Schlüssel verwendet, erfordert der Schlüssel möglicherweise mehrere Werte.
Werte für alle entsprechenden Attributeigenschaften, die nicht als andere Attribute innerhalb der Dimension implementiert wurden. Derartige Attributeigenschaften umfassen unäre Operationen, Übersetzungen, benutzerdefinierte Rollups, benutzerdefinierte Rollupeigenschaften und übersprungene Ebenen.
Der Update-Befehl nimmt nur drei erforderliche Eigenschaften an:
Die Object-Eigenschaft , die einen Objektverweis für die Dimension enthält, in der die Elemente aktualisiert werden sollen. Der Objektverweis enthält den Datenbankbezeichner, den Cubebezeichner sowie den Dimensionsbezeichner für die Dimension.
Die Attributes-Eigenschaft , die ein oder mehrere Attribute-Elemente enthält, um die Attribute zu identifizieren, in denen Elemente aktualisiert werden sollen. Das Attribute-Element identifiziert ein Attribut und stellt name, value, translations, unary operator, custom rollup, custom rollup properties und skipped levels für ein einzelnes Element, das für das identifizierte Attribut aktualisiert wurde, zur Hand.
Hinweis
Alle Eigenschaften für das Attribute-Element müssen eingeschlossen werden. Andernfalls tritt möglicherweise ein Fehler auf.
Die Where-Eigenschaft , die ein oder mehrere Attribute-Elemente enthält, die die Attribute einschränken, in denen Member aktualisiert werden sollen. Die Where-Eigenschaft ist entscheidend, um einen Update-Befehl auf bestimmte Instanzen eines Mitglieds zu beschränken. Wenn die Where-Eigenschaft nicht angegeben wird, werden alle Instanzen eines bestimmten Mitglieds aktualisiert. Angenommen, Sie möchten den Stadtnamen für drei Kunden von Redmond zu Bellevue ändern. Um den Namen der Stadt zu ändern, müssen Sie eine Where-Eigenschaft angeben, die die drei Elemente im Customer-Attribut identifiziert, für die die Elemente im City-Attribut geändert werden sollen. Wenn Sie diese Where-Eigenschaft nicht angeben, hat jeder Kunde, dessen Stadtname derzeit Redmond ist, nach dem Ausführen des Update-Befehls den Stadtnamen Bellevue.
Hinweis
Mit Ausnahme neuer Member kann der Update-Befehl nur Attributschlüsselwerte für Attribute aktualisieren, die nicht in der Where-Klausel enthalten sind. Der Stadtname kann beispielsweise nicht aktualisiert werden, wenn ein Kunde aktualisiert wird, andernfalls wird der Stadtname für alle Kunden geändert.
Aktualisieren von Elementen in übergeordneten Attributen
Um übergeordnete Attribute zu unterstützen, gibt der Update-Befehl die optionalen Eigenschaften MoveWithDescendantsMovewithDescedants aus. Das Festlegen der MoveWithDescendants-Eigenschaft auf TRUE gibt an, dass die Nachfolger des übergeordneten Elements auch mit dem übergeordneten Element verschoben werden sollen, wenn sich der Bezeichner dieses übergeordneten Elements ändert. Wenn dieser Wert auf „False“ festgelegt wird, werden die unmittelbaren Nachfolger eines übergeordneten Elements zu der Ebene höhergestuft, auf der sich das übergeordnete Element zuvor befand, wenn dieses übergeordnete Element verschoben wird.
Beim Aktualisieren von Membern in einem übergeordneten Attribut kann der Update-Befehl elemente in anderen Attributen nicht aktualisieren.
Löschen von vorhandenen Elementen
Vor dem Erstellen des Drop-Befehls sollten ihnen die folgenden Informationen zur Verfügung stehen, damit die Member gelöscht werden können:
Die Dimension, in der die vorhandenen Elemente gelöscht werden sollen.
Die Dimensionsattribute, in denen die vorhandenen Elemente gelöscht werden sollen.
Die Schlüssel der zu löschenden vorhandenen Elemente. Wenn ein Attribut einen zusammengesetzten Schlüssel verwendet, erfordert der Schlüssel möglicherweise mehrere Werte.
Der Drop-Befehl nimmt nur zwei erforderliche Eigenschaften an:
Die Object-Eigenschaft , die einen Objektverweis für die Dimension enthält, in der die Elemente gelöscht werden sollen. Der Objektverweis enthält den Datenbankbezeichner, den Cubebezeichner sowie den Dimensionsbezeichner für die Dimension.
Die Where-Eigenschaft , die ein oder mehrere Attribute-Elemente enthält, um die Attribute zu beschränken, in denen Elemente gelöscht werden sollen. Die Where-Eigenschaft ist entscheidend, um einen Drop-Befehl auf bestimmte Instanzen eines Mitglieds zu beschränken. Wenn der Where-Befehl nicht angegeben wird, werden alle Instanzen eines bestimmten Mitglieds gelöscht. Angenommen, Sie möchten in Redmond drei Kunden löschen. Um diese Kunden zu verdringen, müssen Sie eine Where-Eigenschaft angeben, die die drei Elemente im Customer-Attribut identifiziert, die entfernt werden sollen, und das Redmond-Mitglied des City-Attributs, aus dem die drei Kunden entfernt werden sollen. Wenn die Where-Eigenschaft nur das Redmond-Element des City-Attributs angibt, wird jeder Kunde, der Redmond zugeordnet ist, durch den Drop-Befehl gelöscht. Wenn die Where-Eigenschaft nur die drei Elemente im Customer-Attribut angibt, werden die drei Kunden vollständig mit dem Drop-Befehl gelöscht.
Hinweis
Die Attribute-Elemente, die in einem Drop-Befehl enthalten sind, dürfen nur die AttributeName- und Keys-Eigenschaften enthalten. Andernfalls tritt möglicherweise ein Fehler auf.
Löschen von Elementen in übergeordneten Attributen
Das Festlegen der DeleteWithDescendants-Eigenschaft gibt an, dass die Nachfolger eines übergeordneten Elements auch mit dem übergeordneten Element gelöscht werden sollen. Wenn dieser Wert auf „False“ festgelegt wird, werden die unmittelbaren Nachfolger eines übergeordneten Elements zu der Ebene höhergestuft, auf der sich das übergeordnete Element zuvor befand.
Wichtig
Ein Benutzer muss lediglich über Löschberechtigungen für das übergeordnete Element verfügen, um sowohl das übergeordnete Element als auch die Nachfolger zu löschen. Ein Benutzer benötigt keine Löschberechtigungen für die Nachfolger.
Weitere Informationen
Drop-Element (XMLA)
Insert-Element (XMLA)
Update-Element (XMLA)
Definieren und Identifizieren von Objekten (XMLA)
Entwickeln mit XMLA in Analysis Services