vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
vb@rchiv Offline-Reader - exklusiv auf der vb@rchiv CD Vol.4  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   RSS-Feeds  | Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2020
 
zurück

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

VB.NET - Ein- und Umsteiger
DataTable kopieren und bearbeiten 
Autor: Kim
Datum: 09.09.20 11:50

Hallo Zusammen,

ich lade per Designer über ein Dataset eine SQL View in eine Datagridview.
Danach schreibe ich die Daten per DataTable in eine XML mit WriteXML.
Ich würde gerne die Daten aus der XML über einer zweiten DataTable in einer anderen Datagridview mit 2 zusätzlichen Spalten bearbeiten und zurück schreiben.
Ist das überhaupt möglich oder muss ich hier einen ganz anderen Weg nehmen?


Ziel ist es den Daten aus der XML einen Status mitzugeben (mit Zeitstempel) und zu speichern.

Entschuldigt schon mal für meine komplizierte Erklärung ich bin ganz neu in VB.NET.

Vllt kann mir da ja wer einen Tipp geben.

Vielen Dank

Gruß

Kim
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: DataTable kopieren und bearbeiten 
Autor: effeff
Datum: 10.09.20 08:08

Daten laden:

Dim DeineXMLDatei As String="D:\irgendwas\irgendwas.xml"
Dim dtDeineDataTable As New DataTable
dtDeineDataTable.ReadXML(DeineXMLDatei)
 
DeinDataGridView.DataSource=dtDeineDataTable
Daten speichern:

dtDeineDataTable.WriteXML(DeineXMLDatei)

EALA FREYA FRESENA

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: DataTable kopieren und bearbeiten 
Autor: Kim
Datum: 10.09.20 18:24

Vielen Dank für die Antwort.

ich habe es mal getestet, leider bekomme ich einen Fehler

System.InvalidOperationException: "DataTable unterstützt keine Schemadeduktion von Xml."

Habe es auch mit einem Neuen DataSet probiert genau das Selbe Problem.

Gruß

Kim
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: DataTable kopieren und bearbeiten 
Autor: effeff
Datum: 10.09.20 19:26

//ich lade per Designer über ein Dataset eine SQL View in eine Datagridview.//

OK.

//Danach schreibe ich die Daten per DataTable in eine XML mit WriteXML.//

Wie kommen die Daten in die DataTable (Hier wäre Code hilfreich)?

EALA FREYA FRESENA

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: DataTable kopieren und bearbeiten 
Autor: effeff
Datum: 10.09.20 19:33

Du musst vor dem Einlesen der XML die DataTable initialisieren, indem Du das Schema erstellst. Ich mache das z. B. folgendermaßen:

Dim dtGenres As New DataTable
Dim SavePath As String="D:\irgendwas"
 
 
Private Sub XMLLaden()
Initialize_dtGenres
ReadXML
 
'MachWasMitDerDataTable
 
End Sub
 
Private Sub Initialize_dtGenres()
 
        dtGenres.TableName = "Genres"
 
        Dim keys(1) As DataColumn
        Dim column As New DataColumn
        column.DataType = System.Type.GetType("System.Int32")
        With column
            .ColumnName = "ID"
            .AutoIncrement = True
            .AutoIncrementStep = 1
        End With
        dtGenres.Columns.Add(column)
        keys(0) = column
        dtGenres.PrimaryKey = keys
 
        column = New DataColumn
        column.DataType = System.Type.GetType("System.String")
        column.ColumnName = "Genre"
        dtGenres.Columns.Add(column)
 
    End Sub
 
    Private Sub ReadXML()
        Dim SavePathXML As String = System.IO.Path.Combine(SavePath, _
          "Genres.xml")
        If System.IO.File.Exists(SavePathXML) Then
            dtGenres.ReadXml(SavePathXML)
        End If
    End Sub

EALA FREYA FRESENA

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: DataTable kopieren und bearbeiten 
Autor: Kim
Datum: 11.09.20 08:41

Guten Morgen,

derzeit schreibe ich die Daten mit folgenden Code in die XML.


Imports Form1.Dataset1
Imports System.Xml
Imports System.Data
 
Sub XML_Schreiben
Dim tba As Dataset1.DataTable = Dataset1.DataTable1
 
tba.WriteXml(D:\Irgendwas\XML.xml)
 
End Sub
Habe jetzt folgenden Code verwendet um die XMl Datei zu lesen.

Sub Datagrid_Füllen()
 
        Dim xmlFile As XmlReader
        xmlFile = XmlReader.Create(D:\Irgendwas\XML.xml, New XmlReaderSettings( _
          ))
        Dim ds As New DataSet
        ds.ReadXml(xmlFile)
        Dim i As Integer
 
        KMA.HLA_DataGridView.DataSource = ds.Tables(0)
 
 
    End Sub
Ich bin mir sicher das es noch eine bessere Lösung gibt. Aber wie gesagt ich bin Anfänger und lerne derzeit nur dazu.

Ich probiere auch die Variante von EffEff.

Vielen Dank für eure Antworten.

Gruß

Kim
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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