Problemas com evento GetText em clientDataSet
Olá,
Estou fazendo uma query utilizando clientDataSet que joga os valores dos registros em um DBGrid. Porém, gostaria que quando determinado valor fosse zero aparecesse vazio.
No evento AfterOpen do meu clientDataSet coloquei o seguinte código:
DataSet.FieldByName(Campo).OnGetText := AtribuiNulo
e o meu procedimento atribui Nulo é:
procedure AtribuiNulo(Sender: TField; var Text: String; DisplayText: Boolean);
begin
if Sender.AsFloat = 0 then
Text := ´´;
end;
porém está jogando vazio para todos os registros desse campo....
Como eu faço para somente o campo que for zero fique vazio???
Grata,
Vânia
Estou fazendo uma query utilizando clientDataSet que joga os valores dos registros em um DBGrid. Porém, gostaria que quando determinado valor fosse zero aparecesse vazio.
No evento AfterOpen do meu clientDataSet coloquei o seguinte código:
DataSet.FieldByName(Campo).OnGetText := AtribuiNulo
e o meu procedimento atribui Nulo é:
procedure AtribuiNulo(Sender: TField; var Text: String; DisplayText: Boolean);
begin
if Sender.AsFloat = 0 then
Text := ´´;
end;
porém está jogando vazio para todos os registros desse campo....
Como eu faço para somente o campo que for zero fique vazio???
Grata,
Vânia
Vania
Curtidas 0
Respostas
Faelcavalcanti
30/03/2005
procedure AtribuiNulo(Sender: TField; var Text: String; DisplayText: Boolean);
begin
if Sender.AsFloat = 0 then
Text := ´´;
end;
porém está jogando vazio para todos os registros desse campo....
Como eu faço para somente o campo que for zero fique vazio???
Grata,
Vânia
Não entendi a parte acima, como assim todos os registros ????
GOSTEI 0
Gandalf.nho
30/03/2005
Veja se essa pequena alteração em sua função dá certo:
procedure AtribuiNulo(Sender: TField; var Text: String; DisplayText: Boolean); begin if Sender.AsFloat = 0 then Text := ´´ else Text := Sender.AsString; end;
GOSTEI 0