Wie requery ein Unterformular von einem anderen Formular?

8

Ich habe mit diesem Problem allein zu kämpfen, dann mit etwas Hilfe, dann suchen Sie danach; aber ich hatte kein Glück. Also habe ich beschlossen zu fragen.

Ich habe zwei Formulare in Access 2007 können sie MainForm und EntryForm nennen.
MainForm hat ein Unterformular und eine Schaltfläche. Die Schaltfläche öffnet den EntryForm im Add-Modus. Was ich tun möchte, ist, wenn der EntryForm den neuen Datensatz speichert, würde es das Unterformular in MainForm aktualisieren (requery).

Ich habe diesen Setup-Code versucht

%Vor%

Keiner dieser Versuche scheint zu funktionieren. Gibt es eine Möglichkeit, diese Anfrage zu stellen? Danke für die Hilfe im Voraus.

    
Tony L. 18.12.2009, 16:20
quelle

4 Antworten

9

Nur ein Kommentar zur Methode, dies zu erreichen:

Sie machen Ihr EntryForm dauerhaft an das Formular gebunden, von dem Sie es anrufen. Ich denke, es ist besser, keine solchen Kontexte zu haben. Ich würde die requery aus der Save / Close-Routine entfernen und stattdessen die EntryForm modal mit dem Schalter acDialog öffnen:

%Vor%

Auf diese Weise ist EntryForm nicht darauf angewiesen, in einem Kontext verwendet zu werden. Die Alternative besteht darin, EntryForm mit etwas zu komplizieren, das weiß, welche Form es geöffnet hat und was abgefragt werden muss. Ich denke, es ist besser, diese Art von Dingen so nahe wie möglich am Kontext zu halten, in dem sie verwendet wird, und den Code der aufgerufenen Form so einfach wie möglich zu halten.

Vielleicht ist ein Grundsatz hier, dass jedes Mal, wenn Sie ein Formular mit der Forms-Sammlung aus einem anderen Formular erneut anfordern, es ein gutes Anzeichen dafür ist, dass etwas an Ihrer Architektur nicht stimmt - das sollte meiner Meinung nach selten passieren.

    
David-W-Fenton 19.12.2009, 06:26
quelle
13

Sie müssen den Namen des Unterformular-Steuerelements verwenden, nicht den Namen des Unterformulars, obwohl diese häufig identisch sind:

%Vor%

Oder, wenn Sie auf dem Hauptformular sind:

%Vor%

Weitere Informationen: Ссылка

    
Fionnuala 18.12.2009 16:49
quelle
2

Ich habe oben mehrere Lösungen versucht, aber keines hat mein Problem gelöst. Lösung zum Aktualisieren eines Teilformulars in einem Formular nach dem Speichern von Daten in der Datenbank:

Me formname.Requery

Es hat gut für mich funktioniert. Viel Glück.

    
user1603444 18.04.2013 18:49
quelle
0

Beim Schließen und Öffnen führt das Hauptformular normalerweise alle zugehörigen Abfragen (einschließlich der Unterformular-bezogenen) durch. Ich hatte ein ähnliches Problem und löste es, indem ich die folgende Schaltfläche zum Speichern der Befehlsschaltfläche beim Klickereignis hinzufügte.

%Vor%     
Vitanov 21.02.2013 13:23
quelle

Tags und Links