Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Ungebundene Werte aus Formular in Tabelle eintragen

Begonnen von Mirrortears, Januar 25, 2016, 18:46:23

⏪ vorheriges - nächstes ⏩

Mirrortears

Hallöchen ich bins wieder mal  ;D
dieses mal aber nicht mit einem großen Problem sondern nur der einfachen Frage wie bekomme ich aus ungebunden Komboboxen (welche sich die Werte aus einer sql Abfrage holen) in eine Tabelle eingetragen?

Sprich wenn ich auf meinen Speichernbutton drücke nicht nur die "Stammdaten" speicher sondern auch die ungebundenen Boxen.

Ist das verständlich? Zum besseren Verständnis 2 Bilder im Anhand : 1) Mein Layout mit den Komboboxen und Textfeldern. 2) Bild meiner Tabelle in die es rein soll ;)

Und hier mein Speicherncode der soweit super für die linken Felder funktioniert.
Private Sub cmdSpeichern_Click()
    On Error GoTo Zu_Fehler
    If DBRecht = "Erweitert" Then
        If (Forms!frmBestellung.Dirty) Then
            DoCmd.RunCommand acCmdSaveRecord
            DoCmd.Requery
        End If
        DoCmd.GoToRecord acDataForm, "frmBestellung", acNewRec
    Else
        MsgBox "Sie haben nicht genügend Rechte"
    End If
Exit_Fehler:
    Exit Sub
Zu_Fehler:
    MsgBox Err.Description, vbInformation, "Fehler"
    Resume Exit_Fehler
End Sub

MzKlMu

Hallo,
warum ungebunden ?
Die Auswahl des Kombis muss doch in ein Tabellenfeld. Und an dieses Tabellenfeld bindest Du das Kombi.
Für solche Standardfunktionen brauchst Du sicher kein VBA, keinen Buchstaben.
Das Feld mit dem Datum "=Datum()" zeigt immer das aktuelle Datum an, ist das gewollt ?

Kann ein Kunde immer nur ein Produkt bestellen ?
Wenn nein, wie soll das gehen ?
Gruß Klaus

Mirrortears

Also mal zum Sinn und Zweck - Ein Kunde kann ein Produkt individuell gestalten und das erfolgt über die Kombifelder (durch die jeweiligen Abfragen).
Und das Speichern der ganzen Daten soll halt in 2 Tabellen (Bestellungen ; Kundendaten) gespeichert werden.
Und da ist halt meine Frage gibt es dazu einen einfachen Befehl?

MzKlMu

Hallo,
verwende gebundene Kombis (wie die anderen Felder auch), dann braucht es keinen Befehl. Die Auswahlen müssen doch in Tabellenfeldern gespeichert werden, was spricht als gegen gebunden ?

ZitatEin Kunde kann ein Produkt individuell gestalten und das erfolgt über die Kombifelder
Und noch mal die Frage: Kann ein Kunde in einer Bestellung immer nur ein Produkt gestalten ?

Zeige mal ein Bild der Beziehungen.
Gruß Klaus

Mirrortears

Ja pro Bestellung 1 Produkt =)
Also wenn ich sie binden mekert er immer mit den Werten weil ich ja das ganze Formular mit der tblKundendaten verknüpft habe damit er die Stammdaten dort in der tblKundendaten ergänzt/ändert.

MzKlMu

#5
Hallo,
Was willst Du denn da ergänzen. In der Tabelle mit den Bestellungen braucht es doch nur den Primärschlüssel des Kunden als Fremdschlüssel, weiter kommen keine Daten des Kunden in die Bestellung. Und dann nur noch die Felder zur Konfiguration des Produkts, jeweils als gebundene Felder, auch die Kombis.
Das ist eine ganz einfache Sache, wenn Du es richtig machst. Da braucht es keinen VBA Code.
Übrigens, auch ein Button zum Speichern ist dann überflüssig.

Und noch mal die Bitte:
Zeige mal ein Bild der Beziehungen.
Gruß Klaus

Mirrortears

Mit einem Beziehungsbild kann ich leider nicht dienen. Vielleicht hab ich auch einfach gerade einen Knoten im Kopf und lass es bis Morgen ruhen.
Aber ich habe zu jedem ungebundenen Kombifeld eine separate Abfrage erstellt und eine separate Tabelle. Vielleicht liegt auch einfach da mein Fehler :o

MzKlMu

Hallo,
ZitatAber ich habe zu jedem ungebundenen Kombifeld eine separate Abfrage erstellt und eine separate Tabelle
nein, das ist kein Fehler, das ist richtig um nicht zu sagen unerlässlich.
Das Kombi muss an das Feld gebunden werden, in das der Wert des Kombis soll.
Du denkst viel zu kompliziert.

ZitatMit einem Beziehungsbild kann ich leider nicht dienen.
warum nicht ?
Eine Datenbank ohne Beziehungen ist (fast) unbrauchbar.
Dann nimm mal die Tabellen in das Beziehungsbild auf (ohne Beziehungen) und zeige mal dieses Bild. Oder beschreibe mal wenigstens die Tabellen mit den Feldnamen.
Ich fürchte nämlich, Du machst bereits in der Grundstruktur gravierende Fehler.
Gruß Klaus