Hallo ich möchte n einer datenbank prüfen ob ein artikel vorhanden ist um diesen dann mit der einer neuen Menge zu aktualisieren.
'Werte in DB schreiben
con.Open()
Dim cmdSel As New SqlCeCommand("Select count(*) as Anz from" & _
"wareneingang where artikel_nr = " & varArtikelnr & " and adrnr = " & _
varADRnr & " ", con)
Dim varAnz As Integer = cmdSel.ExecuteScalar
If varAnz = 0 Then
Dim cmd As New SqlCeCommand("Insert into wareneingang (referenz," & _
"artikel_nr, Menge, adrnr, Bemerkung ) " _
& "values ( " & varRef & ", " & _
varArtikelnr & ", " & varMenge & ", " & _
varADRnr & ", '" & varBemerkung & "' )", _
con)
cmd.ExecuteNonQuery()
ElseIf varAnz = 1 Then
Dim antw As String
antw = MsgBox("Der Artikel von dem Lieferanten ist bereits im WG." & _
"Soll die Menge hinzugefügt werden?", vbYesNo)
If antw = vbYes Then
'Menge des Artikels dem Artikel im WG hinzufügen
Dim cmdSel1 As New SqlCeCommand("Select menge as Anz from" & _
"wareneingang where artikel_nr = " & varArtikelnr & " and" & _
"adrnr = " & varADRnr & " ", con)
Dim varMe As Integer = cmdSel.ExecuteScalar
varMe = varMe + varMenge
Dim cmdUpd As New SqlCeCommand("update wareneingang set" & _
"referenz = " & varRef & ", artikel_nr = " & varArtikelnr & _
", menge = " & varMe & " where " _
& " artikel_nr = " & _
varArtikelnr & " and adrnr = " & _
varADRnr & "", con)
cmdUpd.ExecuteNonQuery()
daWG.UpdateCommand = cmdUpd ElseIf antw = vbNo _
Then
'Artikel hinzufügen
Dim cmd As New SqlCeCommand("Insert into wareneingang (" & _
"referenz, artikel_nr, Menge, adrnr, Bemerkung ) " _
& "values ( " & varRef & ", " & _
varArtikelnr & ", " & varMenge & ", " & _
varADRnr & ", '" & varBemerkung & "' )", _
con)
cmd.ExecuteNonQuery()
End If
ElseIf varAnz > 1 Then
MsgBox("es sind zu viele Artikel vorhanden")
End If
dsWG.Clear()
daWG.Fill(dsWG, "Wareneingang")
DataGrid1.DataSource = dsWG.Tables("Wareneingang")
con.Close() er aktualisiert zwar im ersten augenblick mein datagrid aber beim zweiten artikel liesst er wieder Menge 1 aus der Datenbank für varMe
Irgendwie bekomme ich das mit dem update nicht hin |