Condividi tramite


Funzione di aggregazione (Reporting Services)

Restituisce un'aggregazione personalizzata dell'espressione specificata, secondo quanto definito dal provider di dati.

Sintassi

Aggregate(expression, scope)

Parametri

Tipo restituito

Il tipo restituito dipende dal provider di dati. Restituisce Nothing se il provider di dati non supporta questa funzione o se i dati non sono disponibili.

Osservazioni

La funzione Aggregate consente di supportare le funzionalità del provider di dati. Ad esempio, l'estensione di elaborazione dati SQL ServerAnalysis Services utilizza un provider di dati che recupera set di righe bidimensionali da una query MDX. Alcune righe del set di risultati possono contenere valori di aggregazione calcolati nel server dell'origine dati. Tali valori sono noti come aggregazioni server. Per visualizzare le aggregazioni server nella finestra Progettazione query grafica per Analysis Services, è possibile utilizzare il pulsante Mostra aggregazione sulla barra degli strumenti. Per ulteriori informazioni, vedere Interfaccia utente di Progettazione query MDX per Analysis Services.

Quando si visualizza la combinazione di valori di aggregazione e di set di dati di dettaglio nelle righe di dettaglio di un'area dati Tablix, le aggregazioni server non vengono solitamente incluse perché non corrispondono a dati di dettaglio. Tuttavia, è possibile visualizzare tutti i valori recuperati per il set di dati e personalizzare le modalità di calcolo e visualizzazione dei dati di aggregazione.

Reporting Services rileva l'utilizzo della funzione Aggregate nelle espressioni del report per determinare se visualizzare aggregazioni server nelle righe di dettaglio. Se si include Aggregate in un'espressione in un'area dati, le aggregazioni server possono essere visualizzate solo in righe di totali o totali complessivi di gruppo, non nelle righe di dettaglio. Se si desidera visualizzare le aggregazioni server nelle righe di dettaglio, non utilizzare la funzione Aggregate.

È possibile cambiare questo comportamento predefinito modificando il valore dell'opzione Interpretare i subtotali come righe di dettaglio nella finestra di dialogo Proprietà set di dati. Quando questa opzione è impostata su True, tutti i dati, incluse le aggregazioni server, appaiono come dati di dettaglio. Quando è impostata su False, le aggregazioni server appaiono come totali. L'impostazione di questa proprietà influisce su tutte le aree dati collegate al set di dati.

[!NOTA]

Tutti i gruppi di contenuto per l'elemento del report che fa riferimento a Aggregate devono includere riferimenti di campo semplici per le relative espressioni di raggruppamento, ad esempio [FieldName]. Non è possibile utilizzare Aggregate in un'area dati che utilizza espressioni di raggruppamento complesse. Per l'estensione di elaborazione dati SQL ServerAnalysis Services, la query deve includere campi MDX di tipo LevelProperty (non MemberProperty) per supportare l'aggregazione tramite la funzione Aggregate.

Confronto tra le funzioni Aggregate e Sum

La funzione Aggregate è diversa dalle funzioni di aggregazioni numeriche come Sum in quanto la funzione Aggregate restituisce un valore calcolato dal provider di dati o dall'estensione per l'elaborazione dati. Le funzioni di aggregazione numeriche come Sum restituiscono invece un valore calcolato dal componente Elaborazione report in un set di dati determinato dal parametro scope. Per ulteriori informazioni, vedere le funzioni di aggregazione elencate in Utilizzo delle funzioni predefinite di report e aggregazione nelle espressioni (Reporting Services).

Esempio

Nell'esempio di codice seguente è illustrata un'espressione che recupera un'aggregazione server per il campo LineTotal. L'espressione viene aggiunta nella riga di una cella che appartiene al gruppo GroupbyOrder.

=Aggregate(Fields!LineTotal.Value, "GroupbyOrder")