---
title: DATEDIFF
description: "```javascript //Scriptfunktion 'DATEDIFF' //Berechnet die Differenz zwischen zwei Datumsangaben basierend auf dem angegebenen Intervall. //Parameter für Intervall: //d Tag //y Tag des Jahres //h Stunde //n Minute //m Monat //q Quartal //s Sekunde //w Woche //ww Kalenderwoche //yyyy Jahr //Beispiel:…"
url: "https://aspi-gmbh.de/docs/datediff/"
updated: "2026-02-02"
category: "SDK / Scriptengine / Script-Functions / Basisbefehle"
---

# DATEDIFF

```javascript

                //Scriptfunktion 'DATEDIFF'
//Berechnet die Differenz zwischen zwei Datumsangaben basierend auf dem angegebenen Intervall.

//Parameter für Intervall:
//d     Tag
//y     Tag des Jahres
//h     Stunde
//n     Minute
//m     Monat
//q     Quartal
//s     Sekunde
//w     Woche
//ww    Kalenderwoche
//yyyy  Jahr

//Beispiel:
// Alter berechnen
GEBD="09.11.1956"
HEUTE={DATE}
JAHRE=DATEDIFF{yyyy,{GEBD},{HEUTE}}
BDAY_THISYEAR=DATEADD{yyyy,{JAHRE},{GEBD}}
DIFFDAYS=DATEDIFF{d,{HEUTE},{BDAY_THISYEAR}}
IFBLOCK{DIFFDAYS>0}
	JAHRE=SUM{{JAHRE}-1}
ENDIF
MSG_TMP={MSG_TMP}Wenn Patient am {GEBD} Geburtstag hat, ist das Alter des Patienten {JAHRE} Jahre{RET}{RET}
// Prüfen, ob das Aufnahmedatum vorhanden ist
IFBLOCK{AUFDATUM!}
	// Prüfen, ob das Entlassungsdatum vorhanden ist
	IFBLOCK{ENTDATUM!}
		// Berechne die Anzahl der Aufenthaltstage
		AUFENTHALTSTAGE=DATEDIFF{d,{AUFDATUM},{ENTDATUM}}
		// Textnachricht erstellen und anzeigen
		TXT={DERDIEPATIENT} {PATIENTPATIENTIN} war {AUFENTHALTSTAGE} Tage in unserer Klinik!
		ERG=DLGMESSAGE{{MSG}{MSG_TMP}{TXT}}
	ELSE
		// Fehlermeldung, falls das Entlassungsdatum leer ist
		ERG=DLGMESSAGE{{MSG}{MSG_TMP}Das Entlassungsdatum ist leer!}
	ENDIF
ELSE
	// Fehlermeldung, falls das Aufnahmedatum leer ist
	ERG=DLGMESSAGE{{MSG}{MSG_TMP}Das Aufnahmedatum ist leer!}
ENDIF
```
