Zusätzliche Eintrag bei INNER JOIN

Hallo,

ich habe immer noch Probleme mit dem Formular (frmErfassung), dass zur Bearbeitung unserer Daten erstellt worden ist.
Es gibt eine Haupttabelle mit Kommentarfeldern, Datumsangaben, Verantwortlichkeiten, etc… (holdlot), die ergänzt werden mit Daten aus zwei anderen Tabellen (camic und batrel). Eindeutiger Schlüssel ist eine Art Seriennummer, bestehend aus Ziffern und Buchstaben.
Zur Zeit wird das Formular frmErfassung beim Start durch einen INNER JOIN erzeugt. So kann man im Formular durch Klick der rechten Maustaste die angezeigten Daten filtern, z.B. nach Produktionstyp, Verantwortlichkeit, Herstellungsdatum etc., d.h. man kann alle Daten zum Filtern verwenden.
Leider kann man keine neuen Einträge erzeugen!
Irgendwie will Access nicht, dass ich in das Schlüsselfeld, in dem die Seriennummer steht und das per controlsource mit dem entsprechenden Feld in der Haupttabelle holdlot verknüpft ist, etwas hineinschreibe…
Was kann ich tun?
Alles andere klappt wunderbar, nur der Neu-Eintrag will einfach nicht…
Grüße,
Sebastian

Der einfachste Weg, ohne dein funktionierendes Formular zu ändern, wäre ein Anfügebereich mit ungebundenen Textfeldern, deren Werte durch Klick auf einen Button Anfügen per VBA in die entsprechenden Tabellen eingefügt werden. Anschließend die Daten im Formular aktualisieren und den Anfügebereich leeren.

Alternativ versuche mal die Formulareigenschaft Recordsettyp auf „Dynaset (Inkonsistente Aktualisierungen)“ zu stellen.

Gruß Epa

Der einfachste Weg, ohne dein funktionierendes Formular zu
ändern, wäre ein Anfügebereich mit ungebundenen Textfeldern,
deren Werte durch Klick auf einen Button Anfügen per VBA in
die entsprechenden Tabellen eingefügt werden. Anschließend die
Daten im Formular aktualisieren und den Anfügebereich leeren.

Ich habe tatsächlich nur Felder, die ich ändern will, die in der Haupttabelle sind. Ich habe das Problem, dass ich, wenn ich einen neuen eintrag machen möchte, also auf acnewrec gesprungen bin, keine Berechtigung habe das Schlüsselfeld Seriennummer zu beschreiben. Alle anderen Felder will ich erst danach von Hand füllen. Die Daten aus den beiden anderen Tabellen sollen nur angezeigt werden.

Alternativ versuche mal die Formulareigenschaft Recordsettyp
auf „Dynaset (Inkonsistente Aktualisierungen)“ zu stellen.

Ich kann nur zwischen Snapshot und Updatable Snapshot wählen…
(und updatable ist ausgewählt)

Danke,
Sebastian

Genau das meine ich - statt zu einem neuen Datensatz zu gehen, solltest du ein Formular mit leeren Felder (oder z. B. auch im Fußbereich des aktuellen Formulars) anbieten, um neue Datensätze hinzuzufügen.

Also dein Neu-Button führt dann beim Klicken nicht die Aktion
„Zum neuen Ds gehen“ aus, sondern ermöglicht die Eingabe der Daten an anderer Stelle. Beim Schließen dieses anderen Formulars kann der Aktualiserungsbefehl an dein Auswertungsformular geschickt werden.

Hallo,

es muss doch auch möglich sein, ohne dass ein weiteres Formular benutzt werden muss, neue Einträge zu machen. Wir arbeiten z… mit einem Formular, in dem wir vorhandene Datensätze anschauen oder ändern oder neue hinzufügen können. Wenn man die Seriennummer eingibt, springt das Formular zum vorhandenen Ds oder bietet die Neu-Erstellung eines Ds an. Ich kann während der Eingabe in andere Ds gehen (über die Navigationsbuttons) und mir ähnliche Vorgänge anschauen, bevor ich den Eintrag beende.
So soll es alles auch sein.
Aber: ich möchte, dass man nach allen Feldern im Formular filtern kann. Und zwar mit der rechten Maustaste! Zum Vergleich, zum Auswerten o.Ä.
Im Moment befinden sich Daten aus einer zusätzlichen Tabelle in einem Unterformular und ich kann somit nicht nach ihnen filtern. Wenn ich sie in das Hauptformular hebe (per INNER JOIN), kann ich nach ihnen filtern, aber ich krige es nicht mehr hin, neue Einträge zu machen! Dabei werden nur Daten in die Felder eingetragen, die mit der Haupttabelle verbunden sind.

Es muss doch möglich sein, bei einem Formular, das per INNER JOIN mit Daten gefüllt wird, neue Einträge hinzuzufügen!?

Grüße,
Sebastian

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Wie ist denn der genaue Aufbau der Abfrage (Mastertabelle, Detailtabelle)?

Man kann beispielsweise alle Datenfelder einer Detailtabelle und alle aus der Mastertabelle aber ohne den Primärschlüssel verwenden, um Daten in eine Detailtabelle einzufügen. Suchen kannst du in allen Feldern.

Bei Inner-Join auch beachten: es müssen in allen mit Inner-Join-verknüpften Tabellen passende Daten vorhanden sein, damit die Daten sichtbar werden.

Ansonsten schicke doch mal die DB zu.

EPa