Als erstes nochmals zum QueryClose:
Wenn ich in ein bestehendes Dokument etwas eingegeben hatte und dann auf das Kreuzchen gedrückt habe, klappte das Dokument zu meiner Verblüffung kommentarlos zu, kein Speicherdialog. Wenn ich bzw. der Anwender nichts eingebe, soll auch kein Script ablaufen. Ich war nach dem Hinweis von M3 schon am Überlegen, ob die Validierung da auch noch mal reingehört.
Ich habe heute eine Testmaske testa mit einem Testfeld test1(einfaches Textfeld,
ohne Eingabevalidierung etc.) angelegt.
Function Validation As Boolean
Dim ws As New Notesuiworkspace
Dim uidoc As NotesUIDocument
Dim strPflichtTab1 List As String 'soll dann alle zu prüfenden
Felder mit Label aufnehmen
strPflichtTab1("test1") = "Testfeld"
Set uidoc= ws.currentDocument
Validation = true
Forall v In strPflichtTab1
Print Cstr(v)
If uidoc.FieldGetText(Listtag(v)) = "" Then
Print Listtag(v)
Messagebox "Bitte füllen Sie das Feld " & V & " aus!", 0,
"Eingabefehler"
uidoc.GotoField(Listtag(v))
Validation = False
End If
End Forall
End Function
Sub Querysave(Source As Notesuidocument, Continue As Variant)
If Validation Then
'Historie schreiben
Else
continue = False
Exit Sub
End If
End Sub
Die Testmaske verhielt sich völlig normal.
Daraufhin habe ich die alte Maske kopiert, und die Maskenkopie arbeitet genauso wie erwartet. Die ursprüngliche Maske schliesst sich weiterhin. Da muss also irgendwas im Designelement gehakt haben.
Grüsse
Dau-in