Select ?
Ich summiere Reparaturkosten mit dieser Formel:
sum(Reparaturen.'Kosten total')
Das passt.
Wie selektiere ich nach einem Datum, dem Feld Reparatuiren.Datum für Eingaben,
die in 2018 (zB) gemacht worden sind?
Vielen Dank!
Wolfgang
4 Antworten
-
sum((select Reparaturen where year(Datum) = 2018).'Kosten total')
-
Danke!
Ich habe das erste Berechnungsfeld in der Tabelle Maschinen eingefügt und das Ergebnis zeigt mir nur die Reparaturen für diese aufgerufene Maschine.
Während in der zweiten Formel die Gesamtsumme für alle Reparaturen 2018 summiert werden, obwohl ich erwartet hätte, das nur die für die aufgerufene Maschine angezeigt werden. Muss ein weiterer select eingefügt werden?Summe Reparaturen stimmt wohl, jedoch Reparaturen 2018 zeigen die Gesamtsumme über alle Maschinen.
Was tun?
Danke
Wolfgang
-
Mit 'select' greift man auf alle Datensätze einer Tabelle zu. Mit dem 'where' lassen sich Kriterien angeben, nach denen die Datensätze gefiltert werden sollen. Im Beispiel oben wird nach dem Jahr gefiltert. Will man jetzt bspw. auch noch nach der 'Seriennummer' filtern, kann man die 'select'-Anweisung entsprechend erweitern:
let myNummer := Seriennummer;
sum((select Reparaturen where year(Datum) = 2018 and Seriennummer = myNummer).'Kosten total')
Wobei ich, wenn wir schon dabei sind, auch das Jahr in eine Variable packen würde. Wenn es bspw. um das jeweilige Vorjahr geht, könnte man es so machen:
let myVorjahr := year(today()) - 1;
let myNummer := Seriennummer;
sum((select Reparaturen where year(Datum) = myVorjahr and Seriennummer = myNummer).'Kosten total')
Dann müsste man im nächsten Jahr nicht den Quellcode ändern. Ist natürlich alles nur beispielhaft. Und wie immer ohne Gewähr. ;)
-
Funktioniert (...natürlich :-)) - Vielen Dank!
Wolfgang
Content aside
- vor 5 JahrenZuletzt aktiv
- 4Antworten
- 1470Ansichten