ti scrivo non tanto il codice, piuttosto la logica che ci metterei io
codice:Function VerificaDisponibilita (ByVal Data As DateTime, ByVal IDPersona As Integer) As Boolean 'Esegui query: SELECT * FROM [tabella] WHERE Data > [DataInizio] AND Data < [DataFine] AND [IDPersona] = IDPersona 'questo vuol dire che Data è compreso tra un [DataInizio] e un [DataFine], per cui la tal persona è occupata 'metti tutto in un DataTable If DataTable.Rows.Count > 1 'porca trota: c'è qualcosa che non va. la tal persona è sì occupata, ma deve essere presente in due posti contemporaneamente. Return False ElseIf DataTable.Rows.Count = 1 'perfetto: è occupato in un unico lavoro. Return False ElseIf DataTable.Rows.Count = 0 'che equivale ad Else 'non è occupato, può ancora sgobbare per quella determinata data. Return True End If End Function

Rispondi quotando