You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

Aggregate als Regeln nutzbar

Mit dieser Regel können Werte aggregiert werden. Durch aggregierte Daten können Sie eine Vielzahl an Einzelbeobachtungen in einem einzigen Wert zusammenfassen. Dies erreichen Sie über die die Funktion "Aggregate".

Mit der Funktion können Sie z. B. in der der Tabellenansicht der Adressen beispielsweise die Anzahl & Summe der aktuell offenen Angebote eintragen oder auch die Summe aller Rechnungen im Archiv.

Beschreibung Übergabewerte an die Funktion

1. TableName bezeichnet den Namen der Tabelle

2. FeldName bezeichnet den Namen des Feldes, den für die Funktion angewendet werden soll

3. Funktion bezeichnet ein der möglichen Funktionen:

FunktionBezeichnung der Funktion
Min Minimalwert
Max Maximalwert
Sum Summe
Avg Durchschnittswert
Cnt Anzahl der Datensätze im Bereich

4. IndexName bezeichnet den Sortierungsnamen

5. KeyFieldCount gibt die Anzahl der Felder im Index an, die man nachfolgend für RangeStart / RangeEnd belegen will

6. RangeStart bezeichnet die Felder für den Bereichsanfang

7. RangeEnd bezeichnet die Felder für das Bereichsende

8. FilterbedingungOptional kann an dieser Stelle noch eine Filterbedingung auf echte Datenbankfelder angegeben werden

Beachten Sie:

Achten Sie bei der Benutzung der Funktion darauf, dass Sie nur Werte mit gleicher Einheit auswerten.

Beispielsweise bei Betragswerten aus Vorgängen sollte man immer z. B. Leitwährung 1 nutzen, ansonsten wird ein falsches Ergebnis ausgewiesen, sofern unterschiedliche Währungen benutzt wurden.

Aufruf im Bereich der Regeln

Die Anlage einer Regel kann z. B. im Bereich: PARAMETER - ADRESSEN - REGELN erfolgen. Über die Neuanlage mit Auswertungsposition: EIGENE ABLÄUFE kann so z. B. auch eine Meldung / Abfrage mit Dialogart: HINWEIS erstellt werden. Über das Layout kann mittels Feldeditor kann die Funktion "Aggregate" eingegeben werden.

Aufruf

Beachten Sie den genauen Aufbau (Trennung über Kommata).

$Aggregate("TableName","FeldName","Funktion","IndexName",KeyFieldCount,"RangeStart","RangeEnd")

Aggregate lassen sich auch alternativ mit Filterbedingung nutzen

$Aggregate("TableName","FeldName","Funktion","IndexName",KeyFieldCount,"RangeStart","RangeEnd","[optionale Filterbedingung]")

Die optionale Filterbedingung wird am Ende des Aggregats angehangen.

  • Die Anführungszeichen müssen nicht angegeben werden
  • Die Werte selbst werden über Kommata getrennt


Hinweise zu den Felder 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.

Beispiel 1:

Sie möchten die Anzahl der Vorgänge (cnt) in der Vorgangsübersicht einer Adresse ausweisen:

External$('Aggregate("Vorgang"|"AdrNr"|"Cnt"|"AdrNr"|1|"«AdrNr»"|"«AdrNr»")')


Beispiel 2:

Das Feld „SaldoBet" aus der Tabelle „BuchungenLohn" wird aufsummiert, wobei die Datensätze über den Index JPKtoNr eingeschränkt werden.

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")')

Beispiel 3:

Anzahl der Vorgänge der aktuell ausgewählten Adresse.

$Aggregate(Vorgang,AdrNr,"Cnt","AdrNr",1,«Vog.AdrNr»,«Vog.AdrNr»)

Beispiel 4:

Durchschnittsbetrag Netto der Vorgänge der aktuell ausgewählten Adresse.

$Aggregate(Vorgang,GPreisNt,"Avg","AdrNr",1,«Vog.AdrNr»,«Vog.AdrNr»)

Beispiel 5:

Ermittelt den minimalen netto Gesamtpreis im Bereich Vorgänge für eine Adresse bei der Vorgangsart 30 (inkl. Filterbedingung am Ende der Formel).

$Aggregate(Vorgang,GPreisNt,Min,AdrNr,1,«Adr.AdrNr»,«Adr.AdrNr»,Art = 30)

Aggregate im Druckdesigner nutzen

Sehe hierzu auch im Bereich des Druckdesigners: Aggregate (Druckdesigner).

Aufruf im Druckdesigner

Beachten Sie den genauen Aufbau (Trennung durch geraden Strich "|" ("Pipe"). Dieses Symbol erzeugen Sie durch: Tastenkombination [Alt Gr] sowie Taste [><].

Aggregate("TableName"|"FeldName"|"Funktion"|"IndexName"|KeyFieldCount|"RangeStart"|"RangeEnd")

Beispiel:

Sie möchten die Anzahl der Vorgänge in der Vorgangsübersicht einer Adresse ausweisen:

Info:

External$('Aggregate( Vorgang|AdrNr|Cnt|AdrNr|1|«AdrNr»|«AdrNr»)') 

Aggregate lassen sich auch alternativ mit Filterbedingung im Druckdesigner nutzen

Aggregate("TableName"|"FeldName"|"Funktion"|"IndexName"|KeyFieldCount|"RangeStart"|"RangeEnd"|"[optionale Filterbedingung]") 
  • No labels