vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

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

ADO.NET / Datenbanken
DataView update - Access 2003 Datenbank 
Autor: Wackes
Datum: 02.01.07 15:55

Hallo zusammen,

ich hab mir im Buchbeispiel auf eure Seite die Suchroutine angeschaut und in mein Formular Mitarbeiter eingebaut. Die Daten werden gesucht und gefunden. Wenn ich die Datensätze aber ändern möchte und gehe auf meine Toolbar für die Datensätze zu aktualisieren dann passierd gar nichts....

Ich benutze nur ein Formular, ich wollte dies auch aus Komfort beibehalten für die Datensuche und Aktualisierung. Vielleicht könnt ihr mit weiterhelfen, für Tips, Tricks und Beispiele zum lernen bin ich immer offen.

Danke!

Arno

 
Sub frmMitarbeiter_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

'Dataset leeren
Ds.Clear()

'suchen
dv = New DataView(Ds.Tables("MaKontakt"))

'Dataadapter füllen
da.Fill(Ds.MaKontakt)

cm = CType(Me.BindingContext(Ds, "MaKontakt"), CurrencyManager)

End Sub

Private Sub ToolStripButton5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton5.Click

'Löschen
If cm.Count > 0 Then
Dim msg As String = "Wollen Sie den Mitarbeiter " & txtName.Text & " wirklich löschen?"
Dim cpt As String = "Mitarbeiter löschen"
If MessageBox.Show(msg, cpt, MessageBoxButtons.YesNo, MessageBoxIcon.Question) _
= Windows.Forms.DialogResult.Yes Then cm.RemoveAt(cm.Position)
Else
MessageBox.Show("Kein Mitarbeiter zum Löschen vorhanden!", "", MessageBoxButtons.OK, MessageBoxIcon.Error)
End If

End Sub

Private Sub ToolStripButton3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton3.Click

'Aktualisieren

cm.EndCurrentEdit()
If Ds.HasChanges Then
Dim dtBest As ds.MaKontaktDataTable = Ds.MaKontakt
Dim bNr As Integer = dtBest(cm.Position).MaNr
' Ma-Nr über Index der typisierten DataTable ermitteln

' zuerst nur die neuen und geänderten Daten:
Dim dvRS As DataViewRowState = DataViewRowState.Added Or DataViewRowState.ModifiedCurrent
Dim updRws As DataRow() = dtBest.Select("", "", dvRS)
Dim modBest As Integer = da.Update(updRws)

' zuletzt das Update für alle gelöschten Ma:
dvRS = DataViewRowState.Deleted
updRws = dtBest.Select("", "", dvRS)
modBest += da.Update(updRws)

' die Anzeige:
Dim s As String = modBest.ToString & " Daten geändert " & Environment.NewLine
MessageBox.Show(s, "Änderungen erfolgreich in Datenbank übernommen!", MessageBoxButtons.OK, _
MessageBoxIcon.Information)
Else
MessageBox.Show("Keine Änderungen!", "Änderungen in Datenbank übernehmen", MessageBoxButtons.OK, _
MessageBoxIcon.Information)
End If

End Sub

Private Sub ToolStripButton4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton4.Click

''Suchen
''Datensatz suchen
Me.dv.Sort = ""
Me.dv.RowFilter = ""

Dim suchText As String
suchText = Me.ToolStripTextBox1.Text

Dim objZeilen() As DataRowView
suchText = Me.ToolStripTextBox1.Text
Me.dv.Sort = "Nachname"
objZeilen = dv.FindRows(suchText)
If objZeilen.Length = 0 Then
MessageBox.Show("Sorry, kein " & suchText & " vorhanden.")
Me.ToolStripTextBox1.Text = ""
Me.ToolStripTextBox1.Select()
Else
'Dim intIndex As Integer
Me.BindingContext(dv).Position = 0
dv.RowFilter = "Nachname = '" & suchText & "'"
Me.BindingContext(dv).Position = 0

Dim ctl As Control
For Each ctl In Me.Controls
ctl.Visible = True
Next
If objZeilen.Length > 1 Then
Me.ToolStripButton2.Visible = True
Else
Me.ToolStripButton2.Visible = False
End If

End If

With Me
.txtMaNr.DataBindings.Clear()
.txtMaNr.DataBindings.Add("Text", dv, "MaNr")
.cboAnrede.DataBindings.Clear()
.cboAnrede.DataBindings.Add("Text", dv, "Anrede")
End with
 
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
DataView update - Access 2003 Datenbank938Wackes02.01.07 15:55

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-2025 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