Dela via


Report Builder-funktioner – Mängdfunktion i en sidnumrerad rapport (Report Builder)

gäller för: Microsoft Report Builder (SSRS) Power BI Report Builder Report Designer i SQL Server Data Tools

Returnerar en anpassad mängd av det angivna uttrycket i en sidnumrerad rapport enligt dataproviderns definition.

Anmärkning

Du kan skapa och ändra sidnumrerade rapportdefinitionsfiler (.rdl) i Microsoft Report Builder, Power BI Report Builderoch i Report Designer i SQL Server Data Tools.

Syntax

  
Aggregate(expression, scope)  

Parameterar

uttryck
Uttrycket som aggregeringen ska utföras på. Uttrycket måste vara en enkel fältreferens.

omfattning
(Sträng) Namnet på en datamängd, grupp eller dataregion som innehåller de rapportobjekt som du vill tillämpa aggregeringsfunktionen på. Omfånget måste vara en strängkonstant och får inte vara ett uttryck. Om omfånget inte har angetts används det aktuella omfånget.

Returtyp

Returtypen bestäms av dataprovidern. Returnerar Ingenting om dataprovidern inte stöder den här funktionen eller om data inte är tillgängliga.

Anmärkningar

Funktionen Aggregate är ett sätt att använda aggregeringar som beräknas på den externa datakällan. Stöd för den här funktionen bestäms av datatillägget. Databearbetningstillägget för SQL Server Analysis Services hämtar till exempel utplattade rader från en MDX-fråga. Vissa rader i resultatuppsättningen kan innehålla mängdvärden som beräknas på datakällservern. Dessa kallas för serveraggregeringar. Om du vill visa serveraggregat i den grafiska frågedesignern för Analysis Services kan du använda knappen Visa mängd i verktygsfältet. Mer information finns i Analysis Services MDX Query Designer User Interface (Report Builder).

När du visar kombinationen av aggregerade och detaljerade datamängdsvärden på detaljrader i en Tablix-dataregion inkluderas vanligtvis inte serveraggregeringar eftersom de inte är detaljdata. Du kanske dock vill visa alla värden som hämtats för datamängden och anpassa hur aggregerade data beräknas och visas.

Report Builder identifierar användningen av funktionen Aggregate i uttryck i rapporten för att avgöra om serveraggregeringar ska visas på detaljrader. Om du inkluderar Mängd i ett uttryck i en dataregion kan serveraggregeringar endast visas på gruppsumma eller totalsummarader, inte på detaljrader. Om du vill visa serveraggregat på detaljrader ska du inte använda funktionen Aggregate.

Du kan ändra det här standardbeteendet genom att ändra värdet för alternativet Tolka delsummor som information i dialogrutan Egenskaper för datauppsättning . När det här alternativet är inställt på Sant visas alla data, inklusive serveraggregeringar, som detaljdata. När värdet är Falskt visas serveraggregeringar som summor. Inställningen för den här egenskapen påverkar alla dataregioner som är länkade till den här datauppsättningen.

Anmärkning

Alla som innehåller grupper för rapportobjektet som refererar till Aggregate måste ha enkla fältreferenser för sina grupputtryck, till exempel [FieldName]. Du kan inte använda aggregering i en dataregion som använder komplexa grupputtryck. För SQL Server Analysis Services-databearbetningstillägget måste din fråga innehålla MDX-fält av typen LevelProperty (inte MemberProperty) för att stödja aggregering med hjälp av aggregeringsfunktionen .

Uttrycket kan innehålla anrop till kapslade mängdfunktioner med följande undantag och villkor:

  • Omfånget för kapslade aggregeringar måste vara samma som eller som ingår i omfånget för den yttre aggregeringen. För alla distinkta omfång i uttrycket måste ett omfång finnas i en underordnad relation till alla andra omfång.

  • Omfånget för kapslade aggregeringar får inte vara namnet på en datauppsättning.

  • Uttrycket får inte innehålla funktionerna First, Last, Previous eller RunningValue .

  • Uttrycket får inte innehålla kapslade aggregeringar som anger rekursiv.

För mer information, se Aggregate Functions Reference (Report Builder and SSRS) och Expression Scope for Totals, Aggregates, and Built-in Collections (Report Builder and SSRS).

Mer information om rekursiva aggregeringar finns i Skapa rekursiva hierarkigrupper (Report Builder och SSRS).

Jämföra aggregerings- och summafunktionerna

Funktionen Aggregate skiljer sig från numeriska aggregeringsfunktioner som Sum eftersom funktionen Aggregate returnerar ett värde som beräknas av dataprovidern eller databehandlingstillägget. Numeriska mängdfunktioner som Sum returnerar ett värde som beräknas av rapportprocessorn på en uppsättning data från datauppsättningen som bestäms av omfångsparametern . Mer information finns i aggregerade funktioner som anges i Aggregate Functions Reference (Report Builder och SSRS).

Exempel

I följande kodexempel visas ett uttryck som hämtar en serveraggregering för fältet LineTotal. Uttrycket läggs till i en cell i en rad som tillhör gruppen GroupbyOrder.

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