Autoincremento com ClientDataSet
pessoal estou desenvolvendo em MIDAS ClientDataSet/DataSetProvider + DBExpress, e reparei que não resolveu usar o auto incremento nas tabelas (´visto que só irão ser auto incrementadas após o ApplyUpdate´, porém gostaria de saber como desativar os índices de uma tabela (visto que vou inserir vários registros no ClientDataSet e só depois usarei o ApplyUpdates) ou seja enquanto estiverem na memória os índices não serem requeridos e após o envio sejam incrementados um a um...
Bruno Belchior
Curtidas 0
Respostas
Afarias
04/03/2005
Os índices do banco não tem qualquer efeito sobre o ClientDataSet. Os índices do ClientDataSet vc tem total controle.
Existem algumas abordagens para esses casos, sendo 2 delas:
1- atribuir valores temporários (um auto-incremento local) ao campo, q será substituído no ApplyUpdates (quando for OK)
2- no OnNewRecord ou BeforePost do CDS fazer a chamada para pegar o novo valor do Generator.
T+
Existem algumas abordagens para esses casos, sendo 2 delas:
1- atribuir valores temporários (um auto-incremento local) ao campo, q será substituído no ApplyUpdates (quando for OK)
2- no OnNewRecord ou BeforePost do CDS fazer a chamada para pegar o novo valor do Generator.
T+
GOSTEI 0
Bruno Belchior
04/03/2005
caro amigo kdo postei essa mensagem já tinha adotado a primeira alternativa e criei uma tabela constando o incremento de todos os índices do Banco de Dados (não usei generator devido a chance de meu sistema portar para outros servidores é grande) implementando o incremento em tempo de execução no Data do ClientDataSet, mas quando tentava passar índices para o ClientDataSet repetidos ele me retornava um erro de execução, quero saber se há possibilidade de ele (o ClientDataSet) suportar não passar valores de índices para ele e qdo der um ApplyUpdate ele autoincrementar com o gatilho pré-programado?
GOSTEI 0