Abgleich zweier Tabellen
Guten Abend
Ich habe in meiner Datenbank die Tabelle Kundendatenbank mit der Spalte Umsatz (SOLL / IST). Der Umsatz errechnet sich aus der Tabelle Zeiterfassung. Das funktioniert soweit auch gut. Nun habe ich jedoch bereits Termine für 2022 eingetragen, dadurch ist der Umsatz IST nun höher als der Umsatz SOLL.
Ich möchte nun in der Kundendatenbank durch Auswahl des Jahres (z. B. 2021 / 2022) die Umsätze entsprechend berechnen lassen. Meine Idee ist in der Zeiterfassung durch die Formel year(Datum) in einer separaten spalte nur das Jahr des eingegebenen Datums anzeigen zu lassen. Funktioniert auch.
Nun möchte ich in der Kundendatenbank das Auswahlfenster des Umsatzjahres mit der Spalte Jahr in der Zeiterfassung vergleichen, wenn dieses gleich ist, soll die Summe des Umsatzes angezeigt werden.
if Umsatzjahr = Zeiterfassung.Jahr then
sum(Zeiterfassung.'Umsatz')
else
0
end
Funktioniert leider nicht. Wo könnte das Problem hier liegen?
Danke für eure Hilfe
4 Antworten
-
Hallo Christian,
Wenn Umsatzjahr ein Auswahlfeld ist, dann sollte die Formel etwa so aussehen:
---
let me:=this;
sum(Zeiterfassung[year(Datum)=me.number(text(Umsatzjahr))].'Umsatz')
---
damit werden nur die Datensätze summiert, dem ausgewällten Jahr entsprechen.
Leo
-
Hallo Leo,
vielen Dank, das hat wunderbar geklappt.
Zum Verständnis:
Warum steht vor Umsatzjahr text?, es handelt sich hierbei ja um eine Zahl.
Viele Grüße
-
Hallo Christian,
die values eines Auswahlfeldes sind immer Texte (auch wenn mit Zahlen geschrieben). Standadmäßig bringt die Abfrage number(FELDNAME) oder einfach FELDNAME die ID des Auswahlfeldes zurück (als Zahl). bei zwei Jahren währen dann 1 oder 2. Mit text(FELDNAME) bekommt man den Text der Auswahl als String "2021" oder "2022". Mit number(text(FELDNAME)) wandelt man das Textergebniss in eine Zahl.
Leo
-
Hi Leo,
vielen Dank.
Ich denke das habe ich verstanden.
Gruß
Content aside
- vor 3 JahrenZuletzt aktiv
- 4Antworten
- 349Ansichten