vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

ADO.NET / Datenbanken
update einer position 
Autor: joseph
Datum: 09.12.09 13:28

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
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
update einer position1.459joseph09.12.09 13:28
Re: update einer position717joseph10.12.09 09:33

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel