Autor Beitrag
marcs
Hält's aus hier
Beiträge: 7

Win XP Pro, Suse Linux 9.0
D6 Pro
BeitragVerfasst: Mi 21.07.04 14:27 
Hallo,

ich benutze eine ADS Datenbank V6.2 in meinem Programm.
Dieses erstellt zur Laufzeit anhand einer Tabelle und einer Ini-Datei Eingabefelder zum bearbeiten der Daten. Zu jedem Feld gehört ein TLabel mit dem Feldnamen.
Es funktioniert auch alles, nur habe ich mir gedacht, dass es ganz schön wäre, wenn der Benutzer sehen könnte welche Felder Muss-Felder sind, indem ich die Schrift von TLabel fett anzeigen lasse.
Der Code dazu sieht so aus:

ausblenden Quelltext
1:
2:
if adsTables.FieldByName(sFNAME).Required then
        Font.Style := [fsBold];


sFNAME ist eine Variable in der Feldname gespeichert ist, daran liegt es definitiv nicht an anderen Stellen verwende ich den auch so und es funktioniert.

Wenn ich im Compiler einen Haltepunkt setze und dann den Wert von 'Required' angucke,
wird mir gesagt: 'Nicht verfügbarer Wert'

Wär toll, wenn mir irgendjemand weiterhelfen kann.

Vielen Dank
Bulvaye
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37

Windows Xp
Delphi 7 Enterprise
BeitragVerfasst: Mi 21.07.04 22:38 
Wenn der Debugger das TField-Objekt nicht auswerten kann, dann wird es zwangsläufig auch nicht vorhanden sein. Kann es sein, dass zu diesem Zeitpunkt das TDataset gar nicht geöffnet ist? Denn dann gibt es zwangsläufig auch keine TField-Objekte - es sei denn, Du hast diese explizit erzeugt.

_________________
Gesegnet ist, dessen Geist zu klein für jedweden Zweifel ist.
marcs Threadstarter
Hält's aus hier
Beiträge: 7

Win XP Pro, Suse Linux 9.0
D6 Pro
BeitragVerfasst: Mi 21.07.04 23:30 
Bulvaye hat folgendes geschrieben:
Wenn der Debugger das TField-Objekt nicht auswerten kann, dann wird es zwangsläufig auch nicht vorhanden sein. Kann es sein, dass zu diesem Zeitpunkt das TDataset gar nicht geöffnet ist? Denn dann gibt es zwangsläufig auch keine TField-Objekte - es sei denn, Du hast diese explizit erzeugt.



Das DataSet ist auf jeden aktiv, ich habe probehalber die Zeile:
ausblenden Quelltext
1:
if adsTables.FieldByName(sFNAME).Text = '' then					

hinzugefügt (direkt darüber) und die 'Text'-Eigenschaft wird korrekt aus der Datenbank gelesen und im Compiler angezeigt.
Es hat irgendeinen anderen Grund.