vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 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

VB.NET - Fortgeschrittene
Teil 2 
Autor: strgalt
Datum: 09.04.05 23:52

Jou, Zweiter Teil


So, das währs zu den DataSet und Tabellen... Wie gesagt... Bei den Datenfeldern und Tabellen hab ich kräftig abgespeckt. Währen sonst einige Felder und Tabellen mehr.

Das Hauptformular werd ich mal grad so runterreißen. Wenn man das Hauptformular "frm_Master" startet, wird ein TreeView mit den Kunden aufgebaut... Auf jeder Node befindet sich im Tag die KID.

Wenn ich nun auf eine Node Klicke wird ein Eigenschaftenfenster aufgerufen dem auch gleich die KID mitgegeben wird:

[
Dim Newfrm_Detail As New frm_Detail(GetNodeInfo(eNodeInfo.KID))
Newfrm_Detail.ShowDialog()
Newfrm_Detail.Dispose()
/code]
 
Da man die frm_Detail nicht nur zum ändern sonder auch zum neu hinzufügen von _
  Datensätzen verwenden kann, hab ich ne NEW- Sub überladen - und jetzt gehts _
  los:
 
<pre><code>Public Sub New(ByVal KID As Long)
		MyBase.New()
		InitializeComponent()
		Me.FormModus = KID
End Sub
...
Private FormModusValue As Long
Public dv_VerkaufRes As New System.Data.DataView(ds_Master.Tables("Verkauf"))
Public dv_KundenRes As New System.Data.DataView(ds_Master.Tables("Kunden"))
 
Public Property FormModus() As Long
    Get
	Return FormModusValue
    End Get
    Set(ByVal Value As Long)
	FormModusValue = Value
	If FormModusValue > 0 Then
	         Dim KID As Long = FormModusValue
		'Kunde
		dv_KundeRes.RowFilter = "KID = " & KID
			If dv_KundeRes.Count > 0 Then
			    Me.txt_Nachname.DataBindings.Add("text", dv_KundeRes, "Nachname")
			End If
		'Verkauf
		dv_VerkaufRes.RowFilter = "KID = " & KID
		If dv_VerkaufRes.Count > 0 Then
		    Me.txt_ArtNrl.DataBindings.Add("Text", dv_VerkaufRes, "ArtNr")
		    Me.txt_ArtBez.DataBindings.Add("Text", dv_VerkaufRes, _
  "Artikelbezeichnung")
                        ...
		End If
	End If
    End Set
End Property
 
Private Sub bef_OK_Click(ByVal sender As System.Object, ByVal e As System.      _
          EventArgs) Handles bef_OK.Click
 
If Me.FormModus > 0 Then
    Dim SQLCmd_Report As New System.Data.SqlClient.SqlCommand()
    SQLCmd_Report.CommandText = "Update Kunde Set Nachname = @Nachname Where" & _
      "KID  = @KID"
    SQLCmd_Report.Parameters.Add("@KID", SqlDbType.BigInt, 8, _
    "KID").Value=Me.FormModus
    SQLCmd_Report.Parameters.Add("@Nachname", SqlDbType.NVarChar, 50, "Report")
    If UpdateSqlSrvRows(ds_Master.Tables("Kunde"), SQLCmd_Report, CNSTR_REPORT) _
      = False Then
				MsgBox("Beim Update der Daten ist ein Fehler aufgetreten", _
MsgBoxStyle.YesNo & MsgBoxStyle.Critical, "Fehler 1")
    End If
End If
Me.Close()
End If
 
End Sub
 
Public Function UpdateSqlSrvRows(ByVal tbl As SysData.DataTable, ByVal scmd_Upd _
  As SDSqlC.SqlCommand, _
    ByVal ConnectionString As String) As Boolean
    ' Funktion um geänderte Daten vom Dataset-Table im SQL-Server zu 
    ' aktualisieren
 
    Dim scn As New SDSqlC.SqlConnection(ConnectionString)
    Dim sda As New SDSqlC.SqlDataAdapter()
 
    scmd_Upd.Connection = scn
    sda.UpdateCommand = scmd_Upd
 
    Try
 
      sda.Update(tbl)
      Console.WriteLine("SQL-Daten des Tables " & tbl.TableName & " wurden" & _
        "aktualisiert!")
      Return True
 
    Catch ex As Exception
 
      Console.WriteLine(ex.ToString)
      Return False
 
    End Try
 
  End Function
so, war gar nicht einfach, das so zusammen zu kopieren.

Also wenn ich neue Datensätze über frm_Details hinzufüge (den teil hab ich herausgenommen) funktionierts - die neuen Datensätze sind auf dem SQL- Server. Wenn ich aber Datensätze ändere sind die auf dem SQL- Server nicht aktuallisiert, obwohl die Daten so wie ich sie in der frm_Detail geändert habe beim debuggen in den DataTables stehen ----- Verzweiflung

Gruß
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Datenbindung1.071strgalt09.04.05 16:16
Re: Datenbindung775ModeratorDaveS09.04.05 16:32
Re: Datenbindung732strgalt09.04.05 16:51
Re: Datenbindung768ModeratorDaveS09.04.05 17:56
Re: Datenbindung707strgalt09.04.05 21:21
Re: Datenbindung716ModeratorDaveS09.04.05 21:46
Teil 1749strgalt09.04.05 23:51
Re: Teil 1736ModeratorDaveS10.04.05 13:51
Teil 2741strgalt09.04.05 23:52
Re: Teil 2758ModeratorDaveS10.04.05 17:31
Re: Teil 2732strgalt10.04.05 18:07
Re: Teil 2713ModeratorDaveS10.04.05 18:19
Re: Teil 2807strgalt10.04.05 18:52

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