Datumsberechnung zwischen verschiedenen Datensätzen
Liebe Community. Ich habe wieder ein vertracktes Problem.
Ich habe eine Tabelle Patienten und zu jedem Patienten in der Tabelle Behandlungen diverse Behandlungsdaten, welche jedoch nicht zwingend chronologisch eingegeben worden sind. D.h. die Ninox internen Datensatznummern sind nicht chronologisch hochgezählt.
Nun möchte ich für jeden Patienten jeweils in jedem Behandlungsdatensatz berechnen, wie lange es seit der letzten Behandlung war (resp. wann das Behandlungsdatum der vorherigen Behandlung war)
Wenn ich
let myrec := number(this);
let prevrec := myrec - 1;
((select Behandlung where Nr = prevrec) order by 'Behandlungsdatum').Behandlungsdatum
Dann geht das gut, wenn die Behandlungsdaten schön chronologisch in der richtigen Reihenfolgen eingegeben worden sind aber eben nicht, wenn es da Ausreisser gibt.
Hat da jemand eine Idee, wie man das lösen könnte?
Vielen Dank, Pascal
2 Antworten
-
Hallo,
also das letzte Datum bekommst du so:
let my := this; let lastDate := max((select Behandlungen where Datum < my.Datum and Patient = my.Patient).Datum); lastDate
Der Zeitraum seit der letzten Besprechung entsprechend so:
let my := this; let lastDate := max((select Behandlungen where Datum < my.Datum and Patient = my.Patient).Datum); duration(appointment(lastDate, my.Datum))
Ich hoffe das funktioniert so, wie du es brauchst.
VG
Johannes -
Lieber Johannes.
Vielen Dank. Es funktioniert tadellos
lg Pascal
Content aside
- Status Answered
- vor 1 JahrZuletzt aktiv
- 2Antworten
- 21Ansichten
-
2
Folge bereits