Valor lógico no Interbase
Olá pessoal!!
O Interbase não tem um campo logico (booleano) não é verdade?
Tenho os campos mes1..mes12 e coloquei Small...
Então ele recebe como valores (false/true) 0 e 1
Tenho no meu form componentes TCheckBox, eles me etornariam [b:f9cd198742]True[/b:f9cd198742] se marcados e [b:f9cd198742]false[/b:f9cd198742] de não estiverem marcados, sendo que esses valores deveriam ser convertidos para [b:f9cd198742]0[/b:f9cd198742] e [b:f9cd198742]1[/b:f9cd198742], existe alguma maneira de fazer isso sem que seja utilizando instruções condicionais (if ... then... else ..)?
Valew pela atenção.
O Interbase não tem um campo logico (booleano) não é verdade?
Tenho os campos mes1..mes12 e coloquei Small...
Então ele recebe como valores (false/true) 0 e 1
Tenho no meu form componentes TCheckBox, eles me etornariam [b:f9cd198742]True[/b:f9cd198742] se marcados e [b:f9cd198742]false[/b:f9cd198742] de não estiverem marcados, sendo que esses valores deveriam ser convertidos para [b:f9cd198742]0[/b:f9cd198742] e [b:f9cd198742]1[/b:f9cd198742], existe alguma maneira de fazer isso sem que seja utilizando instruções condicionais (if ... then... else ..)?
Valew pela atenção.
Martins
Curtidas 0
Respostas
Gandalf.nho
22/08/2005
Use as propriedades ValueChecked e ValueUnchecked dos DBCheckBox, configurando-as conforme os valores que vc escolheu (no seu caso, 1 e 0)
GOSTEI 0
Martins
22/08/2005
Obrigado pela dica, eu na verdade estou utilizando CheckBox e não DbCheckBox, não quis vincular diretamente ao BD, mas mesmo assim, muito obrigado pela dica.
Um abraço!!!
Martins
Um abraço!!!
Martins
GOSTEI 0
Afarias
22/08/2005
Query.FieldByName(´campo´).AsInteger := Ord(CheckBox.Checked);
ou
CheckBox.Checked := (Query.FieldByName(´campo´).AsInteger = 1);
T+
ou
CheckBox.Checked := (Query.FieldByName(´campo´).AsInteger = 1);
T+
GOSTEI 0
Martins
22/08/2005
Query.FieldByName(´campo´).AsInteger := Ord(CheckBox.Checked);
ou
CheckBox.Checked := (Query.FieldByName(´campo´).AsInteger = 1);
T+
Blz A.farias, muito agradecido pela atenção, mas eu já resolvi esse pequeno problema, e foi justamente com essa função, fiz uma busca no help do delphi e encontrei ela por lá, inclusive com esse exemplo:
uses Dialogs; type Colors = (RED,BLUE,GREEN); var S: string; begin S := ´BLUE has an ordinal value of ´ + IntToStr(Ord(BLUE)) + #1310; S := S + ´The ASCII code for "c" is ´ + IntToStr(Ord(´c´)) + ´ decimal´; MessageDlg(S, mtInformation, [mbOk], 0); end;
[b:c488b85b5f]Eu só adaptei[/b:c488b85b5f]
Mesmo assim, muito obrigado pela atenção, espero poder continuar contando com vossa ajuda.
GOSTEI 0