CDS registra, mas não conta!

Delphi

16/02/2009

:) Olá.

Quando acesso o BD para ler os registros e postar dá ceto, OK, mas quando uso o mesmo CDS para contar dá erro: ´SQLDS: Field ID_Usuario not found´.

with DM.CDSUsuario do
begin
   Close;
   Commandtext:=´Select count(*) as Contagem From Tab_Tabela where ID_Usuario=:VU´;
   Params.ParamByName(´VU´).AsInteger:=1;
   Open;
  ShowMessage(IntToStr(DM.CDSGramaticaUsuario.fieldByname(´Contagem´).AsInteger));
 end;


Valeu por qualquer ajuda.


Abelha

Abelha

Curtidas 0

Respostas

Signori

Signori

16/02/2009

Esse campo Id_usuario esta´escrito de forma correta?


GOSTEI 0
Steve_narancic

Steve_narancic

16/02/2009

tem certeza que o erro se refere ao campo e não ao parametro? seleciona teu cds vai na propriedade params, e verifica a propriedade datatype do parametro esta definida corretamente para o tipo do campo


GOSTEI 0
Abelha

Abelha

16/02/2009

O mesmo CDS com o código:

Commandtext:=´Select * From Tab_tabela where ID_Usuario=:VU´

funciona! Dá pra ler einserir registros no DB.

É quando uso o[b:e143523a4d] count [/b:e143523a4d]ou o[b:e143523a4d] sum [/b:e143523a4d]que dá o erro.

No editor do [b:e143523a4d]IBExpert[/b:e143523a4d], o código SQL funciona.

:?


GOSTEI 0
Steve_narancic

Steve_narancic

16/02/2009

Ao inves de [b:b6ce7314f3]Count(*)[/b:b6ce7314f3] tente [b:b6ce7314f3]Count(1)[/b:b6ce7314f3]


GOSTEI 0
Abelha

Abelha

16/02/2009

Olá, Narancic.

Testei, continua dando erro.

Valeu.


GOSTEI 0
Woinch

Woinch

16/02/2009

Remova tudo que tiver na propriedade FieldDefs. Esse ClientDataSet está vinculado a quais componentes?


GOSTEI 0
POSTAR