Erfogreicher Abgleich gewünschter Kriterien in Reservierungssystem - Dringend Hilfe benötigt!

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von petaod.

    Erfogreicher Abgleich gewünschter Kriterien in Reservierungssystem - Dringend Hilfe benötigt!

    Hallo liebe Community,

    wir sind verzweifelte BWL Studentinnen, die verdonnert worden sind ein Reservierungssystem für ein Hotel auf Grundlage einer Access Datenbank zu erstellen.

    Nach vielen schlaflosen Nächsten sind wir nun endgültig am Ende und kapitulieren. Ihr seid unsere letzte Rettung!

    Unser Problem:

    Wir haben eine Oberfläche entworfen (siehe Anhang), die uns nach Auswahl der gewünschten Kriterien die entsprechenden Zimmer in einer Datagridview auswirft. Als Datengrundlage haben wir eine Access Datenbank, die wir entsprechend normalisiert haben (siehe Anhang).

    Soweit funktioniert das auch alles (ja, sogar mit "egal"-Button haben wir es nach Ewigkeiten hinbekommen), allerdings schaffen wir es noch nicht, das Datum richtig mit der Datagridview zu verbinden, sodass uns nur noch die Zimmer angezeigt werden, die zu dem Zeitpunkt NICHT reserviert sind.

    Wir haben schon sehr viele Versuche gestartet und sind jedes Mal aufs Neue wieder auf Probleme gestoßen:

    1.) Wir haben versucht, das Ganze mit einem Fillby zu lösen, indem wir den Befehl um not between Buchung_von und Buchung_bis erweitert haben.
    Problem: Die einzelnen Zimmer sind in unserer Datenbank mehrmals reserviert, d.h. er zeigt uns das Zimmer nicht mehr an, wenn es zu dem Zeitpunkt gebucht ist, allerdings
    zeigt er uns das Zimmer dann doch noch einmal in unserer Auswahl an mit dem anderen Buchungszeitraum. So hat man also wieder die Möglichkeit, das Zimmer auszuwählen und zu buchen, was ja nicht sein darf. Gibt es da einen Befehl, der die doppelten Datensätze herausfiltert? Also die Zimmernummer nicht mehr anzeigt, wenn sie bereits einmal herausgefiltert wurde?

    2.) Wir haben versucht, eine zweite Datagridview als Hilfstabelle zu nutzen - unsere Tabelle Buchung. Dort sollten alle reservierten Zimmer angezeigt werden. Die Zimmernummern dieser Tabelle sollen dann ausgelesen werden und mit den Werten in der anderen Datagridview abgeglichen werden. Das Auslesen haben wir mit Labels, verschiedenen Try's sowie If's hinbekommen. Problem hierbei: Wir konnten den SQL Code nicht entsprechend anpassen, da er sich da weigert, die Bezeichnungen zu übernehmen. Wir brauchten für die Try's unterschiedliche Bezeichnungen, damit sie funktionierten, die dann allerdings in der SQL Abfrage nicht erkannt wurden.

    Wir sind wirklich verzweifelt und für ALLE Vorschläge offen. Habt ihr irgendwelche Ideen (auch für ganz andere Vorschläge sind wir dankbar!!).

    Das ist der letzte Schritt, damit wir unser Programm beenden können und uns endlich auf unsere anderen Prüfungen konzentrieren können.

    Über jede schnelle Rückmeldung sind wir dankbar (das Abgabedatum rückt immer näher) --> BITTE aber in BWL-er Sprache, möglichst einfach und ohne viele Fachbegriffe! :whistling:

    DANKE!

    Louisa und Alena :) :)
    Bilder
    • Unbenannt.PNG

      33,25 kB, 1.257×600, 125 mal angesehen
    • Access Datenbank.PNG

      35,55 kB, 1.155×558, 131 mal angesehen
    Zum Datenmodell hätte ich Vorschläge.
    nämlich, die Tabellen Ausstattung und Zimmer_Ausstattung abzuschaffen.
    Minibar, Internet, TV, BadArt sind einfach Eigenschaften eines Zimmers, sollten also in der Tabelle Zimmer angesiedelt werden.

    Das ist zwar keine Komplett-Lösung, aber vereinfacht doch ein Stück weit, odr?

    ErfinderDesRades schrieb:

    Tabellen Ausstattung und Zimmer_Ausstattung abzuschaffen
    wird für ein Individual-Haus sicher sinnvoll sein.
    Stellt man sich aber ein großes Hotel oder eine -kette vor, wo es viele identisch ausgestattete Zimmer in wenigen Kategorien gibt (Standard, Luxus, Suite), dann macht die Auslagerung in eine eigene Ausstattungstabelle durchaus Sinn.
    Wenn Die Konzernleitung morgen beschließt, dass zum Standard eines Luxuszimmers ein Bademantel gehört, brauchst du ihn nur einmal in die Ausstattungstabelle eintragen.

    Allerdings gebe ich dir recht, dass man dafür keine Zwischentabelle benötigt, sondern der Ausstattungstyp direkt im Zimmer eingetragen werden kann.
    Das Datenmodell ist schon noch sehr verwirrend.

    Aber ich glaube, das größere Problem liegt am GUI bzw. Code dahinter.
    Da ist sicher genauso viel im Argen.
    Wenn das ein eiliges Projekt ist, würde ich fast empfehlen, im Marktplatz eine Anfrage zu stellen, dass jemand sich etwas Zeit nimmt und das Ganze überarbeitet.
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „petaod“ ()