Diese Funktion aggregiert ein Feld einer beliebigen Tabelle mit einer beliebigen Funktion unter Verwendung eines Indexbereichs und einer Filterbedingung.
Aufruf
Code Block |
---|
Aggregate("TableName"|"FeldName"|"Funktion"|"IndexName"|KeyFieldCount|"RangeStart"|"RangeEnd") |
Beschreibung Übergabewerte an die Funktion
- TableName: bezeichnet den Namen der Tabelle
- FeldName: bezeichnet den Namen des Feldes, den für die Funktion angewendet werden soll
- Funktion: bezeichnet ein der möglichen Funktionen:
Min - Minimalwert
Max - Maximalwert
Sum - Summe
Avg - Durchschnittswert
Cnt – Anzahl der Datensätze im Bereich - IndexName: bezeichnet den Sortierungsnamen
- KeyFieldCount: gibt die Anzahl der Felder im Index an, die man nachfolgend für RangeStart / RangeEnd belegen will
- RangeStart: bezeichnet die Felder für den Bereichsanfang
- RangeEnd: bezeichnet die Felder für das Bereichsende
Hinweise zu Feld RangeStart und RangeEnd
Die Anzahl von RangeStart und RangeEnd Feld-Werten muss mit dem KeyFieldCount übereinstimmen.
- D. h. bei KeyFieldCount = 1 ,muss …1|"RangeStart"|"RangeEnd") angegeben werden
- D. h. bei KeyFieldCount = 2 ,muss …2|"RangeStart"|"RangeStart2"|"RangeEnd"|"RangeEnd2") angegeben werden
- usw.
Beispiele:
Man möchte die Anzahl der Vorgänge in der Vorgangsübersicht einer Adresse ausweisen:
Diese Ausweisung erhält man über:
Code Block |
---|
External$('Aggregate( "Vorgang"|"AdrNr"|"Cnt"|"AdrNr"|1|" «AdrNr»"|"«AdrNr»")') |
Das Feld „SaldoBet" aus der Table „BuchungenLohn" wird aufsummiert, wobei die Datensätze über den Index JPKtoNr eingeschränkt werden:
Code Block |
---|
External$('Aggregate("BuchungenLohn"|"SaldoBet"|"Sum"|"JPKtoNr"|3|"Year(BereichDate)"|"Month(BereichDate)"|"LBK.LAKtoNrSonstige"|"Year(BereichDate)"|"Year(BereichDate)"|"Month(BereichDate)"|"LBK.LAKtoNrSonstige"|"Year(BereichDate)"|"Month(BereichDate)"|"LBK.LAKtoNrSonstige")') |