Habe in einem Feld für die Kontonummer folgendes im Exiting stehen:
Sub Exiting(Source As Field)
Dim ws As New NotesUIWorkspace
Dim this As NotesUIDocument
Set this = ws.CurrentDocument
If Not Isnumeric(this.FieldGetText("Kontonummer")) And Len(this.FieldGetText("Kontonummer")) >0 Then 'Überprüfung auf Zahl
Msgbox "Bittte nur Zahlen ins Feld schreiben"
End If
If Len(this.FieldGetText("Kontonummer")) > 10 Then 'Überprüfung der Länge
Msgbox "Bitte max. 10 Zeichen"
Call this.FieldSetText("Kontonummer", Left$(this.FieldGetText("Kontonummer"), 10)) 'Feldlänge wird gekürzt
End If
If Len(this.FieldGetText("Kontonummer")) < 8 Then 'Überprüfung der Länge
Msgbox "Bitte geben Sie eine gültige Kontonummer an"
Call this.FieldSetText("Kontonummer", Left$(this.FieldGetText("Kontonummer"), 10)) 'Feldlänge wird gekürzt
End If
End Sub
Die Überprüfung funktioniert auch soweit: Werden mehr als 10 Zeichen eingegeben wird auf 10 Stellen abgeschnitten. Werden 7 Stellen eingegeben bekommt der Benutzter die Meldung eine gültige Kto.-Nr. einzugeben. Die Kto.-Nr. dar 8-10 Stellen betragen. Möchte aber, dass der Cursor nach eingabe einer siebenstelligen (oder weniger) Kontonummer nicht ins nächste Feld springt, sondern noch im selben verweilt.
Kennt jemand eine Lösung?