PDA

Vollständige Version anzeigen : Daten in einem Datensatz sperren


pong
22.03.2004, 10:47
Hallo,

bin ein absoluter MS Access Newbie und deshalb an dieser Stelle ziemlich hilflos. Mein Problem:

Ich möchte in einem Formular den Status von Bestellungen

d.h. Bestelldatum; Bestellmenge; etc.

und Lieferungen

d.h. Lieferdatum; Liefermenge; etc.

erfassen.

Die eingegebenen Daten für die Bestellung sollen nach einer Bestätigung (durch Clicken eines Buttons) nicht mehr zu ändern, d.h gesperrt, sein. (Diese Anforderung habe ich durch " .Locked" Funktionen, die beim Clicken des Buttons ausgefüht wird, erfüllt)
Erfolgt nun eine neue Bestellung soll ein neuer Datensatz angelegt werden. Nun habe ich das Problem, das in dem neuen Datensatz die Eingabefelder für die Bestellung ja gesperrt sind. Nun möchte ich realisieren, dass die Felder zur Aufnahme der Bestellung, im neuen Datensatz wieder aktiviert sind. Allerdings sollen hierbei die Bestellfelder im "alten" Datensatz weiterhin gesperrt bleiben.
Die Sperrung ist nötig, da zur Eingabe des Lieferstatusses nochmal Daten in den "alten" Datensatz eingegben werden müssen.

Sorry, für die laienhafte Beschreibung. Ich hoffe mir kann jemand helfen.

Gruß Pong

StehtimSchilf
22.03.2004, 16:46
Hi Pong

eine Idee:
füge Deiner Tabelle die die Grundlage für Dein Formular bildet ein neues Feld an, z.B. "gesperrt" mit Standardwert = FALSE

Beim Klicken auf Deinen Knopf kannst Du nun den Wert auf TRUE setzen!

Nun Markiere Deine Formular, wähle unter Eigenschaften das Register Ereignisse und dort: Beim Anzeigen und erstelle eine neue VB-Funktion

dort setzt Du nun in Abhängigkeit des Feldes "gesperrt" ob Deine Felder gesperrt sein sollen...

If not me.NewRecord then
Me.lieferdatum.locked = me!gesperrt
me.liefermenge.locked = me!gesperrt
etc...
Endif

Erläuterung: jedesmal beim Anzeigen der Datensätze wird nun geprüft ob der Inhalt des Feldes "gesperrt" TRUE ist und wenn, dann werden die Felder gesperrt! Du kannst natürlich das Feld 'gesperrt' als CheckBox anzeigen lassen und so explizit gewisse Datensätze wieder freigeben....

Ich hoffe ich konnte Dir auf die ^Sprünge helfen!
Gruz
SiS