Einzelnen Beitrag anzeigen

bernhard_LA

Registriert seit: 8. Jun 2009
Ort: Bayern
1.121 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: JSON -> Database -> Auswertung ?

  Alt 2. Mai 2022, 08:57
Daten kann ich leider hier nicht veröffentlichen.

Die Daten entstehen durch die Benutzung der Software aber vor allem auch durch Testcases.
(wir verwendenden MSBuild und Jenkins).
Ziel ist dabei die Optimierung von Algorithmen.
Für mich der Vergleich der Ergebnisse mit verschiedenen testdaten als auch mit verschiedenen Code- Varianten hilfreich.



Delphi-Quellcode:
Type LoggeAlles = class
        private
        FComputername : String;


        public
        Ausführungsdatum : TDatetime ;
        Ausführunsgzeit1 : TDatetime ;
        Ergebnis1 : Float;
        .....
        ...

       /// NEU : für alle Felder die ich auslesen will werden jetzt properties eingeführt
       property Computername : String read FComputername write FComputername;
       end;




/// diese Funktion liefert mir die Namen alles Prop. meiner Klasse als Stringliste
procedure CheckProperties(Obj: TObject; sLst : TStringlist);
var
  ctx: TRttiContext;
  objType: TRttiType;
  Prop: TRttiProperty;
begin
  ctx := TRttiContext.Create;
  objType := ctx.GetType(Obj.ClassInfo);
   for Prop in objType.GetProperties do
       sLst.Add(Prop.Name);
end;

Aktuell suche ich eine Optionen bestimmte Feldnamen in eine *.csv Datei ausgewählt über die property & RTTI zu schreiben


Delphi-Quellcode:
  
  /// Lösung : Für alle ausgewählten Properties meiner Klasse den Wert des
  /// Feldes in eine Memo , *.csv oder .... schreiben
  ///
  for j := 0 to LoggeAllesList.Count - 1 do
  begin
    aLoggeAlles := LoggeAllesList.Items[j];
    ctx := TRttiContext.Create;
    objType := ctx.GetType(aLoggeAlles); /// ----- >>>> AV ???
    for i := 0 to sLst.Count - 1 do
    begin
         FField := objType.GetField(sLst[i]);
         Memo.Lines.Add( FField.ToString );
    end;
  end;
Warum bekomme ich eine AV im Code oben

Geändert von bernhard_LA ( 2. Mai 2022 um 14:34 Uhr)
  Mit Zitat antworten Zitat