Help DB

5Rad

Mitglied
Hi,
weiß jemand warum das nicht tut?
Code:
Option Explicit

Dim WithEvents Rs As ADODB.Recordset
Dim KdName As String
Dim Rabatt As Double
Dim KdNr As Integer
Dim Cn As ADODB.Connection

Private Sub cmdCancel_Click()
    Unload Me
End Sub

Private Sub cmdSave_Click()
    KdName = txtKdName
    KdNr = txtKdNr
    Rabatt = txtRabatt
    
   Rs.Recordset.AddNew
   Rs.Recordset("KdNr") = KdNr
   Rs.Fields("KdName") = KdName
   Rs.Fields("Rabatt") = Rabatt
   Rs.Recordset.Update
End Sub

Sub Prüfung_Tabelle()
 On Error GoTo Tabelle_Err
    Set Rs = New ADODB.Recordset
        With Rs
            .ActiveConnection = Cn
            .CursorLocation = adUseClient
            .CursorType = adOpenKeyset
            .LockType = adLockOptimistic
            .Source = "Select * From tbl_Kundenstamm"
            .Source = "SELECT KdNr, KdName, Rabatt FROM tbl_Kundenstamm"
            .Open
        End With
 Exit Sub
    
Tabelle_Err:
    MsgBox "Tabelle 'Kundenstamm' ist nicht vorhanden!" & vbCrLf _
      & "Bitte Prüfen Sie die Datenbank 'Comback'", 16, "Warnung!"
    End

End Sub

Private Sub Form_Load()
 Prüfung_DB
 Prüfung_Tabelle
 
End Sub
Sub Prüfung_DB()
  On Error GoTo DB_Err
    Set Cn = New ADODB.Connection
        With Cn
            .CursorLocation = adUseClient
            .Mode = adModeShareDenyNone
            .Provider = "Microsoft.Jet.OLEDB.4.0"
            .Properties("Data Source") = "Comback.mdb"
            .Open
        End With
 Exit Sub
 
DB_Err:
    MsgBox "Datenbank ist nicht vorhanden!" & vbCrLf _
      & "Sie müssen das Programm beenden!", 16, "Warnung!"
    End
End Sub

Danke im Voraus für eure Bemühungen

lg
Piti
 
ich hätte jetzt gesagt

KdName = txtKdName
KdNr = txtKdNr
Rabatt = txtRabatt

musst bei Textfeldern .text angeben, damit das Programm weiss, welche Info du willst. Kann gut sein, dass dies als Standard genommen wird.
 
Also die Übergabe der Werte funktioniert mein eigentliches prob is hier

Code:
   Rs.Recordset.AddNew

hier kracht des Programm immer ...
 
Die Methode heisst bei mir
Visual Basic:
rs.addnew

und nicht

Visual Basic:
rs.recordset.Addnew

Grüsse bb
 
Guten Morgen.
:)
ich glaub ich hab schon mal erwähnt das ich en dummes Buch hab zum VB lernen ...

ICh danke dir bb
Ich poste mal den funktionierenden Code waren nemlich noch 2 Fehler drin
Code:
Private Sub cmdSave_Click()
    KdName = txtKdName
    KdNr = txtKdNr
    Rabatt = txtRabatt
    
   Rs.AddNew
   Rs.Fields("KdNr") = KdNr 'Hier Fehler 1
   Rs.Fields("KdName") = KdName
   Rs.Fields("Rabatt") = Rabatt
   Rs.Update  ' Hier war Fehler 2 
End Sub

Nochmals Danke :)

lg
Piti
 
Moin 5Rad

Schmeiss das buch weg! Nachdem wir beide nun schon den 2. Fehler da rausgeholt haben ;-)
 
Lol :) du hast recht
Dann hol ich mir ne Kopie von dir *gg*

Ich brauch endlich ne gescheide Stütze
Hab die Aufgabe bekommen VB6 zu lernen und des Buch Visual Basic 6 für Dummies

Das Buch is Super bloß zu Oberflächlich es schneidet jees Kapitel an ...
Drumm hab ich mri des "tolle" Buch von Visual Basic 6 Kompendium von dem Vater einer Freudin ausgeliehen ... (weist ja inzwischen selber wie toll das Buch is ... und dafür hat man mal 90 DM gezahlt ... *lol*)

Naja ich denk wir werden uns noch öfters lesen :)

Danke dir übrigens nochmals

lg
Piti
 
Zurück