Formularfeld aus Unterformular aktuaisieren

09/10/2009 - 21:26 von Herbert Fidesser | Report spam
Hallo NG,

in einem EndlosUF berechne ich im Formularkopf in einem Textfeld
(sumUnfang) die Summe eines Feldes.
Diese Summe soll nun auch im übergeordneten Formular in einem Textfeld
(bezGebucht) - mit etwas Text - angezeigt werden.
Ich verwende das Ereignis AfterUpdate des UF:
Forms!frmMain!bezGebucht = "Seiten gebucht: " & Format(Me.sumUmfang,
"0.00")

Das Problem: Die Anezige im übergeordneten Formular hinkt immer um
einen Schritt hinter dem UF nach. Es wird also immer der alte
(vorehrige, nicht mehr gültige) Zustand angezeigt.
Repaint, Refresh und Requery àndern nichts.
Aber: Beim schrittweisen Ausführen des Codes ist alles OK.

Langsam glaube ich an Wunder. Oder weiß jemand woran das liegt?
Gruß aus Wien
Herbert
 

Lesen sie die antworten

#1 Andreas Hauck
09/10/2009 - 23:01 | Warnen spam
"Herbert Fidesser" schrieb im Newsbeitrag
news:
Hallo NG,

in einem EndlosUF berechne ich im Formularkopf in einem Textfeld
(sumUnfang) die Summe eines Feldes.
Diese Summe soll nun auch im übergeordneten Formular in einem Textfeld
(bezGebucht) - mit etwas Text - angezeigt werden.
Ich verwende das Ereignis AfterUpdate des UF:
Forms!frmMain!bezGebucht = "Seiten gebucht: " & Format(Me.sumUmfang,
"0.00")

Das Problem: Die Anezige im übergeordneten Formular hinkt immer um
einen Schritt hinter dem UF nach. Es wird also immer der alte
(vorehrige, nicht mehr gültige) Zustand angezeigt.
Repaint, Refresh und Requery àndern nichts.
Aber: Beim schrittweisen Ausführen des Codes ist alles OK.

Langsam glaube ich an Wunder. Oder weiß jemand woran das liegt?
Gruß aus Wien
Herbert


Hallo Herbert,

hierüber war ich unlàngst auch gestolpert.
Dann hab ich das AfterUpdate-Ereignis der Textfelder im UF genommen, und das
HF mittels Prozeduraufruf aktualisiert.
Ich konnte diese Felder nehmen, da ich dort Eingaben machte (Stückzahl,
Preis, Rabatt etc.)

Codeschnipsel im Ufo:

Private Sub tbRabatt_AfterUpdate()
Me.Refresh
Forms!frmKalkulation.Summieren (Me.tbidKalkulation.Value)
End Sub

"Refresh" mußte sein, damit das Ufo aktualsiert wird und das HF(Prozedur)
die zuvor aktualisierten Daten benutzt..
Làßt Du das "refresh" weg, werden die Aktualisierungen erst spàter gemacht
und das HF nutzt die vorigen Daten.

Gruß Andreas

Ähnliche fragen