Array
(
)

Dúvida (indices)

Roberto Rossi
   - 10 ago 2004

Estou fazendo um programa usando o banco de dados firebird conectado ao delphi com dbexpress e clientdataset. Criei um indice em uma tabela com dois campos (codigo, data) sendo estes do tipo inteiro e datatime.
Agora preciso fazer uma pesquisa no delphi utilizando este indice sendo que se encontrar os registros ele vai editar o registro, se não encontrar vai inserir. Já fiz essa operação com o bde usando o findkey, mas não consigo fazer com o clientdataset. A minha sintaxe é:

if dm.cds_tratamento.findkey([dm.cds_crachas_tratCOD_FUNC.asinteger, dtEdIni.Date]) then ....

mas dá um erro dizendo: não posso acessar um campo data com um tipo integer.

possivelmente é porque são dois campos diferentes, mas não sei o que estou fazendo errado. Não sei se tenho que mudar algo no clientdataset, ou colocar mais alguma coisa nesse comando. Alguém me dá uma luz?