Evitare di inserire data che é già presente in un intervallo di date

di il
7 risposte

Evitare di inserire data che é già presente in un intervallo di date

Salve saluto tutti e vi pongo un quesito a cui non riesco a rispondere.. Ho una tabella chiamata TPrenotazione così composta: ID- N. PRENOTAZIONE-CHECKIN- CHECKOUT.. Ho creato una maschera con cui inserisco questi dati nella tabella.. La mia domanda é questa: come faccio ad evitare di inserire una data in CHECKIN o CHECKOUT che é già stata inserita? In sostanza evitare di inserire un periodo in cui già esiste una prenotazione... Grazie mille in anticipo..

7 Risposte

  • Re: Evitare di inserire data che é già presente in un intervallo di date

    Se non ho capito male tu non vuoi che accada solo questo caso:
    CheckIn | CheckOut
    1/2/2020 | 5/2/2020
    1/2/2020 | 5/2/2020

    mentre questi altri casi sono possibili
    CheckIn | CheckOut
    1/2/2020 | 5/2/2020
    1/2/2020 | 7/2/2020
    2/2/2020 | 7/2/2020

    Giusto?
  • Re: Evitare di inserire data che é già presente in un intervallo di date

    Ciao innanzitutto grazie per la risposta..
    Non mi sono espresso in maniera chiara.. No neanche i secondo caso é possibile perché, entrando nello specifico, avendo una sola casa da affittare quelle i periodi non possono sovrapporsi... Spero di essermi spiegato in maniera corretta... Grazie ancora
  • Re: Evitare di inserire data che é già presente in un intervallo di date

    Quindi se hai 2 prenotazioni così:
    CheckIn | CheckOut
    1/2/2020 | 5/2/2020
    10/2/2020 | 15/2/2020

    non devono essere valide
    CheckIn | CheckOut
    25/1/2020 | 7/2/2020
    7/2/2020 | 20/2/2020
    24/1/2000 | 22/2/2000
  • Re: Evitare di inserire data che é già presente in un intervallo di date

    Si perfetto....
  • Re: Evitare di inserire data che é già presente in un intervallo di date

    Mmmhhhh! Potrebbe esserci qualche calcolo/funzione rocambolesco da mettere in moto...ma io non ci arrivo.
    Per te sarebbe troppo sconvolgente pensare alla tabella con un solo campo Data? Quindi ripeti la prenotazione per tutti i giorni che abbracciano il periodo. In questo modo vengono tracciati i giorni NO. Quando vai a fare un'altra prenotazione di N record, il campo Data deve avere l'impostazione
    Indicizzato: Sì (Duplicati non ammessi)
    e se vai a digitare una Data occupata, Access ti invierà un messaggio di errore.
    Credo di averti proposto una soluzione terra-terra...altrimenti il controllo su tutti quei "periodi" me lo vedo un po' duro!
  • Re: Evitare di inserire data che é già presente in un intervallo di date

    bumics81 ha scritto:


    Salve saluto tutti e vi pongo un quesito a cui non riesco a rispondere.. Ho una tabella chiamata TPrenotazione così composta: ID- N. PRENOTAZIONE-CHECKIN- CHECKOUT.. Ho creato una maschera con cui inserisco questi dati nella tabella.. La mia domanda é questa: come faccio ad evitare di inserire una data in CHECKIN o CHECKOUT che é già stata inserita? In sostanza evitare di inserire un periodo in cui già esiste una prenotazione... Grazie mille in anticipo..
    Devi fare una verifica affinchè la Data di CheckInVerifica sia MAGGIORE della data di CheckOutPresenti AND con la data di CheckOutVerifica sia Minore della data CheckInPresente...!
    
    ckin1<--prenotazione1--->ckOut1 <-----libero-----> ckin2<--prenotazione2--->ckOut2
    --------------------------------->   Verifica  <----------------------------              
                           ckInVerifica            ckOutVerifica
    Quindi facendo una query di questo tipo, oppure un DCOUNT, devi ottenere ZERO o nessun Record.
  • Re: Evitare di inserire data che é già presente in un intervallo di date

    Scusate la mancanza di una mia risposta.... Sto provando a seguire il consiglio ma non ne vengo a capo... Sicuramente non ho le competenze per fare ciò che mi é stato consigliato... Ho cercato in rete vari esempi della funzione Dcount senza esito..
Devi accedere o registrarti per scrivere nel forum
7 risposte