Condividi tramite


Utilizzo di campi di un set di dati del report

I campi del set di dati vengono utilizzati per fornire un collegamento tra elementi di report, ad esempio tabelle e grafici, e i dati del report. Un campo può rappresentare un collegamento diretto a una colonna restituita da una query oppure un campo calcolato definito dall'utente.

I campi del set di dati non corrispondono ai campi predefiniti, che costituiscono invece un set di campi disponibili in Reporting Services che forniscono informazioni sul report, ad esempio il nome del report o il timestamp relativo al momento in cui il report è stato elaborato. Per ulteriori informazioni, vedere Utilizzo di riferimenti a campi predefiniti nelle espressioni (Reporting Services).

Per visualizzare i valori dei campi del set di dati in un report, trascinarli nelle caselle di testo nelle celle dell'area di progettazione o dell'area dati o sulle zone di rilascio di grafici e contatori. I campi del set di dati possono rappresentare dati numerici e non numerici, nonché altri tipi di dati in un database, ad esempio URL per report drill-through, immagini e indirizzi di posta elettronica per i sottoscrittori.

Utilizzo della raccolta di campi

I campi del set di dati vengono specificati dalla query del set di dati e da qualsiasi campo calcolato definito dall'utente. Dopo avere creato un set di dati, per visualizzare la raccolta di campi relativa è possibile espandere il nodo del set di dati nel riquadro Dati report. Tutte le volte che si modifica la query per il set di dati, i campi del database vengono aggiornati automaticamente.

Un campo calcolato viene specificato manualmente creando un'espressione. I campi calcolati possono essere utilizzati per creare nuovi valori che non esistono nell'origine dati. Un campo calcolato può rappresentare ad esempio un nuovo valore, un ordinamento personalizzato per un set di valori del campo o un campo esistente convertito in un tipo di dati diverso. Per ulteriori informazioni, vedere Procedura: Aggiunta, modifica o eliminazione di un campo nel riquadro Dati report.

Collegamento di un campo del set di dati a un elemento di report

I dati di un set di dati possono essere visualizzati nei seguenti elementi di report, ovvero Casella di testo, Tabella, Matrice, Elenco, Grafico e Contatore. Per collegare un campo a un elemento di report, è possibile trascinarlo dal riquadro Dati report o utilizzare l'icona relativa al selettore del campo sull'elemento di report. Il modo più semplice per collegare un campo alle zone di rilascio della categoria Grafico, ad esempio, consiste nell'utilizzare il selettore del campo. Per una Tablix con un gruppo di righe esistente, è possibile trascinare un campo nell'area del gruppo di righe della Tablix per aggiungere ulteriori campi nidificati. Quando si trascina un campo nell'area del corpo della Tablix, è possibile aggiungere una nuova colonna con i valori predefiniti specificati automaticamente per il campo.

Per ulteriori informazioni sull'aggiunta di campi agli elementi di report nell'area di progettazione, vedere i tipi specifici di elementi di report in Progettazione del layout del report.

Se i risultati previsti non vengono visualizzati nella raccolta di campi del set di dati, vedere Risoluzione dei problemi dei report: report esportati in un formato di file specifico.

Informazioni sulle espressioni predefinite

Una casella di testo può essere un elemento di report Casella di testo nel corpo del report oppure essere presente in una cella in un'area dati Tablix. Quando si collega un campo a una casella di testo, la posizione di quest'ultima determina l'espressione predefinita per il riferimento di campo. Nel corpo del report un'espressione del valore della casella di testo deve specificare un'aggregazione e un set di dati. Se nel report è presente un unico set di dati, tale espressione predefinita viene creata automaticamente. Per un campo che rappresenta un valore numerico, la funzione di aggregazione predefinita è Sum, mentre per un campo che rappresenta un valore non numerico l'aggregazione predefinita è First.

In un'area dati Tablix l'espressione predefinita del campo dipende dalle appartenenze a una riga e a un gruppo della casella di testo aggiunta al campo. Se a una casella di testo nella riga di dettaglio di una tabella viene aggiunto il campo Sales, l'espressione relativa è [Sales]. Se si aggiunge lo stesso campo a una casella di testo in un'intestazione del gruppo, l'espressione predefinita è (Sum[Sales]), poiché nell'intestazione del gruppo vengono visualizzati i valori di riepilogo per il gruppo, non quelli dettagliati. Durante l'esecuzione del report, in Elaborazione report viene valutata ogni espressione e il risultato viene sostituito nel report.

Utilizzo delle proprietà di campo estese

Le origini dati che supportano query multidimensionali, ad esempio SQL ServerAnalysis Services, supportano anche le proprietà di campo. Tali proprietà vengono visualizzate nel set di risultati per una query, ma non sono visibili nel riquadro Dati report. È possibile comunque utilizzarle nel report. Per fare riferimento a una proprietà per un campo, trascinare il campo nel report e modificare la proprietà predefinita Value impostandola sul nome del campo della proprietà desiderata. In un cubo di Analysis Services, ad esempio, è possibile definire formati per i valori presenti nelle celle del cubo. Il valore formattato è disponibile se si utilizza la proprietà di campo FormattedValue. Per utilizzare direttamente il valore anziché utilizzare un valore e impostare la proprietà del formato della casella di testo, trascinare il campo nella casella di testo e impostare l'espressione predefinita =Fields!FieldName.Value su =Fields!FieldName.FormattedValue.

[!NOTA]

Solo alcune proprietà Field possono essere utilizzate per tutte le origini dati. Le proprietà Value e IsMissing vengono definite per tutte le origini dati. Altre proprietà predefinite, ad esempio Key, UniqueName e ParentUniqueName per origini dati multidimensionali, sono supportate solo se sono disponibili nell'origine dati. Le proprietà personalizzate sono supportate da alcuni provider di dati. Per ulteriori informazioni, vedere gli argomenti specifici sulle proprietà di campo estese per il tipo di origine dati utilizzato in Creazione di un set di dati del report. Per un'origine dati SQL ServerAnalysis Services, ad esempio, vedere Utilizzo di proprietà di campo estese per un set di dati di Analysis Services.

Utilizzo dei tipi di dati dei campi

Quando si crea un set di dati, i tipi di dati dei campi nell'origine dati potrebbero non corrispondere esattamente ai tipi di dati utilizzati in un report. Ai tipi di dati possono essere applicati uno o due livelli di mapping. L'estensione per l'elaborazione dati o il provider di dati può eseguire il mapping dei tipi di dati dall'origine dati a tipi di dati CLR (Common Language Runtime). I tipi di dati restituiti dalle estensioni per l'elaborazione dati vengono mappati a un subset di tipi di dati CLR da .NET Framework.

Informazioni sui tipi di dati in una raccolta di campi del set di dati

Nell'origine dati i dati vengono archiviati in tipi di dati supportati dall'origine stessa. I dati presenti in un database di SQL Server, ad esempio, devono essere di un tipo supportato da SQL Server, quale nvarchar o datetime. Quando vengono recuperati dall'origine dati, i dati vengono passati attraverso un'estensione per l'elaborazione dati o un provider di dati associato al tipo di origine dati. In base all'estensione per l'elaborazione dati, i dati possono essere convertiti dai tipi utilizzati dall'origine dati in tipi di dati supportati dall'estensione per l'elaborazione dati. In Reporting Services vengono utilizzati i tipi di dati supportati dalla versione di CLR installata con Business Intelligence Development Studio.

I dati del report passano dall'origine dati attraverso il provider di dati o l'estensione per l'elaborazione dati al componente per l'elaborazione dei report. In ogni fase i dati vengono rappresentati dai tipi di dati in base a quanto descritto nell'elenco seguente.

Il provider di dati esegue il mapping di ogni colonna nel set di risultati dal tipo di dati nativo a un tipo di dati CLR di Microsoft.NET Framework:

  • Origine dati   Tipi di dati supportati dalla versione del tipo di origine dati verso cui è in corso la connessione.

    Tra i tipi di dati utilizzati in genere per un'origine dati SQL Server 2005 sono inclusi ad esempio int, datetime e varchar. I tipi di dati introdotti in SQL Server 2008 consentono di supportare inoltre date, time, datetimetz e datetime2. Per ulteriori informazioni, vedere Tipi di dati (Transact-SQL).

  • Provider di dati oppure estensione per l'elaborazione dati   Tipi di dati supportati dalla versione del provider di dati dell'estensione per l'elaborazione dati selezionata quando si esegue la connessione all'origine dati. I provider di dati basati su .NET Framework utilizzano tipi di dati supportati da CLR.

    Tra i tipi di dati supportati in genere da .NET Framework sono inclusi ad esempio Int32 e String. Le date e le ore del calendario sono supportate dalla struttura DateTime. In .NET Framework 2.0 Service Pack 1 è stato introdotto il supporto per la struttura DateTimeOffset per date con una differenza di fuso orario. Per ulteriori informazioni sulle date con fusi orari, vedere

    [!NOTA]

    Nel server di report vengono utilizzati i provider di dati installati e configurati nel server di report stesso. Nei client di creazione dei report in modalità di anteprima vengono utilizzate le estensioni per l'elaborazione dati installate e configurate nel computer client. È necessario eseguire il test del report sia nell'ambiente del client che nell'ambiente del server di report.

  • Elaborazione report   Tipi di dati basati sulla versione di CLR installata al momento dell'installazione di Reporting Services. In SQL Server 2008Reporting Services viene installata la versione di CLR basata su .NET Framework 2.0 Service Pack 1.

    I tipi di dati utilizzati ad esempio da Elaborazione report per i nuovi tipi date e time introdotti in SQL Server 2008 vengono indicati nella tabella seguente:

    Tipo di dati SQL

    Tipo di dati CLR

    Descrizione

    Date

    DateTime

    Solo data

    Time

    TimeSpan

    Solo ora

    DateTimeTZ

    DateTimeOffset

    Data e ora con differenza di fuso orario

    DateTime2

    DateTime

    Data e ora con millisecondi frazionari

Per ulteriori informazioni sui tipi di database di SQL Server, vedere Tipi di dati (Motore di database) e Funzioni e tipi di dati di data e ora (Transact-SQL). Per ulteriori informazioni sui tipi di dati CLR, vedere Utilizzo dei tipi di base.

Per ulteriori informazioni sui tipi di dati del provider di dati Microsoft.NET Framework, vedere Mapping di tipi di dati (ADO.NET).

Per ulteriori informazioni, vedere Utilizzo dei tipi di dati nelle espressioni (Reporting Services) e Tipi di dati di Report Definition Language.