Lezione 3: Definire un set di dati per il report tabella - SQL Server Reporting Services

Dopo aver definito l'origine dati per il report impaginato, è necessario definire un set di dati. In Reporting Services i dati usati nei report sono contenuti in un set di dati. Un set di dati include un puntatore a un'origine dati, la query usata dal report, campi calcolati e variabili.

Per definire il set di dati, usare Progettazione query in Progettazione report. In questa esercitazione si creerà una query che recupera le informazioni relative agli ordini di vendita dal database AdventureWorks2022.

Definire una query Transact-SQL per i dati del report

  1. Nel riquadro Dati del report, selezionare Nuovo>Set di dati.... Verrà visualizzata la finestra di dialogo Proprietà set di dati con la sezione Query visualizzata.

    Screenshot of the Dataset Properties dialog box showing the query section.

  2. Nella casella di testo Nome digitare "AdventureWorksDataset".

  3. Quindi, selezionare il pulsante di opzione Utilizzare un set di dati incorporato nel report sottostante.

  4. Nella casella a discesa Origine dati selezionare AdventureWorks2022.

  5. Per Tipo di query selezionare il pulsante di opzione Testo.

  6. Digitare oppure copiare e incollare la query Transact-SQL seguente nella casella di testo Query.

    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'
    
  7. (Facoltativo) Selezionare il pulsante Progettazione query. La query verrà visualizzata nella finestra Progettazione query basata su testo. Visualizzare i risultati della query selezionando il pulsante Esegui sulla barra degli strumenti di Progettazione query. Il set di dati visualizzato contiene sei campi di quattro tabelle del database AdventureWorks2022. Nella query vengono utilizzate funzionalità di Transact-SQL come gli alias. Ad esempio, la tabella SalesOrderHeader è denominata soh.

  8. Selezionare OK per chiudere Progettazione query.

  9. Selezionare OK per chiudere la finestra di dialogo Proprietà set di dati.

Nel riquadro Dati report verranno visualizzati il set di dati AdventureWorksDataset e i relativi campi.

Screenshot of the Datasets folder showing the AdventureWorksDataset and its fields.

Passaggio successivo

È stata specificata una query che recupera i dati per il report. Verrà ora creato il layout del report. Passare a Lezione 4: Aggiunta di una tabella al report (Reporting Services).