Einzelnen Beitrag anzeigen

Delphi.Narium

Registriert seit: 27. Nov 2017
2.430 Beiträge
 
Delphi 7 Professional
 
#6

AW: Größte Menge von parallelen Zeiträumen in einem Zeitraum ermitteln

  Alt 3. Sep 2018, 18:07
Der Ansatz von MyRealName ist schon richtig. Man darf aber nicht die Gesamtsumme der Überschneidungen zählen, sondern muss dies für Beginn und Ende separat.

Hat man dann für den Beginn oder für das Ende mehr als die maximal zulässigen Überschneidungen, dann gehts nicht. Sonst schon.

Nur hingedaddelt und nicht getestet:
SQL-Code:
select Sum(Start) as Start, Sum(End) As End from (
  select count(*) as Start, 0 As End from Termine
  where StartDate between :NewStartDate and :NewEndDate
  union all
  select 0 as Start, Count(*) As End from Termine
  where EndDate between :NewStartDate and :NewEndDate
)
Wenn nun Start >= maximale Terminzahl ist oder End >= maximale Terminzahl ist, muss die Terminablage abgelehnt werden. Andernfalls müsste es gehen (sofern ich da jetzt keinen Denkfehler gemacht gabe, was ich nicht ausschließen will).

Bei dem Beispiel von Uwe Raabe müsste eine Terminanlage erfolgen können.
  Mit Zitat antworten Zitat