Domino 9 und frühere Versionen > ND7: Entwicklung
Input-Validierung - Bug oder Feature?
LisaS:
Hallo Leute,
ich habe nach dem Update auf Domino 7 folgendes Phenomen bei den Feld Input Validationen.
Und zwar bin ich mir ziemlich sicher, dass unter Notes/Domino 5 bei folgender Formel in der Input Valitation,
--- Code: ---@If
(@IsDocBeingSaved=1 & Feld1 = "";
@Failure("Bitte geben Sie einen Wert an.");
@Success)
--- Ende Code ---
wenn das Feld leer ist und dass Dokument mit
--- Code: ---@Command([FileSave]); --- Dokument speichern
@SetField("SaveOptions";"0"); --- "Möchten Sie speichern" Popup unterdrücken
@Command([FileCloseWindow]) --- Fenster schließen
--- Ende Code ---
geschlossen werden soll - die Meldung der Validierung kommt und das Dokument geöffnet bleibt.
Das Problem ist jetzt aber, dass die Meldung kommt und das Dokument geschlossen wird.
Und das leere Feld wird gespeichert.
Wenn ich mir der Formel
--- Code: ---@Command([FileSave]); --- Dokument speichern
@Command([FileCloseWindow]) --- Fenster schließen
--- Ende Code ---
schließen möchte kommt bei einem leeren Feld1 die Fehlermeldung und
zusätzlich die Melung ob ich speichern möchte.
Klicke ich dann Nein wird dass Dokument geschlossen und das Leere feld wird gespeichert.
Ich dachte bei einer Feld Validierung kann das Dokument nicht gespeichert werden, bevor
die Bedingung erfüllt ist.
Im Querysave und Queryclose speicher ich nicht zusätzlich, hat auch jemand dieses Problem, oder
hab ich irgendwo einen Denkfehler?
Im übrigen habe ich an anderer Stelle das selbe Problem wenn ich eine Validierung im QuerySave machen möchte und mit coninue=False
den Speichervorgang abbrechen möchte.
Das hat doch sonst immer funktioniert. :-: :-: :-:
Gruß
Hitcher
botschi:
Im Querysave Coninue = false setzen haut bei uns super hin.
Die Feldvalidierung nutzen wir nie, weil mitunter von Notes Meldungen kommen "Feld hat Validierung nicht entsprochen" oder sowas, deswegen machen wir die Plausis beim Speichern, eben im Querysave. Und das tut sehr gut...
it898ur:
Die fragliche Formel muss so aussehen, damit bei einem Fehler beim Speichern (Input Validation oder QuerySave) kein Schließen erfolgt oder versucht wird (funktioniert ab Notes 5):
@If(@Command([FileSave]); @Command([FileCloseWindow]); @Return(void))
Gruß
André
LisaS:
@botschi:
richtig eigendlich validiere ich auch immer im Querysave, ist aber nicht immer möglich...
@André:
mit der Formel geht es - Problem gelöst. Eine Frage noch: Was ist viod?
Gruß
Hitcher
it898ur:
Ein Platzhalter für "mache nichts" - in der Regel funktioniert auch einfach "", aber mit einigen Notesversionen gab es da wohl Probleme und deshalb void.
André
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln