Domino 9 und frühere Versionen > Entwicklung

If uidoc.save Is True Then ...

(1/2) > >>

TMC:
Hi,

eigentlich was alltägliches:
Ein Dokument wird neu erstellt, verschiedene Felder werden ausgefüllt.
In den Input Validations mancher Felder stehen Validierungsformeln à la
"@If(Quan = "";@Failure("Leer!");@Success)"

Nun ist da noch ein Button, der ein Script enthält, welches das Dok weiter bearbeitet (Felder setzt etc.).
Ziemlich am Anfang (nach den dims und sets) steht:
uidoc.save

Problem:
Wenn ein Pflichtfeld nicht ausgefüllt ist, kommt
1) die erwartete @Failure-Box
2) danach zusätzlich eine Notes-Meldung: "NotesUIDocument: Save cancelled"

Wie kann ich die 2. Meldung unterdrücken?

Ich meine was in er Art wie:
.....
If uidoc.save Is True Then
Else
   Exit Sub
End If
.....

Wie kann man das realisieren?

TMC

Semeaphoros:
ErrorHandling, da uidoc.save keinen Rückgabewert liefert.


--- Code: ---On Error xxxx goto SaveErrorHandler
call uidoc.save
On Error xxxx goto ErrorHandler
   .....

EndOfSub:
exit sub

SaveErrorHandler:
Resume EndOfSub

ErrorHandler:
rem normaler Handler

End Sub

--- Ende Code ---
wobei xxxx für die betreffende Fehlernummer steht, die zu eruieren ist.


Andere Möglichkeiten wäre das Ausgliedern der Verifizierungen entweder ins QuerySave oder sogar in eine eigene Validierungsroutine fürs gesamte Formular, die dann nur bei Bedarf aufgerufen wird (damit lässt es sich allenfalls auch als Entwurf speichern).

HTH
Jens

TMC:
Danke für den Tipp, der hilft mir sehr weiter  :)

Grüße,
TMC

g202e:
Ich habe genau dasselbe Problem und komme nicht weiter, weil ich nicht weiß, welche Nummer diese Fehlermeldung hat.
Wie kriege ich die raus?
Es wird keine Nummer audgegeben sondern einfach nur  "NotesUIDocument: Save cancelled"   ???

Semeaphoros:
Dann mach doch einen allgemeinen Error-Handler (On Error Goto ...) und printe dort die Variable Err aus, dann hast Du die Nummer.

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln