Erro com comando SQL
no Delphi 7 eu usava o seguinte comando SQL:
o codigo funciona normal no Delphi 7, porém ao usar no XE4, o resultado é sempre nulo.
alguem sabe o que está havendo?
uso ZEOS para me conectar ao banco de dados firebird.
abraços.
with query do
begin
close;
sql.clear;
sql.add('select sum(valorcredito) as vrtotal from credito where datadebito >= :dt1 and datadebito <= :dt2 and valorcredito is not null');
parambyname('dt1').asstring:= dt1.text;
parambyname('dt2').asstring:= dt2.text;
open;
end;
o codigo funciona normal no Delphi 7, porém ao usar no XE4, o resultado é sempre nulo.
alguem sabe o que está havendo?
uso ZEOS para me conectar ao banco de dados firebird.
abraços.
Italo Pereira
Curtidas 0
Respostas
Alessandro Yamasaki
22/10/2013
Uma pergunta. Existem dados neste SQL? Talvez um COALESCE resolva seu problema. Faça um teste
Exemplo
SELECT sum(coalesce(valorcredito,0)) as vrtotal
FROM credito
WHERE datadebito >= :dt1 and datadebito <= :dt2
Exemplo
SELECT sum(coalesce(valorcredito,0)) as vrtotal
FROM credito
WHERE datadebito >= :dt1 and datadebito <= :dt2
GOSTEI 0
Italo Pereira
22/10/2013
Resolvi assim:
nao sei porque, ele nao reconhece da outra forma, mas valew pela dica.
with query do
begin
close;
sql.clear;
sql.add('select sum(valorcredito) as vrtotal from credito where datadebito >= :dt1 and datadebito <= :dt2 and valorcredito is not null');
parambyname('dt1').asdate:= strtodate(dt1.text); //alterei aqui
parambyname('dt2').asdate:= strtodate(dt2.text); //e aqui
open;
end;
nao sei porque, ele nao reconhece da outra forma, mas valew pela dica.
GOSTEI 0
Alessandro Yamasaki
22/10/2013
Q bom conseguiu resolver.
GOSTEI 0