Input Validation erst beim speichern abrufen, aber wie?

  • Hallo Leute,


    ich habe in einem Formular mehrere Pflichtfelder. Ich verwende dabei die Input Validation (z.B. @If(@ThisValue=""; @Failure("Please type an action name"); @Success). Es nervt aber, wenn ständig dieses Popup auftaucht, sobald ich nur in ein Feld klicke, dass unterhalb des Pflichtfelds liegt.


    Frage:


    Kann man diese Input Validation Formel irgendwo reinsetzen, dass er ERST beim abspeichern danach fragt?


    Danke für die Hilfe.

  • Genau das habe ich bereits gemacht, aber ignoriert es einfach, wenn ich folgende formel im QuerySave einsetze:


    @If(status=""; @Failure("Bitte Status setzen"); @Success)


    status ist standardmäßig leer.


    muss ich irgendwo ein häkchen setzen?

  • Du muesstest umschalten beim QuerySave-Event auf LotusScript. Da gibt es dann einen Parameter "continue". Sollte das Feld leer sein, continue = false setzen.

    Code
    If (source.document.Status(0) = "") Then
    		Msgbox ("Deppchen, in das Feld 'Status' gehoert ein Wert rein!")
    		source.gotofield("Status")
    		continue = False
    	End If
  • Hi,


    soweit verstanden, okay.. Wenn ich das aber mit mehreren Feldern mache, poppen gleich alle Fenster unmittelbar hintereinander auf.


    beispiel:



    Wenn ich auf Speichern gehe, kommt das Erste Fenster "Deppchen, in das Feld 'Status' gehoert ein Wert rein!" :D , klicke ich da auf OK, kommt sofort danach das Fenster "Deppchen, in das Feld 'Comment gehoert ein Wert rein!" .
    Ich hatte gehofft, dass das "continue" dies verhindert..


    gibt es nicht sowas wie continue = SuperFalse :D , damit er gleich stehen bleibt, bis ich die Bedingung erfüllt habe?

  • Warum Schachtelst Du nicht einfach die if Abfragen?
    Das sollte dann dein Problem Lösen.


  • Ich hatte eine Zeile vergessen: