vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Blitzschnelles Erstellen von grafischen Diagrammen!  
 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

VB.NET - Ein- und Umsteiger
Re: Tabelle Spalteninhalt vergleichen 
Autor: Manfred X
Datum: 16.10.15 06:31

Du verstehst leider nicht, worum es geht.
Lies noch mal diesen Beitrag:
http://www.vbarchiv.net/forum/id22_i98539t98538_tabelle-spalteninhalt-vergleichen.html

Der Inhalt der beiden csv-Dateien wird in Tabellen (Datatables) geladen.
Damit die Datensätze in diesen beiden TABELLEN aufeinander bezogen werden können,
wird jeweils eine ZUSÄTZLICHE Schlüsselspalte NEU erstellt.
Das erledigt die Routine "CreateNumberColumn".
Dieser Routine wird der Name einer Tabellenspalte übergeben, deren
Inhalt zu splitten ist und aus dem der Schlüsselwert erzeugt wird.
In dem obigen Beispiel wird nur die Artikelnummer als Schlüssel verwendet.
(In der Datarelation werden also NICHT die Spalten SP_13 und SP_2 verglichen.)

Danach hast Du festgestellt, daß aus der Artikelnummer kein eindeutiger Schlüssel
ensteht, sondern daß eine Kombination aus Markennname und Artikelnummer benötigt wird.

Soweit ich verstanden habe, steht in beiden Tabellen in der jeweils für den
Schlüsselaufbau relevanten Spalte (SP_2 bzw. SP_13) der Markenname am Anfang
und landet deshalb beim Splitten in parts(0).

Also muß die Routine irgendwie so angepaßt werden - im Detail abhängig vom aktuellen
Aufbau der Datensätze in den csv-Dateien ....
Private Function CreateNumberColumn(ByVal dt As cDataTableCSV, _
    ByVal ColumnEndswithNumber As String) As String
 
    Dim ColumnWithNumber As String = ""
 
    If Not dt.Columns.Contains(ColumnEndswithNumber) Then
       Throw New ArgumentException _
       ("Die Spalte " & ColumnEndswithNumber & _
         " ist nicht in der Tabelle vorhanden")
    End If
 
    dt.AddColumn() 'Spalte in Tabelle anfügen
    'Name der neuen Spalte abfragen
    ColumnWithNumber = dt.Columns(dt.Columns.Count - 1).ColumnName
 
    'Hilfsvariable
    Dim field As String, parts() As String, numberpart As String
    Dim number As Integer
 
    For Each row As DataRow In dt.Rows
 
       field = row(ColumnEndswithNumber).ToString() 'Feldinhalt abfragen
       parts = field.Split(" "c) 'Feldinhalt am Trennzeichen aufspalten 
 
       'Annahme: Artikelnummer steht im letzten Abschnitt
       numberpart = parts(parts.Length - 1) 'Letzter Abschnitt (=Nummer)
 
       'Prüfen, ob der letzte Teilstring als Integer darstellbar ist
       If Integer.TryParse(numberpart, number) Then
          'Annahme: Markenname steht im ersten Abschnitt
          'Markenname_ArtikelNummer in der neuen Spalte eintragen
          row(ColumnWithNumber) = parts(0) & "_" & number.ToString
       Else
          'keine Ziffernfolge im letzten Teilstring !!!
          row(ColumnWithNumber) = DBNull.Value 
       End If
    Next row
 
    'Name der neuen Spalte zurückgeben
    Return ColumnWithNumber
End Function
So lange Du nur den Code kopierst ohne dessen Bedeutung zu verstehen,
kannst Du die eventuell erforderlichen Detailanpassungen nicht vornehmen.

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Tabelle Spalteninhalt vergleichen5.656Vegas8506.10.15 23:00
Re: Tabelle Spalteninhalt vergleichen3.801Manfred X07.10.15 06:31
Re: Tabelle Spalteninhalt vergleichen3.156Sony8507.10.15 10:13
Re: Tabelle Spalteninhalt vergleichen3.198Manfred X07.10.15 10:37
Re: Tabelle Spalteninhalt vergleichen3.111Vegas8507.10.15 08:53
Re: Tabelle Spalteninhalt vergleichen3.140Manfred X07.10.15 09:34
Re: Tabelle Spalteninhalt vergleichen3.247Sony8507.10.15 11:16
Re: Tabelle Spalteninhalt vergleichen3.196Manfred X07.10.15 12:02
Re: Tabelle Spalteninhalt vergleichen3.133Vegas8507.10.15 22:44
Re: Tabelle Spalteninhalt vergleichen3.125Manfred X08.10.15 06:24
Re: Tabelle Spalteninhalt vergleichen3.136Vegas8508.10.15 08:35
Re: Tabelle Spalteninhalt vergleichen3.150Manfred X08.10.15 09:00
Re: Tabelle Spalteninhalt vergleichen3.081Vegas8508.10.15 09:20
Re: Tabelle Spalteninhalt vergleichen3.183Manfred X08.10.15 09:39
Re: Tabelle Spalteninhalt vergleichen3.157Vegas8508.10.15 10:35
Re: Tabelle Spalteninhalt vergleichen3.199Vegas8508.10.15 10:36
Re: Tabelle Spalteninhalt vergleichen3.248Manfred X08.10.15 11:37
Re: Tabelle Spalteninhalt vergleichen3.112Vegas8508.10.15 17:01
Re: Tabelle Spalteninhalt vergleichen3.148Vegas8509.10.15 08:43
Re: Tabelle Spalteninhalt vergleichen3.133Manfred X09.10.15 09:36
Re: Tabelle Spalteninhalt vergleichen3.086Vegas8509.10.15 18:55
Re: Tabelle Spalteninhalt vergleichen3.038Vegas8509.10.15 23:37
Re: Tabelle Spalteninhalt vergleichen3.058Vegas8515.10.15 00:15
Re: Tabelle Spalteninhalt vergleichen3.072Manfred X15.10.15 06:28
Re: Tabelle Spalteninhalt vergleichen3.046Vegas8515.10.15 08:33
Re: Tabelle Spalteninhalt vergleichen3.054Manfred X15.10.15 08:41
Re: Tabelle Spalteninhalt vergleichen3.039Vegas8515.10.15 22:07
Re: Tabelle Spalteninhalt vergleichen3.168Manfred X16.10.15 06:31
Re: Tabelle Spalteninhalt vergleichen2.989Vegas8521.09.16 21:15

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