Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Record im Objekt (https://www.delphipraxis.net/74833-record-im-objekt.html)

davar 9. Aug 2006 13:30

Re: Record im Objekt
 
Zitat:

Zitat von JasonDX
ein KundenDaten := TKundenDaten.Create(...) sollte helfen ;)

Hmmmmm.....

Daran hat es gelegen. Versteh ich aber nicht ganz.

Wenn ich vorher statt

Delphi-Quellcode:
kunde1.kundennummer:= Form1.query1.fieldbyname('ID').AsString;
einfach ein Label angesprochen habe, also

Delphi-Quellcode:
label1.caption:= Form1.query1.fieldbyname('ID').AsString;
dann ging es auch. Aber in beiden Fällen ist doch der Befehl in der Prozedur "TKundendaten.Kundesuchen", also müsste doch, wenn Kundendaten noch nicht erstellt wurde, in beiden Fällen eine Fehlermeldung kommen..

mkinzler 9. Aug 2006 13:30

Re: Record im Objekt
 
Zitat:

ich bin da nich so fit mit SQL Querys, aber
wenn ich Select * from kundendaten mache
kommt da nicht mehr als ein String zurück?
Pro Zeile der Tabelle nur einer.

Aber ich wiederhole meinen Einwand von vorhin:

Wo erzeugst du eine Instanz von TKundendaten?

[Edit:
Zitat:

Delphi-Quellcode:
label1.caption:= Form1.query1.fieldbyname('ID').AsString;

Hier greifst du ja gar nicht auf die klasse zu.]

Sidorion 9. Aug 2006 13:33

Re: Record im Objekt
 
Die Variable Kundendaten ist nicht initialisiert.
a) im FormShow erst Kundendaten:=TKundendaten.Create rufen, dann solltest du die Variable allerdings als Member von TForm1 machen
oder
b) falls Kundendaten global sein soll ne Zugriffsfunktion implementieren.
Delphi-Quellcode:
Function GetKundendaten: TKundendaten;
Begin
  If not Assigned(Kundendaten)
  Then Kundendaten:=TKundendaten.Create;
  Result:=Kundendaten;
End;
Dann solltest Du aber einen Init/final sektion anfügen (direkt vor dem End.)
Delphi-Quellcode:
Initialization
  Kundendaten:=Nil;
Finalization
  GetKundenDaten.Free;


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:58 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz