Domino 9 und frühere Versionen > Entwicklung

Pflichtfeld-Abfrage beim speichern

(1/2) > >>

TMC:
Hi,

die Frage war hier schon öfters lt. Suche, allerdings die Lösungen nichts für mich.

Klar kann man beim Speichern abfragen mit 'Input Validation' z.B.
@If(Subject = "";@Failure("Please enter a subject!");@Success)

Das hat aber (1) einen Schönheitsfehler: der Speicherrequester kommt dann nochmal, wenn z.B. ein Button "Speichern und schließen" angeklickt wird, in dem steht
@Command([FileSave]);
@Command([FileCloseWindow])


Und (2) ist es super umständlich, jedes Feld anzuklicken, Code einfügen, anpassen etc.

Schöner wäre ja eine generelle Scriptlösung....

Hat da keiner eine Lösung?

bye,
TMC

ata:
... ich pflege 3 Arrays - Feldnamen, Beschreibung und Datentyp
... im QuerySave der Maske lasse ich die Feldnamen überprüfen
... wenn eines leer, dann Continue = False und die entsprechende Meldung...

meinst du etwas in der Art?

ata

TMC:
Hi Ata,

hört sich interessant an  :)

Wenn Du einen Beispielcode noch hättest wäre prima, ansonsten schau ich mal selber, schätze soo schwierig wird das nicht sein.

Aber eben mit einem Beispiel wäre es noch einfacher für mich  :D

Danke jedenfalls für den Tipp!

bye,
TMC

TMC:
Nachtrag:

Und interessant zu wissen wäre es noch, wie man es dann steuert, dass die Abfrage nicht 2mal stattfindet bei Buttonclick auf "
@Command([FileSave]);
@Command([FileCloseWindow])
"

TMC

Axel_Janssen:
zu 1)
gibt es den Trick @if(@Command([FileSave]);
@Command([FileCloseWindow]);"");

klappt weil der @command FileSave einen boolean Wert zurückgibt. Das übersieht man leicht.

zu 2) Das hast du richtig erkannt. Dafür gibt es frameworks. Allerdings ist Feld-Validierung ein überraschend weites Feld. Es gibt Mehrwertfelder. Datumsfelder die nur in einer bestimmten Date-Range liegen dürfen. Möglicherweise noch in Abhängigkeit von einem anderen Feld... und vieles andere mehr. Diese Details der Business-Logik blasen dann das schönste Framework auf.
 
Gruß Axel

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln