max(date) in Bedingung
Hallo,
in einer Untertabelle Schule mit einem Feld datum_beginn möchte ich die Schule heraussuchen, die das größte (späteste) Datum im Feld datum_beginn eingetragen hat. Mit dem Code:
let maxDate := max(Schule.datum_beginn);
first(Schule[datum_beginn = maxDate]).Dienststellen.('Name der Dienststelle' + ", " + Ort)
klappt das. Mit
first(Schule[max(datum_beginn)]).Dienststellen.('Name der Dienststelle' + ", " + Ort)
wird der erste Datensatz aus Schule ausgegeben, nicht die Schule mit dem größten Datum. max(datum_beginn) hat keinen Einfluss. Wieso ist das so?
4 Antworten
-
Hallo Maurice. In
first(Schule[max(datum_beginn)])wird die Funktion max() nur auf das aktuelle Datum der Tabelle "Schule" bezogen, welches im Filter [] durchlaufen wird. Stelle es dir so vor, wie in der längeren Schreibweise
first(Schule[max(this.datum_beginn)])In den eckigen Klammern steht der Filter eines Records, demzufolge nur ein Datum, demzufolge bewirkt hier max() nichts und du gibst dann first() aus. Max() braucht sinnvollerweise ein Array. Mirko
-
Du könntest folgendes versuchen
last(Schule order by datum_beginn).Dienststellen.('Name der Dienststelle' + ", " + Ort)
Content aside
- Status Answered
- vor 3 TagenZuletzt aktiv
- 4Antworten
- 23Ansichten
-
2
Folge bereits
