Hallo,
ich arbeite an einer Applikation in der Termine für verschiedene Räume in einer Tabelle einer Datenbank gespeichert werden. Die Struktur der Termine und der zugeordneten Räume wird für 2 Jahre im voraus angelegt, sodass eine Neuanlage eines Termins nicht über ein „append“ sondern nur über „edit“ in die Datenbank eingetragen werden kann. Außerdem ist es nicht möglich die Tabelle direkt mit einem dbgrid zu koppeln um Aktualisierungen für jeden User sofort anzuzeigen. Die Anzeige der Daten erfolgt über eine
SQL-Abfrage. Im Einplatzbetrieb kein Problem. Der User sucht sich eine freien Termin im dbgrid, welches über die
SQL-Abfrage gespeist wurde, der dann in die Datenbanktabelle eingetragen wird. Anschließend wird die Abfrage erneut ausgeführt um das dbgrid zu aktualisieren.
Für mich stellt sich das Problem im LAN-Betrieb, wenn ein zweiter User auf die Datenbank zugreift. Wie oben beschrieben bekommt dieser Nutzer nichts von dem neu eingetragenen Termin mit, da das dbgrid ja nicht direkt mit der Datenbank verbunden ist und somit auch nicht automatisch aktualisiert wird. Er hat immer noch den alten Zustand der Termintabelle im grid, da dieser ja über eine Abfrage angezeigt wird. Wie bekomme ich es hin, wenn der User 1 einen Termin einträgt, das User2 diesen neuen Termin in seinem Grid sieht? Mit einen Button der zur Aktualisierung die Abfrage erneut ausführt, bin ich nicht glücklich. Dieses muss irgendwie automatisch passieren. Mir schwebt auch schon etwas vor, indem ich eine Userverwaltung einbaue und darüber den Zugriff von Aktualisierungen steuere. Vielleicht hat einer von euch eine elegantere, einfachere Lösung.
Olaf