Das Notes Forum

Domino 9 und frühere Versionen => ND7: Entwicklung => Thema gestartet von: Green am 07.11.06 - 16:31:27

Titel: queryrecalc & fieldsettext
Beitrag von: Green am 07.11.06 - 16:31:27
hallo

wenn ich im event queryrecalc versuche ein feld zu setzen, wird es nach ende des events wieder gelöscht. hier ein beispiel zum nachvollziehen:

Sub Queryrecalc(Source As Notesuidocument, Continue As Variant)
   Source.FieldSetText("Test","Text")
   print "Queryrecalc: " + Source.FieldGetText("Test")
End Sub

Sub Postrecalc(Source As Notesuidocument)
   print "Postrecalc: " + Source.FieldGetText("Test")
End Sub

ist das ein bug? kann man das umgehen?

green
Titel: Re: queryrecalc & fieldsettext
Beitrag von: m3 am 07.11.06 - 17:04:44
Du willst den Feldinhalt im Backend setzen. ;)
Titel: Re: queryrecalc & fieldsettext
Beitrag von: Green am 07.11.06 - 17:08:07
nein, ich will ihn nur im frontend setzen. es klappt wenn ich Source.FieldSetText("Test","Text") im postrecalc event aufrufe, nur will ich es vor dem refreshen setzen.
Titel: Re: queryrecalc & fieldsettext
Beitrag von: m3 am 07.11.06 - 17:39:43
Doch, Du willst den Wert im Backend-Dokument setzten, sonst klappts nicht. Du musst natürlich nicht, aber wenn Du das Problem lösen willst ...

Siehe auch die Designer-Hilfe:
Zitat
Refreshing the current document updates its representation in memory, as well as visually on the workspace, to reflect the changes that have been made to the back-end document.
Titel: Re: queryrecalc & fieldsettext
Beitrag von: koehlerbv am 07.11.06 - 17:56:39
Würde man Felder im QueryRecalc im Frontend setzen, könnte man sich auch selbst übel ein Bein stellen: Hat das Feld die Eigenschaft (oder gar die ganze Maske), bei Feldänderung alle anderen Felder neu berechnen zu lassen, würde man die nette Meldung bekommen "Versuch, verschachtelte Maskenereignisse auszuführen". Dann würde man nämlich aus dem xRecalc selbiges triggern.

Ein weiterer Grund, Martin "m3"s Ausführungen zu folgen.

Bernhard
Titel: Re: queryrecalc & fieldsettext
Beitrag von: Green am 08.11.06 - 11:57:10
jep hat funktioniert. ich hab zuerst nur gedacht m3 hat mich falsch verstanden. ich wusste nicht, dass es im frontend angezeigt wird wenn man es backend im queryrecalc event setzt.

green