Entwickler-Ecke

Datenbanken - DBcheckedBox in InterBase


hansa - Fr 01.11.02 17:53
Titel: DBcheckedBox in InterBase
Hi,

hab hier folgendes Problem: in der DB sind Bool-Felder als char (1) enthalten. Jetzt hab ich diese in Delphi einfach mal als DBcheckedBoxes angelegt. Bei dem jetzigen Zustand sind die immer gechecked und grau, den Haken kann ich aber trotzdem verändern, aber es wirkt sich nicht aus. Ich muß Delphi ja wohl dazu bringen die 1 als true und die 0 als false anzusehen. Da es aber auch a und b sein könnten frage ich mich, wie das überhaupt geht ? Wahrscheinlich deutet das grau darauf hin, daß der Zustand der Box nicht definiert ist. Aber das nützt mir auch nichts.

Gruß
Hansa


LCS - Sa 02.11.02 10:27

Hi
du musst einfach nur die Eigenschaften ValueChecked und ValueUnChecked der DBCheckbox entsprechend anpassen und schon funzt das.

Gruss Lothar


hansa - Sa 02.11.02 12:09

Danke Lothar,

So gehts. Es war für mein Gehirn wahrscheinlich zu viel, darauf zu kommen true notfalls auf X umzuändern. :mrgreen: Aber in diesem Zusammenhang bin ich noch einer weiteren Frage auf die Spur gekommen, nämlich ob ich char (1) oder smallint für boolean verwenden soll. Beim stöbern in der IBconsole fiel mir zufällig ein Wert auf, der auf T stand. Ob das nun ein Tipfehler war, ein Fehler des Konvertierungsprogramms oder sogar ein Festplattenfehler sei dahin gestellt. Hätte ich smallint genommen, wäre allerdings schon frühzeitig vorher eine Fehlermeldung gekommen. Am besten ist es aber IMHO doch lieber die checked Funktion zu benutzen.

Oder vielleicht eine Domain. Da ich aber weiß, daß die bei anderen DBs (z.B. Oracle) ihren Sinn verlieren, habe ich die vorerst außen vor gelassen.


Gruß
Hansa