Hallo Zusammen,
ich möchte nach Auswahl (AfterUpdate) des "Kombinationsfeld63" dessen Inhalt in das Textfeld "IDE111_DokuEbNr" schreiben.
Me.IDE111_DokuEbNr.Value = Me.Kombinationsfeld63
Leider kommt immer der "LZF 2448", kann aber nicht herauffinden an was es liegt. (sh. Bild: debuggen1)
Wenn ich nach den drücken des Debuggen-Bottoms ins Editorfenster geleitet werde wird die entsprechende Zeile gelb hinterlegt.
Der zu übergebende Wert (sh. Bild: debuggen2) wird zwar angezeigt, aber nicht ins Feld "IDE111_DokuEbNr" geschrieben. Wenn ich in den Entwurfsmodus des Formulars wechsle und wieder zurück, dann funktioniert es komischerweise einmal!
Hätte wer einen Tipp?
Gruss
mad
Hallo,
ich sehe im Bild, dass der Datenherkunft des Forms ein SQL-Statement zugewiesen wird.
Vermutlich gibt es das Steuerelement in der neu zugewiesenen Datenherkunft nicht.
ZitatVermutlich gibt es das Steuerelement in der neu zugewiesenen Datenherkunft nicht.
Habe jetzt mal die Tabelle und Steuerelement mit hinzugefügt, hoffentlich richtig gemacht?:
Private Sub Kombinationsfeld61_AfterUpdate()
Me!Kombinationsfeld63.Requery ' Datenherkunft für Listenfeld "Ebene-3" neu einlesen
Me.RecordSource = " SELECT tab_OEbene111.IDEbene111, tab_OEbene111.OrdnerNeuNr111, tab_OEbene111.Ordner111, tab_OEbene111.OrdnerNr111, Dokumente.IDE111_DokuEbNr" _
& " FROM tab_OEbene111 LEFT JOIN Dokumente ON tab_OEbene111.IDEbene111 = Dokumente.IDE111_DokuEbNr" _
& " GROUP BY tab_OEbene111.IDEbene111, tab_OEbene111.OrdnerNeuNr111, tab_OEbene111.Ordner111, tab_OEbene111.OrdnerNr111, Dokumente.IDE111_DokuEbNr" _
& " HAVING (((tab_OEbene111.OrdnerNr111) = [Formulare]![Dokumente_schreiben]![Kombinationsfeld61]))" _
& " ORDER BY tab_OEbene111.OrdnerNeuNr111;"
Me![Kombinationsfeld63].SetFocus
Me![Kombinationsfeld63].Dropdown
myErrExit:
Exit Sub
myError:
MsgBox Err.Number & " " & Err.Description
Resume myErrExit
End SubLeider immer noch die selbe Meldung.
Gruss
mad
Hallo Zusammen,
da ich selbst nicht weiterkommen, erlaube ich mir hiermit mal eine abgespeckte Version des Formulars das den Fehler erzeugt mit einzustellen.
Habe bereits alle Tabellen, Abfragen u. Formulare in eine komplett neue DB importiert um eventuelle "Altlasten" abzuschütteln.
Beim öffnen der DB wird bereits das entsprechende Formular mit "acNewRec" geöffnet.
Anschliessend unter 1. ein Datum eingeben, unter 2. einen beliebigen Text eingeben und unter 3. - 5. einfach die Dropdown-Auswahl des jeweiligen Kombi-Feldes auswählen.
Nach Auswahl den 5. Feldes kommt eben die entsprechende Fehlermeldung mit LZF 2448.
Vielleicht gibt es einen weiteren Tipp für mein Problem.
Danke
mad
Hallo,
-- die Datenherkunft (nach Aktualisierung eines Kombis) ist nicht (mehr) aktualisierbar (Left Join).
Heißt ein "Inner Join" wäre das richtige?
Habe es ausprobiert, kommt aber die selbe Meldung.
Muß ich einen ganz anderen weg einschlagen?
Gruss
mad
Hallo,
grundsätzlich muss die zugrunde liegende Abfrage aktualisierbar sein. Das ist sie nicht, wenn left/right join oder auch andere Methoden, zb. Berechnete Spalten benutzt werden.
Ich für meinen Teil verzichte aber eher ganz auf Abfragen in der frühen Entwicklungsphase und schreibe nur den reinen Tabellen-Namen in die Datenherkunft, außer wenn eine Abfrage unabdingbar wäre.
Hallo,
ich habe jetzt als Datenherkunft für das Formular die Tabelle "Dokumente" verwenden.
Die "DokuNr" wird nun über den Code "nach Aktualisierung" des Feldes "DokuDatum" erzeugt.
Habe nun für das "Kombinationsfeld63" das Steuerelement "IDE111_DokuEbNr" hinterlegt.
Nun kann ich aber den gefilteren Wert im "Kombinationsfeld63" (5. Ebene3) nicht mehr auswählen/anklicken.
Leider weis ich aktuell nicht weiter.
Würde mich über weitere Hilfe freuen.
Gruss
mad
Hallo,
die Kombis weisen nach wie vor Left-Join-Abfragen der Form-Datenherkunft zu.. Zudem gibt es das Feld "IDE_DokuEbNr" dabei nicht (mehr)...
Diese ganze Konstruktion solltest Du ändern...
Ich glaube ich muß mich jetzt langsam rantasten.
Habe jetzt mal die Tabellen neu angelegt mit 1:n Beziehungen und auch ein paar Datensätze hinterlegt.
Habe im Formular wieder die drei Auswahlfelder (Kombis) angelegt.
Wie bekomme ich es jetzt hin das ich in der nächste Ebene (3.-5.) nur die DS angezeigt bekomme die der Ebene drüber entsprechend zugeordnet (1:n Beziehung) werden?
Brauche ich da wieder entsprechende Ereignisprozeduren?
Gruss
mad
Hallo,
das nennt sich "abhängige Kombifelder" und ist hier: https://www.donkarl.com/?FAQ4.36
ausführlich beschrieben.
Manchmal dauert's.
Aber jetzt hab's ich kapiert.
Funktioniert.
Herzlichen Dank
mad