Hallo!
Ich habe
http://atnotes.de/index.php?topic=55872.0 gefunden, wollte da auch antworten, aber die Seite meint, das das Thema schon etwas alt sei.
Darum auf ein Neues:
Mein
Custom Validator speichert das Dokument unabhängig vom zurück gegebenen Wert von validate.
<xe:this.validators>
<xp:customValidator
message="Dieser Wert wurde schon schon verwendet.">
<xp:this.validate><![CDATA[#{javascript:var sID:String = getComponent('inputText1').getSubmittedValue();
var vieLU:NotesView = database.getView('(vieLU)');
var docLU:NotesDocument = vieLU.getDocumentByKey(sID, true);
return (docLU == null) ? true : false;}]]></xp:this.validate>
</xp:customValidator>
</xe:this.validators>
Im Prinzip soll hier nur geprüft werden, ob der Wert in inputText1 schon in einer Ansicht vorkommt. inputText1 ist
nicht leer und docLU wird auch gefunden
(ist soweit schon überprüft). D.h. der Vergleich liefert in diesem Fall
false zurück und sollte also den Wert message anzeigen. Stattdessen wird aber gespeichert. - Wobei es egal ist, was zurück geliefert wird (true oder false), es wird in jedem Fall gespeichert und das Dokument doppelt angelegt.