Clientdataset - Incluir e pesquisar ao mesmo tempo

Delphi

05/07/2005

Olá,

Eu estou querendo assoviar e chupar cana ao mesmo tempo. hehehe

Brincadeira, mas eu estou trabalhando com um ClientDataSet e com vários registros em cache. Quando Incluo um novo, e o usuário digita o código dele, preciso verificar se o código já não foi cadastrado antes, no mesmo clientdataset.

Ou seja, estou incluindo vários registros e preciso validá-los assim que um determinado campo seja preenchido.

Só que os dados estão em cache, ainda não foram gravados no banco. Assim, eu não posso dar nem post nem cancel no registro que estou trabalhando.

Não tem como eu criar outro cursor ou algo parecido para pesquisar sem mudar o status do componente?


Obrigado.


Ronaldo

Ronaldo

Curtidas 0

Respostas

Paulo_amorim

Paulo_amorim

05/07/2005

Olá

O ClientDataSet tem uma função chamada CloneCursor, que cria outro cursor para o mesmo ResultSet. Talvez seja isso que vc precise.

Cuidado, o ResultSet eh compartilhado para os dois componentes, por isso as alterações em um valem para o outro.

Maiores informações, o help sobre isso eh bom, e qq coisa ponha no fórum.

Espero que ajude
Até+


GOSTEI 0
Ronaldo

Ronaldo

05/07/2005

Blz, Funcionou.

Como eu só utilizo para pesquisar e não altero os dados do clone, não encontrei nenhuma dificuldade.

Obrigado,


T+


GOSTEI 0
Paulo_amorim

Paulo_amorim

05/07/2005

Olá

Que bom. Esse recurso é muito útil quando se precisa pesquisar simultaneamente.

Até+


GOSTEI 0
Raserafim

Raserafim

05/07/2005

como clonar de forma a que fique independentes?


GOSTEI 0
Macario

Macario

05/07/2005

como clonar de forma a que fique independentes?



Em ClientDataSet.CloneCursor vc tem 3 parâmetros:

1 - Source - DataSet a ser clonado
2 - Reset - o qual limpa propriedades e opções
3 - KeepSettings.


Verifique o help, onde tera o descritivo completo.

Espero ter ajudado.

:roll:


GOSTEI 0
Joaoshi

Joaoshi

05/07/2005

Poderia tentar algo como:
ClientDataSetCopia.Data := ClientDataSetOrigem.Data

Espero ter ajudado


GOSTEI 0
POSTAR