Newsgroup: it.comp.appl.access
Titolo: Prenotazioni alberghiere

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Salve a tutti,
E' da un po' di tempo che penso a come si dovrebbe implementare un DB
per la gestione delle prenotazioni alberghiere. La cosa che più mi
incuriosisce (alla quale non sono riuscito a dare una soluzione) è
come fare a controllare, al momento della verifica della
disponibilità di una camera, che questa sia effettivamente libera per
tutto il periodo richiesto. Quindi come salvare le prenotazioni
([numero camera - dal - al] oppure?) e come fare una verifica di
sovrapposizione di due periodi di tempo (es una camera prenotata dal
01/09/2002 al 10/09/2002 deve risultare non disponibile se si
richiede il periodo dal 05/09/2002 al 15/09/2002 o comunque un
periodo che si sovrapponga parzialmente o totalmente a quello
'occupato').
Tanto per far lavorare un po' il cervello...
- --
Matteo Palmieri - Cybercreations
www.cybercreations.it
-----BEGIN PGP SIGNATURE-----
Version: 6.5.8ckt
Comment: KeyID: 0xC83A8FFAC838BA1F
Comment: Fingerprint: 69F4 29D4 5913 B3B6 EDD2  B335 C83A 8FFA C838 BA1F
iQA/AwUBPXDNgcg6j/rIOLofEQJZbACfb7l6JBcb7iQmoH7KPTJ030BqCT4Amwdx
Il3fP2NRM7lHyHSjOhbJIGrt
=pqR3
-----END PGP SIGNATURE-----

 Tanto per far lavorare un po' il cervello...
    Se vuoi far veramente lavorare il cervello non dimenticare
l'overbooking. ;-))
    Un buon sistema di analisi e': come lo farei a mano, con carta e penna?
--
Ciao :-)
Maurizio
--------
?SPQR(C)
 X
--------

 Ho visto qualcosa di interessante in materia di appuntamenti in conflitto
sul sito di Allen Browne: era un articolo intitolato "Clashing
Events/Appointments". Illuminante.
Gionnix

 Matteo Palmieri - Cybercreations
Se i dati sono contenuti in una tabella chiamata tblPrenotazioni che ha una
struttura simile a questa:
IDPrenotazione        Contatore e chiave primaria
NumeroCamera       Testo
Dal                             Data/ora
Al                                Data/ora
ecc. ecc.
Creati una maschera chiamata Maschera1 con visualizzazione a Maschera
singola e che abbia come origine record tblPrenotazioni.
Inserisci in Maschera1 quattro caselle di testo associate ai quattro campi
di tblPrenotazioni; fai in modo che i quattro controlli abbiano lo stesso
nome dei campi cui sono associati.
A fronte dell'evento "Prima di aggiornare" di Maschera1 genera il seguente
codice VBA:
Private Sub Form_BeforeUpdate(Cancel As Integer)
Dim Criterio As String
Criterio = "NumeroCamera =" & Chr$(34) & Me!NumeroCamera & Chr$(34) & _
" And ((Dal<=#" & Format(Me!Dal, "mm/dd/yyyy") & "# And Al>=#" & _
Format(Me!Dal, "mm/dd/yyyy") & "#) Or (Dal>=#" & _
Format(Me!Dal, "mm/dd/yyyy") & "# And Dal<=#" & _
Format(Me!Al, "mm/dd/yyyy") & "#))"
If IsNull(DLookup("IDPrenotazione", "tblPrenotazioni", Criterio)) Then
    MsgBox "Prenotazione accettata"
Else
    MsgBox "Prenotazione NON accettata"
    Cancel = True
    Me.Undo
    Me!NumeroCamera.SetFocus
End If
End Sub
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


anche i cambi camera durante il soggiorno sono un bell' esercizio ...
ciao
Giancarlo

 anche i cambi camera durante il soggiorno sono un bell' esercizio ...
    :-)
    Qualsiasi cosa che nel mondo esterno all'albergo e' soltanto una rara
eventualita', in un albergo e' una certezza quotidiana.
