Lektion 3: Definieren eines Datasets für den Tabellenbericht (Reporting Services)
Nachdem Sie die Datenquelle festgelegt haben, müssen Sie ein Dataset definieren. In Reporting Services sind die Daten, die Sie in Berichten verwenden, in einem Dataset enthalten. Ein Dataset umfasst einen Zeiger auf eine Datenquelle sowie eine Abfrage, die vom Bericht verwendet werden, sowie berechnete Felder und Variablen.
Sie können den Abfrage-Designer im Berichts-Designer verwenden, um die Abfrage zu entwerfen. In diesem Lernprogramm erstellen Sie eine Abfrage, die Bestellinformationen von der AdventureWorks2008R2-Datenbank abruft.
So definieren Sie eine Transact-SQL-Abfrage für Berichtsdaten:
Klicken Sie im Berichtsdatenbereich auf Neu und anschließend auf Dataset. Das Dialogfeld Dataseteigenschaften wird angezeigt.
Geben Sie in das Feld Name den Namen AdventureWorksDataset ein.
Klicken Sie auf das Optionsfeld Verwenden Sie ein in den eigenen Bericht eingebettetes Dataset. Der Name der Datenquelle, AdventureWorks, muss im Feld Datenquelle eingetragen sein, und als Abfragetyp muss Text verwendet werden.
Geben Sie die folgende Transact-SQL-Abfrage entweder manuell oder durch Kopieren und Einfügen in das Feld Abfrage ein.
SELECT soh.OrderDate AS [Date], soh.SalesOrderNumber AS [Order], pps.Name AS Subcat, pp.Name as Product, SUM(sd.OrderQty) AS Qty, SUM(sd.LineTotal) AS LineTotal FROM Sales.SalesPerson sp INNER JOIN Sales.SalesOrderHeader AS soh ON sp.BusinessEntityID = soh.SalesPersonID INNER JOIN Sales.SalesOrderDetail AS sd ON sd.SalesOrderID = soh.SalesOrderID INNER JOIN Production.Product AS pp ON sd.ProductID = pp.ProductID INNER JOIN Production.ProductSubcategory AS pps ON pp.ProductSubcategoryID = pps.ProductSubcategoryID INNER JOIN Production.ProductCategory AS ppc ON ppc.ProductCategoryID = pps.ProductCategoryID GROUP BY ppc.Name, soh.OrderDate, soh.SalesOrderNumber, pps.Name, pp.Name, soh.SalesPersonID HAVING ppc.Name = 'Clothing'
(Optional) klicken Sie auf die Schaltfläche Abfrage-Designer. Die Abfrage wird im textbasierten Abfrage-Designer angezeigt. Sie können zum grafischen Abfrage-Designer wechseln, indem Sie auf Als Text bearbeiten klicken. Wenn Sie die Ergebnisse der Abfrage anzeigen möchten, klicken Sie auf der Symbolleiste des Abfrage-Designers auf die Schaltfläche Ausführen (!).
Daraufhin werden die Daten von sechs Feldern aus vier verschiedenen Tabellen in der AdventureWorks2008R2-Datenbank angezeigt. Diese Abfrage nutzt Transact-SQL-Funktionen wie Aliase. Die Tabelle SalesOrderHeader wird z. B. soh genannt.
Klicken Sie auf OK, um den Abfrage-Designer zu schließen.
Klicken Sie auf OK, um das Dialogfeld Dataseteigenschaften zu beenden.
Die Felder des AdventureWorksDataset-Datasets werden im Bereich für die Berichtsdaten angezeigt.
Nächste Aufgabe
Damit haben Sie erfolgreich eine Abfrage angegeben, die Daten für Ihren Bericht abruft. Als Nächstes erstellen Sie das Berichtslayout. Siehe Lektion 4: Hinzufügen einer Tabelle zum Bericht (Reporting Services).