Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: MrB am Oktober 23, 2018, 14:56:58

Titel: Anfügeabfrage ohne Fehler und ohne Wirkung
Beitrag von: MrB am Oktober 23, 2018, 14:56:58
Neue Frage zu einem neuen Problem.
Ich habe ein Formular zur Eingabe neuer Teile erstellt, das bis auf Feinheiten funktioniert.
Jetzt müssen die Daten in die Tabellen tblTeile und tblStueckliste
Dazu habe ich 2 Anfügeabfragen erstellt und will die Daten aus dem Formular als Kriterien über geben.
Leider funktioniert das nicht ich bekomme nix weder Fehlermeldung noch Erfolg.
Hier mal der Code
Private Sub bef_OkUndSpeichern_Click()
Dim db As DAO.Database
Dim qdf As DAO.QueryDef

Set db = CurrentDb
Set qdf = db.QueryDefs("abf_NeuteilAnfuegeAbfrage")

    qdf("1") = Me!txt_frm_Neuteil_anlegen_Nummer
    qdf("2") = Me!cbo_frm_Neuteil_anlegen_Materialgruppe.Column(0)
    qdf("3") = Me!cbo_frm_Neuteil_anlegen_Lieferanten.Column(0)
    qdf("4") = Me!cbo_frm_Neuteil_anlegen_G_Item.Column(1)
    qdf("5") = Me!cbo_frm_Neuteil_anlegen_SG_Item.Column(1)
    qdf("6") = Me!txt_frm_NeuteilAnlegen_Preis
    qdf("7") = Me!txt_Neuteil_Anlegen_G_Item_English
    qdf("8") = Me!txt_frm_Neuteil_Anlegen_SG_Item_English
    qdf("9") = Me!txt_frm_Neuteil_Anlegen_Remarks
    qdf("a") = Me!txt_frm_Neuteil_Anlegen_Remarks
        qdf.Execute

'Set qdf = db.QueryDefs("abf_NeuteilAnfuegeAbfrage_tblStueckliste")

    'qdf("b") = Me!txt_Neuteil_Anlegen_G_QTY
    'qdf("c") = Me!txt_SG_QTY
    'qdf("d") = ID_Teil
    'qdf("e")= Me!cbo_frm_Neuteil_anlegen_Stuecklistenzuordnung
        'qdf.Execute
End Sub

Habe bereits über Google gesucht aber nix gefunden.

Cord
Titel: Re: Anfügeabfrage ohne Fehler und ohne Wirkung
Beitrag von: DF6GL am Oktober 23, 2018, 15:04:25
Hallo,

sinnvoll wäre es, den SQL-String der Abfrage zu posten...
Titel: Re: Anfügeabfrage ohne Fehler und ohne Wirkung
Beitrag von: MrB am Oktober 23, 2018, 15:10:01
Habe die Datenbank auch in http://www.access-o-mania.de/forum/index.php?topic=23590.0 (http://www.access-o-mania.de/forum/index.php?topic=23590.0)
gerade hochgeladen.
INSERT INTO tblTeile ( ET_Number, ID_MG_F, ID_L_F, G_ITEM_German, SG_ITEM_German, HK_SG_SP, G_ITEM_English, SG_ITEM_English, ITEM_Details, REM )
SELECT tblTeile.ET_Number, tblTeile.ID_MG_F, tblTeile.ID_L_F, tblTeile.G_ITEM_German, tblTeile.SG_ITEM_German, tblTeile.HK_SG_SP, tblTeile.G_ITEM_English, tblTeile.SG_ITEM_English, tblTeile.ITEM_Details, tblTeile.REM
FROM tblWorkshops INNER JOIN (tblMAT_Gruppe INNER JOIN (tblLieferanten INNER JOIN (tblTeile INNER JOIN tblStueckliste ON tblTeile.ID_Teil = tblStueckliste.ID_Teil_F) ON tblLieferanten.ID_L = tblTeile.ID_L_F) ON tblMAT_Gruppe.ID_MG = tblTeile.ID_MG_F) ON tblWorkshops.ID_WS = tblStueckliste.ID_WS_F
WHERE (((tblTeile.ET_Number)=[1]) AND ((tblTeile.ID_MG_F)=[2]) AND ((tblTeile.ID_L_F)=[3]) AND ((tblTeile.G_ITEM_German)=[4]) AND ((tblTeile.SG_ITEM_German)=[5]) AND ((tblTeile.HK_SG_SP)=[6]) AND ((tblTeile.G_ITEM_English)=[7]) AND ((tblTeile.SG_ITEM_English)=[8]) AND ((tblTeile.ITEM_Details)=[9]) AND ((tblTeile.REM)=[a]));

INSERT INTO tblStueckliste ( ID_Teil_F, ID_WS_F, G_QTY, SG_QTY )
SELECT tblStueckliste.ID_Teil_F, tblStueckliste.ID_WS_F, tblStueckliste.G_QTY, tblStueckliste.SG_QTY
FROM tblWorkshops INNER JOIN (tblMAT_Gruppe INNER JOIN (tblLieferanten INNER JOIN (tblTeile INNER JOIN tblStueckliste ON tblTeile.ID_Teil = tblStueckliste.ID_Teil_F) ON tblLieferanten.ID_L = tblTeile.ID_L_F) ON tblMAT_Gruppe.ID_MG = tblTeile.ID_MG_F) ON tblWorkshops.ID_WS = tblStueckliste.ID_WS_F
WHERE (((tblStueckliste.ID_Teil_F)=[b]) AND ((tblStueckliste.ID_WS_F)=[c]) AND ((tblStueckliste.G_QTY)=[d]) AND ((tblStueckliste.SG_QTY)=[e]));

Ich hoffe du kannst da was mit Anfangen

Cord
Titel: Re: Anfügeabfrage ohne Fehler und ohne Wirkung
Beitrag von: MrB am Oktober 23, 2018, 15:46:14
Beim lesen des SQL ist mir aufgefallen ich frage die tblTeile aus der tblTeile ab ? und setze nur Kriterien um etwas zu finden, was nicht da ist.
Na dann kann ja nix rauskommen  :o
Ich glaube das kann ich löschen und was neues suchen
Hatte die Boardmittel Access gefunden war aber nicht zufrieden, weil ich beide Tabellen gleichzeitig füllen will.
Ich schaue dort nochmal glaube ich
Cord

Ps sollte ich mich irren und was missinterpretiert haben bitte ich um Korrektur
Titel: Re: Anfügeabfrage ohne Fehler und ohne Wirkung
Beitrag von: DF6GL am Oktober 23, 2018, 16:43:30
Hallo,

in der Tat...

Private Sub bef_OkUndSpeichern_Click()
Dim db As DAO.Database
Dim strSQl as String
Set db = CurrentDb

strSQL = "INSERT INTO tblTeile ( ET_Number, ID_MG_F, ID_L_F, G_ITEM_German, SG_ITEM_German, HK_SG_SP, G_ITEM_English, SG_ITEM_English, ITEM_Details, REM ) Values ('" & _
Me!txt_frm_Neuteil_anlegen_Nummer & "'," & _
<<ID_MG_Fremdschlüsselwert>>  & "," & _
<<ID_L_Fremdschlüsselwert>> & "," & _
Me!txt_Neuteil_Anlegen_G_Item_Deutsch & "','" & _
.
.
......  & "')"
db.execute strSQL,dbFailOnError

End Sub


Titel: Re: Anfügeabfrage ohne Fehler und ohne Wirkung
Beitrag von: MrB am Oktober 24, 2018, 10:15:13
Jetzt überträgt er endlich in die tblTeile aber das neue Feld für ET_Number scheint die Formatierung nicht zu nehmen.
Ausserdem muss ich mich noch mehr mit dem SQL beschäftigen scheint ja fast einfacher wie VBA.
Habe eine Seite gefunden wo einiges erklärt http://www.zentut.com/sql-tutorial/sql-insert/ (http://www.zentut.com/sql-tutorial/sql-insert/) wird nur wie weiss man wie was eingetragen wird
(,'" &  Me!txt_frm_Neuteil_Anlegen_Item_Details & "' ) woher bekommen ich die Info wann und wie ich & oder zusätsliche " anfügen muss ? In den Beispielen SQL und SQL1 sehe ich grad noch ' das wars.
Cord