Domino 9 und frühere Versionen > Administration & Userprobleme

Programmierfragen DB´s

(1/1)

chakoe:
Hallo,

wie kann ich bei einem Textfeld in einer Maske folgendes realisieren:

Die Eingabe eines Wertes in dieses Feld ist zwingen erfoderlich -> ansonsten Fehlermeldung

Die Eingabe eines Wertes in dieses Feld, wlcher schon in einem anderen Dokument in dieses Feld eingegeben wurde ist nicht möglich. Es handelt sich um eine Inventar-DB, und bei diesem Feld
speziell um die Serien-nummer, welche einfach ausgefüllt werden muss, und nicht doppelt vergeben werden darf.

Danke für die Hilfe

Sebastian Tewes

eknori:
für die Duplikate habe ich hier

http://eknori.dyndns.org/knowledge/devidea.nsf/Alpha/80FFB2C1196EAD088025682A002C6C3A?OpenDocument

was für dich

Axel:
Hi,

du kannst im QuerySave-Event prüfen ob das Feld Seriennummer leer ist.

...
If Source.Document.Seriennummer(0) = "" Then
  Messagebox "Es muß eine Seriennummer vergeben werden."
  Continue = False
  Exit Sub
End If
...

Die Prüfung ob es eine Seriennummer bereits gibt kannst du mit der Search-Methode aus der NotesDatabase-Klasse realisieren oder du nimmst die GetDocumentByKey-Methode aus der NotesView-Klasse. Dazu brauchst du allerdings noch eine Ansicht, die in der ersten Spalte nach der Seriennummer sortiert ist.
Das Ganze passiert auch im QuerySave-Event


...
Dim db As NotesDatabase
Dim session As New NotesSession
Dim view As NotesView

Set db = session.CurrentDatabase
Set view = db.GetView("Name der Ansicht")
Set tmpdoc = view.GetDocumentByKey(Source.Document.Seriennummer(0), True)
If Not (tmpdoc Is Nothing) Then
  Messagebox "Seriennummer ist nicht eindeutig"
  Continue = False
  Exit Sub
End If
...

Axel

Navigation

[0] Themen-Index

Zur normalen Ansicht wechseln