Programm ist schwierig und JSON auch, da ich das nicht öffentlich machen kann.
Das Objekt.
Code:
type
TecRmiData = class
private
FTypeId: string;
FTcdTypeId: string;
FHerstSchluessel: string;
FTypSchluessel: string;
FVvs_Schluessel: string;
FTypVvsPruefziffer: string;
FFahrzeugklasse: string;
FCodeAufbau: string;
FFabrikMarke: string;
FAmtlKlartextTyp: string;
FVariante: string;
FVersion: string;
FHandelsName: string;
FHerstText: string;
FAmtlKlartextaufbau: string;
FTxtKraftstoffKurz: string;
FCodeKraftstoff: string;
FHubraum: string;
FAnzAchsen: string;
FAbgasrichtlTg: string;
FNationaleEmiklasse: string;
FAntriebsachs: string;
FNennleistungKw4: string;
FNennleistungElektro30Min: string;
FHoechstgeschwindigkeit: string;
FAnzahlSitze: string;
FMasseFahrbereitMin: string;
FMasseFahrbereitMax: string;
FTechZulGesamtMasse: string;
FZulMaxAchsLast1: string;
FZulMaxAchsLast2: string;
FCo2Kombi: string;
FStandgeraeusch3: string;
FDrehStandgeraeusch: string;
FFahrgeraeusch3: string;
FTechnZulAnhaengerLastGebrem: string;
FTechnZulAnhaengerLastUngebrem: string;
FLeistungsGew: string;
FLaengeMin: string;
FLaengeMax: string;
FBreiteMin: string;
FBreiteMax: string;
FHoeheMin: string;
FHoeheMax: string;
FStuetzLast: string;
FBereifAchse1: string;
FBereifAchse2: string;
FGenehmigungsNr01: string;
FGenehmigungsDat01: string;
FBemerkungenAusnahmen: string;
FAnmerkungen: string;
FTxAnbringFzidnr: string;
FBaumuster: string;
FTxGetrTyp: string;
FFelgeAchse1: string;
FFelgeAchse2: string;
published
property TypeId: string read FTypeId write FTypeId;
property TcdTypeId: string read FTcdTypeId write FTcdTypeId;
property HerstSchluessel: string read FHerstSchluessel
write FHerstSchluessel;
property TypSchluessel: string read FTypSchluessel write FTypSchluessel;
property Vvs_Schluessel: string read FVvs_Schluessel write FVvs_Schluessel;
property TypVvsPruefziffer: string read FTypVvsPruefziffer
write FTypVvsPruefziffer;
property Fahrzeugklasse: string read FFahrzeugklasse write FFahrzeugklasse;
property CodeAufbau: string read FCodeAufbau write FCodeAufbau;
property FabrikMarke: string read FFabrikMarke write FFabrikMarke;
property AmtlKlartextTyp: string read FAmtlKlartextTyp
write FAmtlKlartextTyp;
property Variante: string read FVariante write FVariante;
property Version: string read FVersion write FVersion;
property HandelsName: string read FHandelsName write FHandelsName;
property HerstText: string read FHerstText write FHerstText;
property AmtlKlartextaufbau: string read FAmtlKlartextaufbau
write FAmtlKlartextaufbau;
property TxtKraftstoffKurz: string read FTxtKraftstoffKurz
write FTxtKraftstoffKurz;
property CodeKraftstoff: string read FCodeKraftstoff write FCodeKraftstoff;
property Hubraum: string read FHubraum write FHubraum;
property AnzAchsen: string read FAnzAchsen write FAnzAchsen;
property AbgasrichtlTg: string read FAbgasrichtlTg write FAbgasrichtlTg;
property NationaleEmiklasse: string read FNationaleEmiklasse
write FNationaleEmiklasse;
property Antriebsachs: string read FAntriebsachs write FAntriebsachs;
property NennleistungKw4: string read FNennleistungKw4
write FNennleistungKw4;
property NennleistungElektro30Min: string read FNennleistungElektro30Min
write FNennleistungElektro30Min;
property Hoechstgeschwindigkeit: string read FHoechstgeschwindigkeit
write FHoechstgeschwindigkeit;
property AnzahlSitze: string read FAnzahlSitze write FAnzahlSitze;
property MasseFahrbereitMin: string read FMasseFahrbereitMin
write FMasseFahrbereitMin;
property MasseFahrbereitMax: string read FMasseFahrbereitMax
write FMasseFahrbereitMax;
property TechZulGesamtMasse: string read FTechZulGesamtMasse
write FTechZulGesamtMasse;
property ZulMaxAchsLast1: string read FZulMaxAchsLast1
write FZulMaxAchsLast1;
property ZulMaxAchsLast2: string read FZulMaxAchsLast2
write FZulMaxAchsLast2;
property Co2Kombi: string read FCo2Kombi write FCo2Kombi;
property Standgeraeusch3: string read FStandgeraeusch3
write FStandgeraeusch3;
property DrehStandgeraeusch: string read FDrehStandgeraeusch
write FDrehStandgeraeusch;
property Fahrgeraeusch3: string read FFahrgeraeusch3 write FFahrgeraeusch3;
property TechnZulAnhaengerLastGebrem: string
read FTechnZulAnhaengerLastGebrem write FTechnZulAnhaengerLastGebrem;
property TechnZulAnhaengerLastUngebrem: string
read FTechnZulAnhaengerLastUngebrem write FTechnZulAnhaengerLastUngebrem;
property LeistungsGew: string read FLeistungsGew write FLeistungsGew;
property LaengeMin: string read FLaengeMin write FLaengeMin;
property LaengeMax: string read FLaengeMax write FLaengeMax;
property BreiteMin: string read FBreiteMin write FBreiteMin;
property BreiteMax: string read FBreiteMax write FBreiteMax;
property HoeheMin: string read FHoeheMin write FHoeheMin;
property HoeheMax: string read FHoeheMax write FHoeheMax;
property StuetzLast: string read FStuetzLast write FStuetzLast;
property BereifAchse1: string read FBereifAchse1 write FBereifAchse1;
property BereifAchse2: string read FBereifAchse2 write FBereifAchse2;
property GenehmigungsNr01: string read FGenehmigungsNr01
write FGenehmigungsNr01;
property GenehmigungsDat01: string read FGenehmigungsDat01
write FGenehmigungsDat01;
property BemerkungenAusnahmen: string read FBemerkungenAusnahmen
write FBemerkungenAusnahmen;
property Anmerkungen: string read FAnmerkungen write FAnmerkungen;
property TxAnbringFzidnr: string read FTxAnbringFzidnr
write FTxAnbringFzidnr;
property Baumuster: string read FBaumuster write FBaumuster;
property TxGetrTyp: string read FTxGetrTyp write FTxGetrTyp;
property FelgeAchse1: string read FFelgeAchse1 write FFelgeAchse1;
property FelgeAchse2: string read FFelgeAchse2 write FFelgeAchse2;
end;
type
TKbaDataResult = class(TObject)
private
FSearchKey: string;
FTooMuchResults: Boolean;
FNumberOfResults: Integer;
FNumberOfPossibleResults: Integer;
FFoundData: TArray<TecRmiData>;
public
constructor Create;
destructor Destroy; override;
published
property SearchKey: string read FSearchKey write FSearchKey;
property TooMuchResults: Boolean read FTooMuchResults write FTooMuchResults;
property NumberOfResults: Integer read FNumberOfResults
write FNumberOfResults;
property NumberOfPossibleResults: Integer read FNumberOfPossibleResults
write FNumberOfPossibleResults;
property FoundData: TArray<TecRmiData> read FFoundData;
end;
Und das deserialisieren
Code:
t := TKbaDataResult.Create;
valid := ObjectLoadJson(t, StringToUtf8(restRequest.Response.JSONText), TKbaDataResult);