public bool VerificaEsecuzione(string Servizio, out ScheduleDS.MONITOR_SCHEDULERRow schedulazione) { schedulazione = null; using (ScheduleBusiness bSchedule = new ScheduleBusiness()) { _ds.Clear(); bSchedule.FillSchedule_SCHEDULER(_ds); if (!_ds.MONITOR_SCHEDULER.Any(x => x.SERVIZIO.Trim() == Servizio && x.ESEGUITA == "N" && x.DATAESECUZIONE <= DateTime.Today)) { return(false); } List <ScheduleDS.MONITOR_SCHEDULERRow> schedulazioni = _ds.MONITOR_SCHEDULER.Where(x => x.SERVIZIO == Servizio && x.ESEGUITA == "N" && x.DATAESECUZIONE <= DateTime.Today).ToList(); foreach (ScheduleDS.MONITOR_SCHEDULERRow schedulazioneSelezionata in schedulazioni) { if (VerificaOraEsecuzione(schedulazioneSelezionata.ORAESECUZIONE)) { schedulazione = schedulazioneSelezionata; return(true); } } return(false); } }
public void AggiornaSchedulazione(ScheduleDS.MONITOR_SCHEDULERRow schedulazione) { schedulazione.ESEGUITA = "S"; ScheduleDS.MONITOR_SCHEDULERRow nuovaSchedulazione = _ds.MONITOR_SCHEDULER.NewMONITOR_SCHEDULERRow(); nuovaSchedulazione.ESEGUITA = "N"; nuovaSchedulazione.SERVIZIO = schedulazione.SERVIZIO; nuovaSchedulazione.FREQUENZA = schedulazione.FREQUENZA; nuovaSchedulazione.ORAESECUZIONE = schedulazione.ORAESECUZIONE; switch (nuovaSchedulazione.FREQUENZA) { case "GIORNALIERA": nuovaSchedulazione.DATAESECUZIONE = DateTime.Today.AddDays(1); break; } _ds.MONITOR_SCHEDULER.AddMONITOR_SCHEDULERRow(nuovaSchedulazione); using (ScheduleBusiness bSchedule = new ScheduleBusiness()) { bSchedule.UpdateSchedule_SCHEDULER(_ds); } }