Entwerfen von gespeicherten Prozeduren

Gilt für: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Sowohl das Administrative Objektmodell Analysis Management Objects (AMO) als auch das clientorientierte Objektmodell Microsoft ActiveX® Data Objects (MULTIDIMENSIONAL) (ADO MD) sind in gespeicherten Prozeduren verfügbar.

Gespeicherte Prozeduren müssen sich in ihrem Gültigkeitsbereich (entweder der Server oder die Datenbank) befinden, um auf der aufzurufenden MDX-Ebene (Multidimensional Expressions) sichtbar zu sein. Nachdem eine gespeicherte Prozedur aufgerufen wurde, ist ihr Gültigkeitsbereich jedoch nicht auf Aktionen unter dem übergeordneten Element begrenzt. Eine gespeicherte Prozedur kann überall auf dem Server Änderungen vornehmen. Dabei müssen lediglich die Sicherheitseinschränkungen des Benutzerprozesses, der sie aufruft, oder die Einschränkungen der Transaktion beachtet werden, in der sie ausgeführt wird.

Serverbereichsprozeduren sind in allen Kontexten auf dem Server verfügbar. Gespeicherte Datenbankbereichsprozeduren sind nur im Datenbankkontext der Datenbank sichtbar, in der sie definiert sind.

Wie jede andere MDX-Funktion muss eine gespeicherte Prozedur aufgelöst werden, bevor eine MDX-Sitzung fortgesetzt werden kann. Während ihrer Ausführung sperren gespeicherte Prozeduren MDX-Sitzungen. Sofern nicht spezielle Gründe für das Anhalten einer MDX-Sitzung bei wartenden Benutzerinteraktionen vorliegen, wird von Benutzerinteraktionen (z. B. Dialogfeldern) abgeraten.

Abhängige Assemblys

Alle abhängigen Assemblys müssen in eine instance von SQL Server Analysis Services geladen werden, um von der Common Language Runtime (CLR) gefunden zu werden. SQL Server Analysis Services speichert die abhängigen Assemblys im selben Ordner wie die Standard Assembly, sodass die CLR automatisch alle Funktionsverweise auf Funktionen in diesen Assemblys auflöst.

Weitere Informationen

Verwaltung von mehrdimensionalen Modellassemblys
Definieren gespeicherter Prozeduren