Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: Steppaaan am September 09, 2010, 15:17:42

Titel: Formularübergreifend - Abhängige Kombinationsfelder
Beitrag von: Steppaaan am September 09, 2010, 15:17:42
Hallo zusammen!
Ich arbeite seit einiger Zeit an einer DB in der unter anderem Personaldaten gespeichert werden.
Bisher konnte ich alle meine Access Probleme selbst oder durch die Such-Funktion erarbeiten, jedoch hänge ich jetzt an folgendem Problem.

Ein Formular dient zur Erstellung und Bearbeitung des Personals. (Name, Vorname, Beschreibung, Beruf etc.)
Dazu kommen aber noch 3 abhängige Kombinationsfelder (Produkt->Betrieb->Fertigungsschritt)
Also erst Produkt auswählen (tabelle produkt), dann je nach ProduktID werden diveres Betriebe angezeigt (tabelle betriebe) und nach BetriebsID dann die Fertigungsschritte (tbl Fertigung) - passt

Dazu habe ich aber ein zweites Formular (endlosformular) zur Suche des Personals. In meinem Suchformular sehe ich alle erstellten Personen und kann sie anhand von Kombinationsfeldern (die gleichen Felder wie oben) filtern lassen (funktioniert ebenfalls). Wenn ich eine Person gesucht und gefunden habe, klicke ich auf einen "Details"-Button und Access soll mir dann den ausgewählten Datensatz im vorherigen Personal- Formular anzeigen und das Suchformular schließen. Es funktioniert alles bis auf die Wertübergabe der Kombinationsfelder.
Der Wert des ersten Feldes wird noch korrekt übernommen, aber Feld 2 und Feld 3 bleibt leer, egal was ich bisher versucht habe.
Hier ein Ausschnitt:

Überträgt die Inhalte von meinem Suchformular ins Peronalformular - klappt
    DoCmd.OpenForm "frm_Personal"
    Forms!frm_Personal.RecordsetClone.FindFirst StrFinden          (strFinden entspricht der ID des Personals)
    Forms!frm_Personal.Form.Bookmark = Forms!frm_Personal.Form.RecordsetClone.Bookmark

Hier sage ich ihm, dass er den Inhalt vom Kombifeld aus dem Suchformular in das Kombifeld des Personalformular übertragen soll - klappt
    Forms!frm_Personal!cmb_Produktion = Forms!frm_Suche!Produktion

Wenn ich das ganze allerdings für das zweite (und dritte) Kombifeld versuche, dann macht er nichts
    Forms!frm_Personal!cmb_Betrieb = Forms!frm_Suche!Betrieb

Dachte das ich evtl die requery funktion für das 2. Feld einbauen muss aber das wars auch nicht
    Forms!frm_Personal!cmb_Betrieb.Requery
    Forms!frm_Personal!cmb_Betrieb = Forms!frm_Suche!Betrieb

Hat irgend jemand eine Idee? Wäre spitze

Gruß - Stefan
Titel: Re: Formularübergreifend - Abhängige Kombinationsfelder
Beitrag von: DF6GL am September 09, 2010, 19:30:24
Hallo,

solche formualübergreifenden Funktionen sind eher von Übel...

Verstehe auch nicht, warum denn die Kombifeld-Werte aus dem Suchform in das Bearbeitungsform übertragen werden sollen, wenn doch eh der richtige Personal-DS angezeigt wird.


Die Ursache liegt vermutlich darin, dass die Werte aus dem Suchform nicht für den Bearbeitung-DS gültig sind.

Titel: Re: Formularübergreifend - Abhängige Kombinationsfelder
Beitrag von: Steppaaan am September 10, 2010, 08:04:03
Guten Morgen,

danke erstmal für die Antwort.
Hintergrund warum ich die Werte übertragen möchte ist der, dass das Formular zum erstellen und bearbeiten von Personen ein und dasselbe ist.
Demnach fülle ich die Kombifelder beim erstellen aus, wenn ich aber bearbeiten möchte (details klick im Suchform) dann sind sie leer.
Aber wenn das anscheinend ne größere Sache ist dann wende ich mich erstmal noch den anderen Weh-Wehchen der DB zu.
Vielleicht werde ich das Problem auch ein wenig umgehen. Ich werde wieder berichten.

Danke erstmal

Gruß - Stefan
Titel: Re: Formularübergreifend - Abhängige Kombinationsfelder
Beitrag von: DF6GL am September 10, 2010, 16:26:38
Hallo,

Zitat
dass das Formular zum erstellen und bearbeiten von Personen ein und dasselbe ist.

das ist eigentlich der Normalzustand....


ZitatVielleicht werde ich das Problem auch ein wenig umgehen.

Ja, das kann dadurch gelöst werden, dass im Suchform(so denn ein solches überhaupt nötig ist und die Suche nicht gleich im Bearbeitungsform gemacht werden kann) nur das ID-Feld benutzt wird, um im PersonalFormular den richtigen DS anzuzeigen. Dafür braucht es keine Übergaben von Kombifeld-Einträgen.