Hallo, ich habe eine Komponente (damals noch mit Delphi 2 erstellt) für Feiertage. Dies enthält 26 Eigenschaften mit gleichem Namen+Nummerierung. Diese enthalten wiederum jeweils drei Eigenschaften. Ich möchte nun in einer Schleife mittels
RTTI von sämtlichen Feiertagen, also 01 - 26 immer das Datum auslesen. Ich habe mit
RTTI keinerlei erfahrung. Kann mir jemand helfen?
Die Komponente Sieht so aus:
Delphi-Quellcode:
type
TFeiertagStatus = (Day_Off, Work_Day, not_defined);
TTag = class(TPersistent)
private
FDatum, FBeschreibung : String;
FStatus : TFeiertagStatus;
protected
public
published
Property Datum : String read FDatum write FDatum;
Property Beschreibung : String read FBeschreibung write FBeschreibung;
Property Status : TFeiertagStatus read FStatus write FStatus;
end;
TFeiertag = class(TComponent)
private
LAdvent : TDateTime;
FJahr : integer;
FFeiertag01 : TTag;
FFeiertag06 : TTag;
FFeiertag12 : TTag;
FFeiertag03 : TTag;
FFeiertag04 : TTag;
FFeiertag05 : TTag;
FFeiertag08 : TTag;
FFeiertag09 : TTag;
FFeiertag10 : TTag;
FFeiertag11 : TTag;
FFeiertag17 : TTag;
FFeiertag13 : TTag;
FFeiertag14 : TTag;
FFeiertag24 : TTag;
FFeiertag25 : TTag;
FFeiertag26 : TTag;
FFeiertag23 : TTag;
FFeiertag07 : TTag;
FFeiertag15 : TTag;
FFeiertag16 : TTag;
FFeiertag18 : TTag;
FFeiertag19 : TTag;
FFeiertag20 : TTag;
FFeiertag21 : TTag;
FFeiertag22 : TTag;
FFeiertag02 : TTag;
function IsLeapYear(AYear : Integer) : Boolean;
function GetKarfreitag(AJahr: Integer): String;
function GetOstersonntag(nYear: Integer): String;
function GetOstermontag(AJahr: Integer): String;
function GetChristiHimmelfahrt(AJahr: Integer): String;
function GetPfingstsonntag(AJahr: Integer): String;
function GetPfingstmontag(AJahr: Integer): String;
function GetFronleichnam(AJahr: Integer): String;
function GetBuss_und_Bettag(AJahr: Integer): String;
function GetMuttertag(AJahr: Integer): String;
function GetVolkstrauertag(AJahr: Integer): String;
function GetTotensonntag(AJahr: Integer): String;
function GetAdvent1(AJahr: Integer): String;
function GetAdvent2(AJahr: Integer): String;
function GetAdvent3(AJahr: Integer): String;
function GetAdvent4(AJahr: Integer): String;
function GetJahr: integer;
procedure SetJahr(Value:integer);
procedure Ermitteln;
procedure NeuErmitteln;
protected
public
constructor Create(AOwner:TComponent);override;
destructor Destroy;override;
published
Property Jahr : integer read GetJahr write SetJahr;
Property Feiertag01 : TTag read FFeiertag01 write FFeiertag01;
Property Feiertag02 : TTag read FFeiertag02 write FFeiertag02;
Property Feiertag03 : TTag read FFeiertag03 write FFeiertag03;
Property Feiertag04 : TTag read FFeiertag04 write FFeiertag04;
Property Feiertag05 : TTag read FFeiertag05 write FFeiertag05;
Property Feiertag06 : TTag read FFeiertag06 write FFeiertag06;
Property Feiertag07 : TTag read FFeiertag07 write FFeiertag07;
Property Feiertag08 : TTag read FFeiertag08 write FFeiertag08;
Property Feiertag09 : TTag read FFeiertag09 write FFeiertag09;
Property Feiertag10 : TTag read FFeiertag10 write FFeiertag10;
Property Feiertag11 : TTag read FFeiertag11 write FFeiertag11;
Property Feiertag12 : TTag read FFeiertag12 write FFeiertag12;
Property Feiertag13 : TTag read FFeiertag13 write FFeiertag13;
Property Feiertag14 : TTag read FFeiertag14 write FFeiertag14;
Property Feiertag15 : TTag read FFeiertag15 write FFeiertag15;
Property Feiertag16 : TTag read FFeiertag16 write FFeiertag16;
Property Feiertag17 : TTag read FFeiertag17 write FFeiertag17;
Property Feiertag18 : TTag read FFeiertag18 write FFeiertag18;
Property Feiertag19 : TTag read FFeiertag19 write FFeiertag19;
Property Feiertag20 : TTag read FFeiertag20 write FFeiertag20;
Property Feiertag21 : TTag read FFeiertag21 write FFeiertag21;
Property Feiertag22 : TTag read FFeiertag22 write FFeiertag22;
Property Feiertag23 : TTag read FFeiertag23 write FFeiertag23;
Property Feiertag24 : TTag read FFeiertag24 write FFeiertag24;
Property Feiertag25 : TTag read FFeiertag25 write FFeiertag25;
Property Feiertag26 : TTag read FFeiertag26 write FFeiertag26;
end;