Hallo,
ich habe eine Datenbank, in der pro Anwender eigentlich nur ein Datensatz erfasst werden sollte. Viele Köche verderben aber bekanntlich den Brei und so kommt es häufiger vor, dass mehrere Datensätze erstellt werden.
Dies möchte ich nun verhindern.
Kann mir jemand eine Idee geben, wie ich beim Anlegen eines Datensatzes anhand der Userid ermitteln kann, ob bereits ein solchen Datensatz existiert, eine diesbezügliche Fehlermeldung produziere und das Abspeichern eines solchen doppelten Datensatzes verhindern kann? Es würde mir wirklich helfen, die Datenbank sauber zu halten. Danke ! Silke
Hallo Silke,
eigentlich eine „einfache“ Sache:
Im QuerySave der Maske prüfst Du über ein Script, ob in der DB ein Dokument mit der UserID (Username, oder welches Feld auch immer dafür verwendet werden soll) existiert. Wie Du solch ein Dokument findest, ist ausreichend in der Hilfe beschrieben (per Search, per view und Methode getDocumentByKey, etc.).
Du solltest dann noch prüfen, ob das gefundene Dokument nicht identisch mit dem geöffneten Dokument ist (gleiche DocumentUNID)
Wenn also ein Doc existiert, dann kannst Du Dir ja aussuchen, was Du machst:
- Benutzer per msgbox informieren, dass eins existiert, speichern abbrechen und das andere (eigentliche) Dokument im Editmode öffnen
oder
- nur Benutzer informieren und speichern abbrechen
Sei da kreativ
Gruß
Bodo
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]