Share via


Definieren des Analysis Services-Ereignisanbieters

Wenn Sie den Analysis Services-Ereignisanbieter verwenden möchten, müssen Sie einen gehosteten Ereignisanbieter in der Anwendungsdefinition definieren. In diesem Thema sind die Eigenschaftswerte und Argumente dokumentiert, die für den Analysis Services-Ereignisanbieter erforderlich sind. Außerdem sind Beispiele für jeden MDX-Abfragetyp (statisch und dynamisch) enthalten.

ms171054.note(de-de,SQL.90).gifHinweis:
Der Analysis Services-Ereignisanbieter stellt eine Verbindung mit der angegebenen Analysis Services-Instanz her und fragt die angegebene Analysis Services-Datenbank ab. Das Konto, das von dem Windows-Dienst oder der Anwendung verwendet wird, der bzw. die den Ereignisanbieter ausführt, muss in der Lage sein, eine Verbindung mit der Instanz herzustellen, und muss über SELECT-Berechtigungen in der Datenbank verfügen.

Eigenschaften

Verwenden Sie die folgenden Richtlinien, wenn Sie die Eigenschaften des Analysis Services-Ereignisanbieters definieren.

  • ProviderName (erforderlich) muss ein innerhalb der Anwendung eindeutiger Name sein.
  • ClassName (erforderlich) muss AnalysisServicesProvider sein.
  • Verwenden Sie nicht die AssemblyName-Eigenschaft. Notification Services sucht in der Assembly Microsoft.SqlServer.NotificationServices.dll nach Informationen zu Standardereignisanbietern.
  • SystemName (erforderlich) ist normalerweise der Name des Computers, auf dem dieser gehostete Ereignisanbieter ausgeführt wird. Weitere Informationen finden Sie unter Definieren von gehosteten Ereignisanbietern.
  • Definieren Sie einen Timeoutwert (optional). Der Standardtimeoutwert ist 5 Minuten.
  • Definieren Sie einen Zeitplan (erforderlich). Weitere Informationen finden Sie unter Definieren von gehosteten Ereignisanbietern.

Argumente

Der Analysis Services-Ereignisanbieter verwendet acht benannte Argumente. Sie können sie in beliebiger Reihenfolge angeben:

  • EventClassName (erforderlich) gibt den Namen der Ereignisklasse an, für die dieser Ereignisanbieter gemäß seiner Konfiguration Ereignisse übermittelt.
  • AnalysisServicesInstance (erforderlich) gibt den Namen der Analysis Services-Instanz an, mit der der Ereignisanbieter eine Verbindung herstellt. Die Instanz befindet sich möglicherweise auf einem Remotecomputer.
  • AnalysisServicesDatabase (erforderlich) gibt den Namen der Analysis Services-Datenbank an, die der Ereignisanbieter abfragt.
  • MDXQuery wird für statische Abfragen benötigt und darf nicht für dynamische Abfragen verwendet werden.
    Beim MDXQuery-Wert handelt es sich um eine statische MDX-Abfrage, die Ereignisdaten als Wert sammelt. Die Abfrage muss zweidimensionale Daten mit Spalten zurückgeben, die genau den Ereignisfeldern der angegebenen Ereignisklasse in derselben Reihenfolge entsprechen. Für alle Ereignisfelder müssen Werte zurückgegeben werden.
  • RowsQuery gibt eine Transact-SQL-Abfrage an, deren Ergebnis von der XSL-Transformation verwendet wird, um Elemente für die ROWS-Achse der MDX-Abfrage dynamisch zu erstellen. Verwenden Sie dieses Argument nicht für statische Abfragen.
  • SlicerQuery gibt eine Transact-SQL-Abfrage an, deren Ergebnis von der XSL-Transformation verwendet wird, um den Slicerteil (die WHERE-Klausel von MDX) der MDX-Abfrage dynamisch zu erstellen. Verwenden Sie dieses Argument nicht für statische Abfragen.
  • XsltFileName (erforderlich, wenn RowsQuery oder SlicerQuery verwendet wird) ist der Pfad zu einem XSLT-Dateinamen, der zur Transformation des Ergebnisses von RowsQuery (und ggf. SlicerQuery) in eine vollständige MDX-Abfrage verwendet wird. Eine XSLT-Beispieldatei finden Sie unter MDX-Abfragen für Notification Services. Dieses Argument darf nicht angegeben werden, wenn eine statische MDX-Abfrage verwendet wird.

Weitere Informationen zum Definieren eines Ereignisanbieters finden Sie unter Definieren von gehosteten Ereignisanbietern.

Definition mit einer statischen Abfrage

Der folgende XML-Code aus einer Anwendungsdefinitionsdatei (ADF) zeigt eine Beispieldefinition für einen Analysis Services-Ereignisanbieter, bei der eine statische Abfrage verwendet wird.

<HostedProvider>
    <ProviderName>StaticASEventProvider</ProviderName>
    <ClassName>AnalysisServicesProvider</ClassName>
    <SystemName>%NSSystem%</SystemName>
    <Schedule>
        <Interval>P0DT00H00M02S</Interval>
    </Schedule>
    <ProviderTimeout>PT7M</ProviderTimeout>
    <Arguments>
        <Argument>
            <Name>EventClassName</Name>
            <Value>KPIEvents</Value>
        </Argument>
        <Argument>
            <Name>AnalysisServicesInstance</Name>
            <Value>%ASInstance%</Value>
        </Argument>
        <Argument>
            <Name>AnalysisServicesDatabase</Name>
            <Value>Adventure Works</Value>
        </Argument>
        <Argument>
            <Name>MDXQuery</Name>
            <Value>SELECT
      {[Measures].[Reseller Gross Profit Margin], 
      [Measures].[Reseller Order Quantity], 
      [Measures].[Reseller Sales Amount]} ON COLUMNS,
      {[Employee].[Employees].[Ken J. Snchez], 
      [Employee].[Employees].[Amy E. Alberts]} ON ROWS
FROM [Adventure Works] 
WHERE [Date].[Calendar].[CY 2002]</Value>
        </Argument>
    </Arguments>
</HostedProvider>

Definition mit einer dynamischen Abfrage

Der folgende XML-Code aus einer Anwendungsdefinitionsdatei (ADF) zeigt eine Beispieldefinition für einen Analysis Services-Ereignisanbieter, bei der eine dynamische Abfrage verwendet wird.

<HostedProvider>
    <ProviderName>DynamicASEventProvider</ProviderName>
    <ClassName>AnalysisServicesProvider</ClassName>
    <SystemName>%NSSystem%</SystemName>
    <Schedule>
        <Interval>P0DT00H00M02S</Interval>
    </Schedule>
    <Arguments>
        <Argument>
            <Name>EventClassName</Name>
            <Value>KPIEvents</Value>
        </Argument>
        <Argument>
            <Name>AnalysisServicesInstance</Name>
            <Value>%ASInstance%</Value>
        </Argument>
        <Argument>
            <Name>AnalysisServicesDatabase</Name>
            <Value>Adventure Works</Value>
        </Argument>
        <Argument>
            <Name>RowsQuery</Name>
            <Value>SELECT EmployeeFullName as Employee
                   FROM NSKPISubscriptionsView</Value>
        </Argument>
        <Argument>
            <Name>SlicerQuery</Name>
            <Value>SELECT DATEPART(year, DATEADD(year, -2, GETDATE()))</Value>
        </Argument>
        <Argument>
            <Name>XsltFileName</Name>
            <Value>C:\NS\Transforms\MDXTransform.xslt</Value>
        </Argument>
    </Arguments>
</HostedProvider>

Siehe auch

Konzepte

Definieren von gehosteten Ereignisanbietern
MDX-Abfragen für Notification Services

Andere Ressourcen

Standardereignisanbieter
Analysis Services-Ereignisanbieter
Schlüsselkonzepte in MDX (MDX)

Hilfe und Informationen

Informationsquellen für SQL Server 2005