Esercitazione: Definizione di un set di dati per il report tabella (Reporting Services)

Dopo aver definito l'origine dati per il report impaginato, è necessario definire un set di dati per l’origine 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.

In questa esercitazione:

  • Definizione di un set di dati per il report tabella.
  • Creare una query Transact-SQL per recuperare le informazioni sugli ordini cliente.

Prerequisiti

Definire una query Transact-SQL per i dati del report

Creare una query Transact-SQL che recupera le informazioni sugli ordini cliente dal database AdventureWorks2022.

  1. Aprire il file di definizione del report Ordini cliente (con estensione rdl) in Visual Studio.

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

    Screenshot della finestra di dialogo Proprietà set di dati con l'opzione Query evidenziata.

  3. Nella casella Nome digitare "AdventureWorksDataset".

  4. Scegliere l’opzione Utilizzare un set di dati incorporato nel report.

  5. Dall’elenco Origine dati selezionare AdventureWorks2022.

  6. Per Tipo di query selezionare l’opzione Testo.

  7. 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'
    
  8. (Facoltativo) Selezionare Progettazione query. La query compare nella finestra Progettazione query basata su testo. Selezionare Esegui per visualizzare i risultati della query () sulla barra degli strumenti 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. La tabella SalesOrderHeader viene ad esempio denominata soh.

  9. Selezionare OK per chiudere Progettazione query.

  10. 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 della cartella Set di dati che mostra AdventureWorksDataset e i relativi campi.

Passaggio successivo