Controllo su sovrapposizioni report

di il
11 risposte

Controllo su sovrapposizioni report

Buongiorno a tutti i partecipanti al forum. Mi sono appena registrato perchè ho un problema con la creazione del mio dtb con access che vorrei utilizzare per la gestione dei clienti di 5 camere di un piccolo B&B. Per il momento (da neofita) ho solo creato 3 tabelle (anagrafica cliente e soggiorno struttura), ma per il momento ho riscontrato questi due problemi:

Non riesco a inserire un controllo su ciascuna camera che mi impedisca di sovrapporre le date di arrivo o di partenza. (Es. camera 1 assegnata al cliente X per il periodo dal 01/08/2021 al 10/08/2021 devo evitare che per errore la stessa camera 1 venga assegnata ad altro cliente Y per un periodo che vada ad esempio dal 3/8/2021 al 13/08/2021) ;
Non capisco perchè quando creo la maschera della tabella clienti mi fa vedere tutte le voci di scelta di un campo nel quale ho creato una lista a tendina anzichè la sola voce selezionata.
Ringrazio anticipatamente a chi mi vorrà dare un aiuto.
Bart

11 Risposte

  • Re: Controllo su sovrapposizioni report

    Non spalmare 3D in tutto il Forum...!!! Grazie
    https://www.iprogrammatori.it/forum-programmazione/progettazione-database/creazione-controllo-sovrapposizione-date-t47679.html
  • Re: Controllo su sovrapposizioni report

    Ho cambiato sezione .... non va bene neppure così? Ma cosa devo fare per avere un aiuto?
  • Re: Controllo su sovrapposizioni report

    Intanto devi riflettere su come ti muovi, e scrivere 2 Post uguali in 2 sezioni differenti è quanto meno poco sensato non credi...?
    Si contatta l'amministratore e si chiede lo SPOSTAMENTO motivandolo.

    Tieni poi presente che hai già avuto risposta NONOSTANTE..., in ogni caso non è che avere una risposta sia obbligo... ti viene fatta cortesia, e serve per questo essere rispettosi.
  • Re: Controllo su sovrapposizioni report

    Grazie. Devo imparare a come muovermi ed è vero. Se ho mancato di rispetto non era mia intenzione, così come non mi sembra di aver preteso una risposta. Per il tratto avvenire cercherò di adeguarmi alle regole per me ancora non palesi. Circa l'avermi già dato una risposta "NONOSTANTE" ammetto che non ho ben compreso il significato in quanto sono alle prime armi con l'utilizzo del dbs access. Pertanto, se tu o altri avete la pazienza di volermi aiutare io ve ne sono grato.
  • Re: Controllo su sovrapposizioni report

    Leggila bene ed esponi cosa non ti è chiaro di quanto suggerito.
  • Re: Controllo su sovrapposizioni report

    Ok Alex grazie.

    Tu mi hai risposto così: "Estrai le Camere che NON hanno IniziPrenotazione<DataFineCheck AND FinePrenotazione>DataInizioCheck, otterrai le Camere che nel Periodo di Check sono senza conflitti." ed io non ho capito come fare.

    Cercherò di essere più chiaro per darti così il modo di aiutarmi. Sto cercando di creare un dbs che mi consenta di effettuare le prenotazioni di camere del mio B&B in modo semplice. Ad ora ho creato una serie di tabelle nelle quali inserire i dati anagrafici dei diversi clienti; poi ho creato una tabella che ho chiamato prenotazioni e nella ho creato un campo "camera assegnata" ad un cliente (che rilevo dalla tabella clienti) e altri campi tra i quali il campo Data check in e Data check out. La cosa che vorrei fare è quella di sapere in ogni momento quale camera ho già assegnato per quale periodo così da evitare di riassegnare la stessa camera ad altro cliente per un analogo periodo o per un periodo che si sovrappone a quello in precedenza prenotato.

    Devo quindi lavorare sulle stesse tabelle o devo crearmi delle query o dei report sui quali avere la situazione chiara attraverso un planner che mi faccia vedere le camere occupate e per quali periodi e conseguentemente quelle libere.

    Scusa se sono stato prolisso ma sto cercando di farmi capire non avendo io un linguaggio tecnico.
  • Re: Controllo su sovrapposizioni report

    jbart ha scritto:


    Ok Alex grazie.

    Tu mi hai risposto così: "Estrai le Camere che NON hanno IniziPrenotazione<DataFineCheck AND FinePrenotazione>DataInizioCheck, otterrai le Camere che nel Periodo di Check sono senza conflitti." ed io non ho capito come fare.
    Il problema nasce proprio quì ovvero la Struttura del Database da realizzare.

    jbart ha scritto:


    Cercherò di essere più chiaro per darti così il modo di aiutarmi. Sto cercando di creare un dbs che mi consenta di effettuare le prenotazioni di camere del mio B&B in modo semplice.
    Chiaro.

    jbart ha scritto:


    Ad ora ho creato una serie di tabelle nelle quali inserire i dati anagrafici dei diversi clienti;
    Questo letto così sembrerebbe tu abbia Tante Tabelle quanti sono i Clienti...?
    Se così fosse la cosa principale è capire che questo è un errore critico di sostanza, per il quale anche dandoti la soluzione serve in realtà tu abbia più chiari i concetti MINIMI di Normalizzazione dei dati... perchè contrariamente ad Excel, un Database lavora in modo diverso, e vincolato e se tu non usi quel metodo non riesci a gestire i dati.
    La Tabella Anagrafiche sarà solo 1 con i dati che servono e fai attenzione che le tabelle devono avere la ChiavePrimaria(PK) e relazionarsi alle altre Tabelle in modalità 1-Molti o Molti-1 o anche Molti-Molti, ques'ultima è indicata nella 3° Forma Normale della struttura che devi assolutamente comprendere e sapere.

    jbart ha scritto:


    poi ho creato una tabella che ho chiamato prenotazioni e nella ho creato un campo "camera assegnata" ad un cliente (che rilevo dalla tabella clienti) e altri campi tra i quali il campo Data check in e Data check out.
    La tabella Prenotazioni deve avere:
    1° NumeroPrenotazione (questa è la PK della Tabella)
    2° NumeroCamera (Questo è un'indice della tabella per ora potrebbe non essere relazionato ad altre tabelle)
    3° IdCliente è la FK che si relaziona con la PK dell'anagrafica perchè potrai avere che 1 Cliente ha Molte Prenotazioni
    4° CheckIn (campo data)
    5° CheckOut (campo data)

    Questo sono i campi ESSENZIALI, gli altri non importano per la questione della determinazione camere libere.

    jbart ha scritto:


    La cosa che vorrei fare è quella di sapere in ogni momento quale camera ho già assegnato per quale periodo così da evitare di riassegnare la stessa camera ad altro cliente per un analogo periodo o per un periodo che si sovrappone a quello in precedenza prenotato.

    Devo quindi lavorare sulle stesse tabelle o devo crearmi delle query o dei report sui quali avere la situazione chiara attraverso un planner che mi faccia vedere le camere occupate e per quali periodi e conseguentemente quelle libere.

    Scusa se sono stato prolisso ma sto cercando di farmi capire non avendo io un linguaggio tecnico.
    Ora siccome non hai una Tabella con l'elenco delle Camere, quello che risulta più facile è trovare quali Camere sono sicuramente occupate, e per differenza hai quelle libere.

    Devi arrivarci gradualmente a questi passaggi altrimenti non ne esci.

    Questo è un Demo che però credo possa farti più danno che aiuto, sia perchè usa un Activex che potresti non avere sia perchè è già di livello abbastanza avanzato come codice di gestione delle Interfacce, ma le query che trovi e le tabelle sono proprio quelle di cui hai bisogno anche se si rifà a dei Lettini in una Spiaggia...!
  • Re: Controllo su sovrapposizioni report

    Questo letto così sembrerebbe tu abbia Tante Tabelle quanti sono i Clienti...? No davvero Alex .... ho creato delle tabelle per avere le opzioni sui campi della tabella anagrafica cliente più semplice da gestire (menu a tendina per capirsi) relativamente al Comune, Provincia di residenza etc.
  • Re: Controllo su sovrapposizioni report

    Ora siccome non hai una Tabella con l'elenco delle Camere, quello che risulta più facile è trovare quali Camere sono sicuramente occupate, e per differenza hai quelle libere. No .... ho creato anche quella come tabella senza una chiave primaria ma come mero elenco delle 5 camere
  • Re: Controllo su sovrapposizioni report

    Sei gentilissimo. Sto guardando la tua demo e poi ti dico. Grazie
  • Re: Controllo su sovrapposizioni report

    Ho capito che hai molta pazienza ma forse io sono troppo profano per capirci qualcosa del tuo demo. Sto cercando di arabattarmi guardando dei tutorial su internet ma non trovo nulla sull'argomento che mi spieghi passo dopo passo cosa fare. Penso di acquistare un manuale di access 2019 con nozioni sul linguaggio VBA e vedo di imparare almeno l'ABC di questo fantastico DataBase. Per il momento non posso che ringraziarti per il tempo che mi hai dedicato.
Devi accedere o registrarti per scrivere nel forum
11 risposte