Array
(
)

Migração para Delphi 2005

Danilodcf
   - 04 nov 2005

Estou migrando meu sistema de delphi 7 para o delphi 2005(Win 32)
Utilizo o Interbase 6 com DbExpress
O Sistema compilou normalmente no delphi 2005 sem erros, porem estou com um problema na hora de passar um paramentro no TSqlDataSet
Utilizo TSQLDataSet + TDataSetProvider + TClientDataSet + TDataSource para acesso ao banco

o Problema esta na hora de mudar um parametro do TSQLDataSet
por exemplo:

iCod:= 1;
cdsParticipante.Close;
dtsParticipante.Close;
dtsParticipante.Params.ParamByName(´CODPARTICIPANTE´).AsInteger:= iCod;
cdsParticipante.Open;

na primeira vez que passo o parametro ´CODPARTICIPANTE´, o ClientDataSet me retorna o registro correto, o Participante do Codigo 1

mas se em seguida eu repetir esse proceso mudando o iCod para 2, ele volta o valor parametro para 1 automaticamente no momento em que dou o Open no ClientDataSet e me tras o registro anterior (o Participante do Codigo 1) ao inves do Participante do Codigo 2

Nao consigo entender porque esta acontecendo isso, pois essa mesma rotina funcionava normalmente do delphi 7

alguem ja passou por essa situacao?


Bon Jovi
   - 05 nov 2005

O correto é setar no clientdataset:

iCod:= 1;
cdsParticipante.Close;
cdsParticipante.Params.ParamByName(´CODPARTICIPANTE´).AsInteger:= iCod;
cdsParticipante.Open;


Danilodcf
   - 05 nov 2005

resolveu meu problema

valeu Bon Jovi