AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Einer Routine einen beliebigen Record übergeben
Thema durchsuchen
Ansicht
Themen-Optionen

Einer Routine einen beliebigen Record übergeben

Ein Thema von Luckie · begonnen am 28. Sep 2004 · letzter Beitrag vom 29. Sep 2004
Antwort Antwort
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#1

Re: Einer Routine einen beliebigen Record übergeben

  Alt 28. Sep 2004, 17:08
Zitat von Luckie:
Kann man jetzt irgendwas konstruieren, dass man jeweils nur den Record entsprechend anpasst und den Rest zum Speichern und Laden so lassen kann? Würde einem viel Arbeit abnehmen. Hat da jemand eine Idee oder ansatz, wie man das machen könnte?
Wenn du dich von normalen Records verabschiedest und stattdessen etwas komplizierteres verwendest, dann geht das.
Ich habe mir mal vor einiger Zeit ein "typisiertes Variant-Array" gebastelt.
Man hat also ein Array vom Datentyp Variant wobei jedes Element entweder über einen Namen oder einen Indez angesprochen werden kann.
Bei der Initialisierung wird zusätzlich zum Namen und Index auch noch ein Datentyp mitgegeben.
Der Zugriff auf die Daten sieht z.B. so aus:
Delphi-Quellcode:
 
const
   list:array [0..8] of TVAitem =
   (
   (name:'ArtikelNr'; vartype: varString),
   (name:'ArtikelName'; vartype: varString),
   (name:'EAN13'; vartype: VarString),
   (name:'Menge'; vartype: varDouble),
   (name:'MengeUnit'; vartype: varString),
   (name:'BruttoGewicht';vartype: varDouble),
   (name:'NettoGewicht'; vartype: varDouble),
   (name:'AuftragsNr'; vartype: varString),
   (name:'EquipmentNr'; vartype: varString)
   );
begin
   va := TTypedVariantArray.Create(list);

   va.ValueByName['ArtikelNr'] := '4711';
   va.ValueByName['Menge'] := 150.0;
Da man die Anzahl der Elemente und alle Namen abfragen kann, ist es kein Problem die Daten
in eine INI-Datei zu speichern.
Angehängte Dateien
Dateityp: pas uvariantarray.pas (9,2 KB, 11x aufgerufen)
Andreas
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:25 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz