Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: MaxP am März 06, 2024, 10:02:33

Titel: Aktualisierung eines Kombi-Felds im Ufo
Beitrag von: MaxP am März 06, 2024, 10:02:33
Hallo zusammen,

ich versuche nun schon Stunden, ein Kombifeld in einem Unterformular (Endlosform) beim Öffnen bzw. Laden des Formulars zu filtern. Den Wert für den Filter erhält es aus einem Kombifeld im Hauptformular (Kombifeld.column(3)). Beide Formulare sind an Tab/Abfrage gebunden.
Benutze ich händisch den Menü-Befehl Datensätze Aktualisieren wird das Kombifeld aktualisiert und zeigt Werte an. Auch ein Makro im Ufo funktioniert.

Folgende einzelne Codes habe ich bereits allerdings erfolglos ausprobiert:

Forms!Hfo!Ufo.Form!Kombi.Requery

DoCmd.DoMenuItem acFormBar, acRecordsMenu, 5, , acMenuVer70

DoCmd.Requery "Forms!Hfo!Ufo.Form!Kombi"

Refresh

Was mache ich falsch?

Gruß
Max
Titel: Re: Aktualisierung eines Kombi-Felds im Ufo
Beitrag von: MzKlMu am März 06, 2024, 10:15:32
Hallo,
welchen Namen hat das Unterformular-Steuerelements?
Das ist nicht der Name der im Datenbankfenster steht.
Titel: Re: Aktualisierung eines Kombi-Felds im Ufo
Beitrag von: Beaker s.a. am März 06, 2024, 12:11:04
Hallo,
Zitatein Kombifeld in einem Unterformular (Endlosform) beim Öffnen bzw. Laden des Formulars zu filtern.
Das geht nicht vom UFo aus. Denn dieses wird VOR dem HFo geladen und hat somit
(noch) keine Kenntnis von Eigenschaften des HFos.
Du musst das Kombi beim Laden des HFo aktualisieren
Private Sub Form_Load()
    Me.NameUFoControl.Form.DeinKombi.Requery
'Me. ist das HFo in dem sich der Code befindet
End Sub
gruss ekkehard

P.S.: Die .DoMenuItems-Methode solltest du ganz schnell wieder vergessen. Es ist
eine Schande, das MS Macros immer noch auf diese Weise in VBA "übersetzt".
Die meisten der anderen Methoden des DoCmd-Objekts i.Ü. auch. Ausser .OpenForm
und .OpenReport vielleicht, die sind ganz praktisch.
Titel: Re: Aktualisierung eines Kombi-Felds im Ufo
Beitrag von: MaxP am März 06, 2024, 14:44:12
Hallo,

also das HFo heißt:frm_NHK2_2010
das Kombi im Hfo heißt: SW1_Typ
das Ufo heißt: frm_GebStandard2_ufo = Herkunftsobjekt
das Kombi im Ufo heißt: GebStMerkm

Ist dieser Code denn richtig?
Me.frm_GebStandard2_ufo.Control.Form.GebStMerkm.Requery

Übrigens habe ich den Code
Forms!Hfo!Ufo.Form!Kombi.Requery
unter nach Aktualisierung beim Kombi im Hfo stehen und funktioniert auch.

Gruß
Max
Titel: Re: Aktualisierung eines Kombi-Felds im Ufo
Beitrag von: Beaker s.a. am März 07, 2024, 11:24:23
Hallo Max,
Zitatdas Ufo heißt: frm_GebStandard2_ufo = Herkunftsobjekt
Das Herkunftsobjekt ist das im UFo-Control angezeigte Formular. Diese beiden
Objekte sollten nicht den gleichen Namen haben. Ich verwende für das Control
immer das Prefix "uc" & Formularname.
ZitatIst dieser Code denn richtig?
Me.frm_GebStandard2_ufo.Control.Form.GebStMerkm.Requery
Nein, "Control" und "Form" sind vertauscht. Die kompl. indexierte Schreibweise
lautet
Me.Controls("frm_GebStandard2_ufo").Form.Controls("GebStMerkm").Requery
ZitatÜbrigens habe ich den Code
Forms!Hfo!Ufo.Form!Kombi.Requery
unter nach Aktualisierung beim Kombi im Hfo stehen und funktioniert auch.
Na dann hast du doch schon den korrekten Bezug. Wobei
Forms!Hfo. das Gleiche ist wie Me.gruss ekkehard
Titel: Re: Aktualisierung eines Kombi-Felds im Ufo
Beitrag von: MaxP am März 21, 2024, 18:28:15
Hallo,
nachdem ich mich um einen anderen "Notfall" kümmern musste, habe ich in dieser Sache nun weitergemacht.

Dein genannter Code funktioniert, aber nur, wenn dieser im HFO Beim Öffnen UND Beim Laden eingetragen wird. Warum auch immer. Nur Beim Laden oder nur Beim Öffnen alleine funktioniert hingegen nicht.

Die Wege des Herrn AC sind unergründlich.

Ich denke, ich kann damit leben und bedanke mich vielmals!

Gruß
Max