Lezione 2: Modifica delle proprietà dell'origine dati del report

In questa lezione dell'esercitazione su Reporting Services verrà usato il portale Web per selezionare un report da recapitare ai destinatari. Con la sottoscrizione guidata dai dati che verrà definita verrà distribuito il report Sales Order creato nell'esercitazione Creare un report tabella semplice (esercitazione su SSRS). Nei passaggi seguenti verranno modificate le informazioni di connessione all'origine dei dati utilizzate dal report per acquisire i dati. Solo i report in cui vengono usate credenziali archiviate per accedere a un'origine dati del report possono essere distribuiti attraverso una sottoscrizione guidata dai dati. Le credenziali archiviate sono necessarie per l'esecuzione automatica dei report.

Inoltre, verrà modificato il set di dati e il report per utilizzare un parametro al fine di filtrare il report in [Order] in modo che tramite la sottoscrizione sia possibile restituire istanze differenti del report per formati di rendering e ordini specifici.

Modifica dell'origine dati per l'uso delle credenziali archiviate

  1. Accedere al portale Web di Reporting Services con privilegi di amministratore, ad esempio, fare clic con il pulsante destro del mouse sull'icona di Internet Explorer e selezionare Esegui come amministratore.

  2. Individuare l'URL del portale Web. Ad esempio:
    https://<server name>/reports.
    https://localhost/reportsNota: l'URL del portale Web è "Reports", non l'URL del server di report di "Reportserver".

  3. Selezionare la cartella contenente il report Sales Orders e nel menu contestuale del report selezionare Gestisci.

    Screenshot del menu contestuale di Ordini cliente.

  4. Selezionare Origini dati dal riquadro a sinistra.

  5. Verificare che il tipo di connessione sia Microsoft SQL Server.

  6. Verificare che la stringa di connessione sia quella riportata di seguito. Si presuppone che il database di esempio si trovi in un server di database locale:

    Data source=localhost; initial catalog=AdventureWorks2022  
    
  7. Selezionare Usare le credenziali seguenti.

  8. In Tipo di credenzialiselezionare Nome utente di Windows e password

  9. Digitare il nome utente nel formato dominio\utentee la password. Se non si dispone delle autorizzazioni per l'accesso al database AdventureWorks2022, specificare un account di accesso autorizzato.

  10. Selezionare Connessione di test per verificare che sia possibile connettersi all'origine dati.

  11. Seleziona Salva.

  12. Selezionare Annulla.

  13. Visualizzare il report per verificare che venga eseguito con le credenziali specificate.

Modificare AdventureWorksDataset

Nei passaggi successivi si modificherà il set di dati in modo da usare un parametro per filtrare il set di dati in base a un numero di ordine.

  1. Aprire il report Sales Orders in SQL Server Data Tools.

  2. Fare clic con il pulsante destro del mouse sul set di dati AdventureWorksDataset e scegliere Proprietà set di dati.

    Screenshot del menu contestuale di AdventureWorksDataset che evidenzia l'opzione Proprietà set di dati.

  3. Aggiungere l'istruzione WHERE (UPPER(SalesOrderNumber) =UPPER(@OrderNumber) or @OrderNumber IS NULL) prima dell'istruzione Group By . L'esempio seguente illustra la sintassi della query completa:

    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 AS 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  
    
    WHERE (UPPER(SalesOrderNumber) =UPPER(@OrderNumber) or  @OrderNumber IS NULL)  
    
    GROUP BY ppc.Name, soh.OrderDate, soh.SalesOrderNumber, pps.Name, pp.Name, soh.SalesPersonID  
    HAVING (ppc.Name = 'Clothing')  
    
  4. Selezionare OK
    Nei passaggi seguenti si aggiungerà un parametro al report. Il parametro del report determina il parametro del set di dati.

Aggiungere un parametro del report e ripubblicare il report

  1. Nel riquadro Dati del report espandere la cartella dei parametri e fare doppio clic sul parametro Ordernumber. Il parametro è stato creato automaticamente nei passaggi precedenti quando è stato aggiunto al set di dati. Selezionare Nuovo e quindi scegliere Parametro....

    Screenshot del riquadro dei dati del report che evidenzia il parametro Numero d’ordine.

  2. Verificare che Nome sia OrderNumber.

  3. Verificare che Prompt sia OrderNumber.

  4. Selezionare Consenti nessun valore ("").

  5. Selezionare Consenti valore Null.

  6. Seleziona OK.

  7. Selezionare la scheda Anteprima per eseguire il report. Notare la casella di input dei parametri nella parte superiore del report. È possibile:

    • Selezionare Visualizza report per visualizzare il report completo senza l'utilizzo di parametri.

    • Deselezionare l'opzione Null e digitare un numero di ordine, ad esempio so71949, quindi selezionare Visualizza report per visualizzare solo quell'ordine nel report.

    Screenshot della scheda anteprima e del pulsante Visualizza report evidenziato.

Distribuire nuovamente il report

  1. Distribuire di nuovo il report in modo che con la configurazione della sottoscrizione nella prossima lezione sia possibile utilizzare le modifiche apportate in questa lezione. Per altre informazioni sulle proprietà del progetto usate nell'esercitazione relativa alle tabelle, vedere la sezione "Per pubblicare il report nel server di report (facoltativo)" della Lezione 6: Aggiunta di gruppi e totali (Reporting Services).

  2. Sulla barra degli strumenti selezionare Compila, quindi scegliere Distribuisci esercitazione.

Passaggio successivo