Hmm, deine Bedenken kann ich verstehen, deshalb noch ein paar Tipps zum Saveoptions-Feld:
Notes verhält sich bzgl des Wertes etwas "komisch", insbesondere die uiDoc.refresh-Methode, deshalb würde ich nur folgende 2 Zustände zulassen:
SaveOptions := "0"
SaveOptions := @Unavailable
(Im Web muss das Feld als "echtes" Feld auf der Maske/Teilmaske vorhanden sein)
OT: gibt es irgendwo eine Auflistung was die SaveOptions-Werte "0","1", 0, -1, @Unavailable,"",... genau bedeuten?
Die Hilfe beschreibt ja nur "0" und "1", In der original-Mail-DB werden aber rein numerische Werte verwendet.
Call Me.m_noteUIDoc.document.replaceitemvalue(SAVE_OPTIONS, -1)
/OT
ich hab dein Problem übrigens mal nachgebaut und kann bestätigen, dass die Präsenz eines "onHelp"-Codes den ganzen querySave-Mechanismus durcheinanderbringt.
Evtl solltest du dir eine Alternative für das onHelp-Event überlegen:
- Einen Agenten starten (mit Formelsprache tritt das Problem nicht auf)
- OnHelp in einer TM verwenden (auch da tritt das Problem scheinbar nicht auf)
Allerdings erfordern vermutlich beide Lösungen ein Redesign der Help Routine.
Wenn sich der Code in der Maske befindet muss dieser ggf in einen Agenten/Subform ausgelagert werden, deshalb hätt ich hier noch einen zugegeben unschönen "Würgaround"
- im "onHelp" mit Formelsprache ein Feld auf "1" setzen und einen Recalc auslösen
- im QueryRecalc prüfen ob das Feld gesetzt ist und deinen bisherigen Help-Code ausführen, das Feld natürlich wieder zurücksetzen
Gruß
Roland