0

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

null
    • Ninox-Professional
    • planoxpro
    • vor 5 Jahren
    • Gemeldet - anzeigen

    sum((select Reparaturen where year(Datum) = 2018).'Kosten total')

    • wolfgangmohr
    • vor 5 Jahren
    • Gemeldet - anzeigen

    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?
    Screenshot_2019-04-02 Stamm Maschinen

    Summe Reparaturen stimmt wohl, jedoch Reparaturen 2018 zeigen die Gesamtsumme über alle Maschinen.

    Was tun?

    Danke

    Wolfgang

    • Ninox-Professional
    • planoxpro
    • vor 5 Jahren
    • Gemeldet - anzeigen

    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. ;)

    • wolfgangmohr
    • vor 5 Jahren
    • Gemeldet - anzeigen

    Funktioniert (...natürlich :-)) - Vielen Dank!

    Wolfgang

Content aside

  • vor 5 JahrenZuletzt aktiv
  • 4Antworten
  • 1470Ansichten