bestimmten Datensatz in Array finden

deusfalsus

Erfahrenes Mitglied
Hallo,

ich habe zwei Arrays mit jeweils 12 und 10 Dimensionen.
Nun möchte ich anhand einer Nummer, die Element in beiden Arrays ist, entsprechend zusammengehörige Datensätze finden und Informationen in einem der beiden Arrays anfügen.
Wie kann ich umgehen, das eine Array so oft zu durchlaufen, wie ich Elemente im anderen Array habe?
Ich hab hier im Forum etwas vom Hashtables gelesen, aber die haben ja nur zwei Dimensionen. Oder versteh ich da was falsch.
Was wäre die geeignete Methode?
 
Hi

Bist du dir sicher, dass deine Array 12 Dimensionen haben?
Ab der 4 Dimension hört beim Menschen schon das Vorstellungsvermögen auf, wie dieses Gebildet aussieht.
Falls du Elemente / Felder meist:
Dann wäre eine HashTable oder Dictionary das was du suchst. Da kannst du über einen eindeutigen Schlüssel einen Wert identifizieren. (Key-Value-Pair)
 
Ach nee, hab Quatsch geschrieben.
Ich habe zwei Dimensionen, wobei die zweite Dimension soviele Elemente hat.
Visual Basic:
     Friend Structure structSpender
        Dim ID As Integer
        Dim strName As String
        Dim strVorname As String
        Dim BG As String
        Dim Rhesus As String
        Dim strA1 As String
        Dim strA2 As String
        Dim strB1 As String
        Dim strB2 As String
        Dim Quote As Byte
        Dim verf As Byte
        Dim letzeSpende As Date
    End Structure

    Friend Structure structKonserven
        Dim iKonserv As Integer
        Dim iSpenderNr As Integer
        Dim iKonsNr As Integer
        Dim dEntDat As Date
        Dim strProdukt As String
        Dim dAblaufDat As Date
        Dim strA1 As String
        Dim strA2 As String
        Dim strB1 As String
        Dim strB2 As String
    End Structure
    
    Friend Spender() As structSpender
    Friend Konserven() As structKonserven
Allerdings weiß ich nicht, wie ich diese Arrays in einer Hashtable abbilden soll, da ich ja keine eindeutigen zweier Paare bilden kann. Ich hab ja immer Index/Feld/Wert. Nur Feld und Wert hätten ja keinen Zusammenhang mehr zum Rest.

Ziel der Übung hier ist, die Werte hinter Spender.strA1 bis B2 bei Konserven entsprechend einzutragen, wobei Konserven.iSpenderNr=Spender.ID sein soll.
 
Wäre es denn besser, mit DataTables zu arbeiten?
Meine Konserven landen nämlich nach der DB-Afrage erstmal in einer solchen.
 
Also wenn du in der Datenbank eine Relation zwischen den beiden Tabellen hast, dann hast du diese auch in der DataTable. Ich gehe jetzt einmal davon aus, dass iSpenderNr mit der ID aus deiner Spender-Tabelle verbunden ist.

Wenn dem nicht so ist und du nicht mit einer DataTable arbeiten willst, dann:

  1. Aus deinen Strukturen Klassen machen. Für Strukturen packst du eindeutig zuviel hinein.
  2. Eine Hashtable verwenden, deren Key die jeweilige Id ist und deren Value das entsprechende Objekt ist. Damit kannst du eine Zuordnung schaffen.
 

Neue Beiträge

Zurück