private DBList <DBBreak> CreateBreaks(IDateTimeIterator _dtIterator, DateTime _startDate, DateTime _endDate, int _count) { var breaks = new DBList <DBBreak>(); _count = _count.Min(MAX_BREAKS); foreach (var dt in _dtIterator.GetIterator(_startDate, _endDate, 0, _count)) { //Abwesenheit in MT Auftrag evtl. verboten //ANF-06805-F1G6Z2|Lifta| if (!Data.IsAbsenceAllowed(WorkerNr, dt + Begin.TimeOfDay, mandant.MTOhneAbwesenheiten)) { continue; } foreach (var workerNr in workerNrs) { var b = MakeBreak(); b.WorkerNr = workerNr; b.Nr = Data.GetBreakSequence(); if (groupNr == 0) { groupNr = b.Nr; } b.GroupNr = groupNr; b.GroupRule = groupRule; b.Begin = dt + Begin.TimeOfDay; b.Date = dt; breaks.Add(b); EventHub.Handle(lang, EventType.WorkerBreak, DateTime.Now, this.GetType().Name, this.username, EventParams.Create("workernr", workerNr, "info", FLS.Texts.Text.Get(lang, FLS.Texts.Text.Pauseaenderung), "text", FLS.Texts.Text.Get(lang, FLS.Texts.Text.Pauseaenderung) + ":" + b.Begin, "shift", shift)); } } return(breaks); }