Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: Planungstool - Struktur ok ?

  Alt 7. Mär 2011, 16:55
Muss man nicht unbedingt ...

Für die Tabellen-Struktur baust du dir einfach eine Tabelle, die die Abhängigkeiten zum Vorgänger (ParentID), den Typen (IDType) und die ID des Eintrags (ItemID) speichert.

Nun erstellst du dir ein Basis-Formular, dem du eine ItemID übergeben kannst.
Delphi-Quellcode:
TFBaseItem = class( TForm )
public
  property ID : integer;
end;

// Das brauchen wir später noch :)
TFBaseItemClass = class of TFBaseItem;
Für alle vorkommenden Typen erstellst du dir ein entsprechendes Formular, abgeleitet vom Basis-Formular,
mit dem alle Funktionen zu diesem Item möglich sind. (Daten zur ID aus der DB anzeigen, bearbeiten)
Diese Formulare werden dann mit RegisterClassAlias deiner Anwendung bekannt gegeben.
Delphi-Quellcode:
TFLand = class( TFBaseItem);

initialization

RegisterClassAlias( TFLand, '1' ); // Land hat z.B. IDType = 1
// oder auch
RegisterClassAlias( TFLand, 'Land' );
Möchtest du nun das passende Formular zu einem Item anzeigen, dann geht das wie folgt:
Delphi-Quellcode:
procedure ShowItemForm( IDType, ItemID : integer );
begin
  with TFBaseItem( FindClass( IntToStr( IDType ) ) ).Create( Application ) do
  begin
    ID := ItemID;
    Show;
  end;
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat