Discussion:
Datensatz von Hand sperren
(zu alt für eine Antwort)
Christian Rohrbach
2003-11-20 21:46:52 UTC
Permalink
Hallo Leute,

in meinem Projekt bin ich heute dazu übergegangen in Formularen die Daten
selbst in steuerelementfreie Textfelder einzulesen und bei Bedarf dann in
die Datenbanktabelle zu schreiben. Natürlich hat das ganze auch Nachteile,
man muß sich um alles selbst kümmern....

Nun meine Frage.... kann ich einen Datensatz von Hand sperren? Mein Ziel ist
es per VBA in der Datenbank einen Datensatz zu sperren welche ich zur
Bearbeitung gerade in meinem Formular habe. Dabei soll genau in dem Moment,
wenn der User den Button anklickt "Diese Daten bearbeiten" der entsprechende
Datensatz (welchen ich problemlos über den Primärschlüssel identifizieren
kann) gesperrt werden und sobald der User auf den Button "Änderungen
speichern" klickt der entsprechende Datensatz wieder entsperrt werden

Ach ja... sollte zufällig ein anderer User versuchen den Datensatz auch zu
bearbeiten, dann soll beim Klicken auf "Diese Daten bearbeiten" eine Meldung
wie "Datensatz wird gerade von einem anderen User bearbeitet! Versuchen sie
es später wieder" erscheinen....

Geht das?

Dank und Gruß, Christian
Olaf Rabbachin
2003-11-21 09:30:42 UTC
Permalink
Hi,
Post by Christian Rohrbach
Nun meine Frage.... kann ich einen Datensatz von Hand sperren? Mein Ziel ist
es per VBA in der Datenbank einen Datensatz zu sperren welche ich zur
Bearbeitung gerade in meinem Formular habe.
wenn der User den Button anklickt "Diese Daten bearbeiten"
warum nicht ganz einfach ein flag (Yes/No-Feld) "Lock" in der Tabelle? Wenn
ein user den button klickt, aktualisierst Du das flag ...
Post by Christian Rohrbach
Ach ja... sollte zufällig ein anderer User versuchen den Datensatz auch zu
bearbeiten, dann soll beim Klicken auf "Diese Daten bearbeiten" eine Meldung
wie "Datensatz wird gerade von einem anderen User bearbeitet! Versuchen sie
es später wieder" erscheinen....
... und liest es beim Anzeigen entsprechend aus, um evt. die Meldung zu
zeigen.

Bis dann,
Olaf [MVP]
--
Bitte keine emails auf NG-postings.

My .02: www.Resources.IntuiDev.com
AccessFAQ: www.donkarl.com
KnowHow.mdb: www.freeaccess.de
André Hartmann
2003-11-21 11:44:39 UTC
Permalink
Post by Olaf Rabbachin
Hi,
Post by Christian Rohrbach
Nun meine Frage.... kann ich einen Datensatz von Hand sperren? Mein Ziel ist
es per VBA in der Datenbank einen Datensatz zu sperren welche ich zur
Bearbeitung gerade in meinem Formular habe.
wenn der User den Button anklickt "Diese Daten bearbeiten"
warum nicht ganz einfach ein flag (Yes/No-Feld) "Lock" in der Tabelle? Wenn
ein user den button klickt, aktualisierst Du das flag ...
Und was ist bei einem Crash ? Dann bleibt das Flag für immer auf TRUE ....
und der Datensatz kann nie wieder bearbeitet werden !
Post by Olaf Rabbachin
Post by Christian Rohrbach
Ach ja... sollte zufällig ein anderer User versuchen den Datensatz auch zu
bearbeiten, dann soll beim Klicken auf "Diese Daten bearbeiten" eine Meldung
wie "Datensatz wird gerade von einem anderen User bearbeitet! Versuchen sie
es später wieder" erscheinen....
... und liest es beim Anzeigen entsprechend aus, um evt. die Meldung zu
zeigen.
Bis dann,
Olaf [MVP]
--
Bitte keine emails auf NG-postings.
My .02: www.Resources.IntuiDev.com
AccessFAQ: www.donkarl.com
KnowHow.mdb: www.freeaccess.de
Rainer Lemke
2003-11-21 17:18:20 UTC
Permalink
André Hartmann wrote:
[schnippel]
Post by André Hartmann
Post by Olaf Rabbachin
Post by Christian Rohrbach
Nun meine Frage.... kann ich einen Datensatz von Hand sperren? Mein Ziel
warum nicht ganz einfach ein flag (Yes/No-Feld) "Lock" in der Tabelle?
Und was ist bei einem Crash ? Dann bleibt das Flag für immer auf TRUE ....
und der Datensatz kann nie wieder bearbeitet werden !
Hallo André
also ich sperre von Hand mit 2 Feldern: Datum/Zeit der
Sperre und UserID.
Beim Neustart der Applikation löscht mir die Applikation
automatisch alle Sperren des Users, dafür kann sich ein User
nur einmal zur gleichen Zeit in der Datenbank einloggen
(Usertabelle). Und der Admin kann manuell per
Wartungsformular die Sperre entfernen.
--
Ich hoffe, dies hat geholfen.
Einen schönen Gruss aus dem Rheinland,
Rainer Lemke
Christian Rohrbach
2003-11-21 21:04:27 UTC
Permalink
Post by Rainer Lemke
Post by André Hartmann
Und was ist bei einem Crash ? Dann bleibt das Flag für immer auf TRUE ....
und der Datensatz kann nie wieder bearbeitet werden !
Hallo André
also ich sperre von Hand mit 2 Feldern: Datum/Zeit der
Sperre und UserID.
Beim Neustart der Applikation löscht mir die Applikation
automatisch alle Sperren des Users, dafür kann sich ein User
nur einmal zur gleichen Zeit in der Datenbank einloggen
(Usertabelle). Und der Admin kann manuell per
Wartungsformular die Sperre entfernen.
Hierbei handelt es sich um einen Softlock..... habe ich gerade nachgelesen.
Naja, hatte gehofft, dass Access da was anbietet.... schade

Trotzdem Dank an alle und Gruß

Christian

Loading...