Espressioni (Generatore report e SSRS)
Le espressioni vengono ampiamente utilizzate in un report per recuperare, calcolare, visualizzare, raggruppare, ordinare, filtrare, parametrizzare e formattare i dati. Molte proprietà dell'elemento del report possono essere impostate su un'espressione tramite la quale è possibile controllare il contenuto, la progettazione e l'interattività del report. Le espressioni sono scritte in Microsoft Visual Basic, salvate nella definizione del report e valutate dall'elaboratore di report durante l'esecuzione del report.
A differenza di applicazioni come Microsoft Office Excel, in cui è possibile utilizzare i dati direttamente in un foglio di lavoro, in un report è possibile gestire espressioni che sono segnaposto per i dati. Per visualizzare i dati effettivi dalle espressioni valutate, è necessario visualizzare in anteprima il report. Durante l'esecuzione del report, tramite l'elaboratore di report è possibile valutare ogni espressione poiché vengono combinati i dati del report con gli elementi di layout del report quali tabelle e grafici.
Quando si progetta un report, molte espressioni degli elementi del report vengono impostate automaticamente. Ad esempio, quando si trascina un campo dal riquadro dei dati in una cella della tabella nell'area di progettazione del report, il valore della casella di testo viene impostato su un'espressione semplice per il campo. Nel riquadro dei dati del report riportato nella figura seguente vengono visualizzati i campi del set di dati ID, Name, SalesTerritory, Code e Sales. Alla tabella sono stati aggiunti tre campi: [Name], [Code] e [Sales]. La notazione [Name] nell'area di progettazione rappresenta l'espressione =Fields!Name.Value sottostante.
Quando si visualizza in anteprima il report, tramite l'elaboratore di report l'area dati della tabella viene combinata con i dati effettivi della connessione dati e viene visualizzata una riga nella tabella per ogni riga nel set di risultati.
Per immettere espressioni manualmente, selezionare un elemento nell'area di progettazione e utilizzare menu di scelta rapida e finestre di dialogo per impostare le proprietà dell'elemento. Quando viene visualizzato il pulsante (fx) o il valore <Expression> in un elenco a discesa, è possibile impostare la proprietà su un'espressione. Per ulteriori informazioni, vedere Aggiungere un'espressione (Generatore report e SSRS).
Per ulteriori informazioni ed esempi, vedere gli argomenti seguenti:
Utilizzo delle espressioni nei report (Generatore report e SSRS)
Esempi di espressioni di raggruppamento (Generatore report e SSRS)
Per sviluppare espressioni complesse o espressioni che consentono l'utilizzo di codice o assembly personalizzati, si consiglia di utilizzare Progettazione report di SQL Server Data Tools (SSDT). Per ulteriori informazioni, vedere Riferimenti a codice personalizzato e ad assembly in espressioni in Progettazione report (SSRS).
[!NOTA]
È possibile creare e modificare definizioni del report (con estensione rdl) in Generatore report e in Progettazione report di SQL Server Data Tools. Ogni ambiente di creazione offre modalità differenti per creare, aprire e salvare report ed elementi correlati. Per ulteriori informazioni, vedere Progettazione di report tramite Progettazione report e Generatore report (SSRS) nel Web all'indirizzo microsoft.com.
Contenuto dell'articolo
Informazioni sulle espressioni semplici e complesse
Informazioni sui simboli di prefissi in espressioni semplici
Scrittura di espressioni complesse
Convalida delle espressioni
Contenuto della sezione
Informazioni sulle espressioni semplici e complesse
Le espressioni iniziano con il segno di uguale (=) e sono scritte in MicrosoftVisual Basic. Nelle espressioni può essere inclusa una combinazione di costanti, operatori e riferimenti a valori predefiniti, ad esempio campi, raccolte e funzioni, e a codice esterno o personalizzato.
Le espressioni possono essere utilizzate per specificare il valore di numerose proprietà dell'elemento del report. Le proprietà più comuni sono valori per caselle di testo e testo segnaposto. In genere, se in una casella di testo è contenuta un'unica espressione, tale espressione è il valore della proprietà della casella di testo. Se in una casella di testo sono contenute più espressioni, ognuna di queste rappresenta il valore di testo segnaposto nella casella di testo.
Per impostazione predefinita, le espressioni vengono visualizzate nell'area di progettazione del report come espressioni semplici o complesse.
Semplice Espressione contenente un riferimento a un singolo elemento in una raccolta predefinita, ad esempio un campo del set di dati, un parametro oppure un campo predefinito. Un'espressione semplice viene visualizzata tra parentesi nell'area di progettazione. [FieldName], ad esempio, corrisponde all'espressione sottostante =Fields!FieldName.Value. Le espressioni semplici vengono create automaticamente quando si crea il layout del report e si trascinano gli elementi dal riquadro dei dati del report nell'area di progettazione. Per ulteriori informazioni sui simboli che rappresentano raccolte predefinite diverse, vedere Informazioni sui simboli di prefissi in espressioni semplici.
Complessa Espressione contenente riferimenti a più riferimenti, operatori e chiamate di funzione predefiniti. Un'espressione complessa viene visualizzata come <<Expr>> se nel valore dell'espressione sono inclusi più riferimenti semplici. Per visualizzare l'espressione, posizionare il puntatore del mouse su tale espressione e utilizzare la descrizione comando. Per modificare l'espressione, aprirla nella finestra di dialogo Espressione.
Nella figura seguente vengono mostrate espressioni semplici e complesse tipiche sia per le caselle di testo sia per il testo segnaposto.
Per visualizzare valori di esempio anziché il testo per le espressioni, applicare la formattazione alla casella di testo o al testo segnaposto. Nella figura seguente viene mostrata l'area di progettazione del report attivata o disattivata per la visualizzazione dei valori di esempio:
Per ulteriori informazioni, vedere Formattazione di testo e segnaposto (Generatore report e SSRS).
Torna all'inizio
Formule di modelli di report
Durante la progettazione di una query per un set di dati in cui viene utilizzato un modello di report come origine dati, è possibile creare formule. Le formule sono calcoli eseguiti su valori in un report basati su dati di un modello di report.
Per ulteriori informazioni, vedere Formule nelle query del modello di report (Generatore report e SSRS).
Torna all'inizio
Torna all'inizio
Informazioni sui simboli di prefissi in espressioni semplici
Nelle espressioni semplici vengono utilizzati simboli per indicare se il riferimento è a un campo, un parametro, una raccolta predefinita o la raccolta ReportItems. Nella tabella seguente vengono riportati esempi di testo visualizzato e di quello relativo alle espressioni:
Elemento |
Esempio di testo visualizzato |
Esempio di testo dell'espressione |
---|---|---|
Campi del set di dati |
[Sales] [SUM(Sales)] [FIRST(Store)] |
=Fields!Sales.Value =Sum(Fields!Sales.Value) =First(Fields!Store.Value) |
Parametri di report |
[@Param] [@Param.Label] |
=Parameters!Param.Value =Parameters!Param.Label |
Campi predefiniti |
[&ReportName] |
=Globals!ReportName.Value |
Caratteri letterali utilizzati per il testo visualizzato |
\[Sales\] |
[Sales] |
Torna all'inizio
Scrittura di espressioni complesse
Nelle espressioni possono essere inclusi riferimenti a funzioni, operatori, costanti, campi, parametri, elementi di raccolte predefinite nonché a codice personalizzato o assembly personalizzati incorporati.
[!NOTA]
Per sviluppare espressioni complesse o espressioni che consentono l'utilizzo di codice o assembly personalizzati, si consiglia di utilizzare Progettazione report in SQL Server SQL Server Data Tools (SSDT). Per ulteriori informazioni, vedere Riferimenti a codice personalizzato e ad assembly in espressioni in Progettazione report (SSRS).
Nella tabella seguente vengono elencati i tipi di riferimenti che è possibile includere in un'espressione:
Riferimenti |
Descrizione |
Esempio |
---|---|---|
Vengono descritte le costanti a cui è possibile accedere in modo interattivo per le proprietà che richiedono valori costanti, ad esempio i colori dei caratteri. |
="Blue" |
|
Vengono descritti gli operatori che possono essere utilizzati per la combinazione di riferimenti in un'espressione. L'operatore &, ad esempio, viene utilizzato per la concatenazione di stringhe. |
="The report ran at: " & Globals!ExecutionTime & "." |
|
Vengono descritte le raccolte predefinite che è possibile includere in un'espressione, ad esempio, Fields, Parameters e Variables. |
=Fields!Sales.Value =Parameters!Store.Value =Variables!MyCalculation.Value |
|
Vengono descritte le funzioni predefinite, ad esempio Sum o Previous, cui è possibile accedere da un'espressione. |
=Previous(Sum(Fields!Sales.Value)) |
|
Riferimenti a codice personalizzato e ad assembly in espressioni in Progettazione report (SSRS) |
Viene descritto come accedere alle classi CLR predefinite Math e Convert, ad altre classi CLR, a funzioni della libreria di runtime di Visual Basic o a metodi da un assembly esterno. Viene descritto come accedere a codice personalizzato incorporato nel report o compilato e installato come assembly personalizzato sia nel client che nel server di report. |
=Sum(Fields!Sales.Value) =CDate(Fields!SalesDate.Value) =DateAdd("d",3,Fields!BirthDate.Value) =Code.ToUSD(Fields!StandardCost.Value) |
Torna all'inizio
Convalida delle espressioni
Quando si crea un'espressione per una proprietà specifica dell'elemento del report, i riferimenti che è possibile includere in un'espressione dipendono dai valori accettati dalla proprietà dell'elemento del report e dall'ambito nel quale viene valutata la proprietà. Ad esempio:
Per impostazione predefinita, l'espressione [Sum] consente di calcolare la somma di dati presenti nell'ambito al momento della valutazione dell'espressione. Per una cella della tabella, l'ambito dipende dalle appartenenze ai gruppi di righe e di colonne. Per ulteriori informazioni, vedere Ambito di espressioni per totali, aggregazioni e raccolte predefinite (Generatore report e SSRS).
Per il valore di una proprietà Font, tramite il valore deve essere restituito il nome di un tipo di carattere.
La sintassi dell'espressione viene convalidata in fase di progettazione mentre la convalida dell'ambito dell'espressione viene eseguita durante la pubblicazione del report. Per convalide che dipendono dai dati effettivi, gli errori possono essere rilevati solo in fase di esecuzione. Alcune di queste espressioni generano un messaggio di errore di tipo #Errore nel report sottoposto a rendering. Per determinare i problemi relativi a questo tipo di errore, è necessario utilizzare Progettazione report in SQL Server Data Tools (SSDT). In Progettazione report è disponibile una finestra Output nella quale vengono fornite ulteriori informazioni su questi errori.
Per ulteriori informazioni, vedere Riferimento dell'espressione (Generatore report e SSRS).
Torna all'inizio
Contenuto della sezione
Aggiungere un'espressione (Generatore report e SSRS)
Utilizzo delle espressioni nei report (Generatore report e SSRS)
Ambito di espressioni per totali, aggregazioni e raccolte predefinite (Generatore report e SSRS)
Riferimento dell'espressione (Generatore report e SSRS)
Torna all'inizio