Atualizando tabela
Oi pessoal!
Tenho uma tabelinha de parâmetros que serve apenas p/ armazenar o ultimo codigo de cliente cadastrado, por ex.
Eu usava em PDX e nao tinha problemas, mas agora usando o banco IB, comecei a ter um probleminha...
Funciona assim:
Qdo entro no form sugiro o numero do proximo codigo no campo codigo.text. Este numero eu pego do tal arquivo, sempre somando um ao ultimo que foi digitado. Ai, na hora de gravar, eu faco isso novamente p/ pegar um novo numero caso alguem na rede tenha cadastrado um cliente enquanto minha tela estava aberta, e atualizo o arq. de parâmetros com o ultimo numero.
O problema é que no IB, se eu abrir a tela aqui (ele sugere o numero 6 por ex.), ai alguem pela rede entra enquanto eu ainda nao salvei, ele sugere o numero 6 p/ essa pessoa tb. Ai a pessoa grava antes que eu. O registro dela fica com o codigo 6 e ele atualiza o arq. de parametros (exatamente como deveria ser.) Qdo eu vou gravar, ele faz aquela verificacao que eu disse p/ ver se alguem nao gravou nada pela rede e pega novamente o numero, só que ele nao pega o numero 6 (que somando 1 daria 7 e seria o prox. numero correto), ele pega o 5 mesmo (que somando 1 dá o 6). É como se na maquina que o prog estava aberto, ele nao atualizasse os dados da tabela. Ai, é lógico, ele dá erro! Tentei dar refresh na tabela mas ele nao aceita (pq. é uma tab. c/ apenas 1 registro e s/ indices), tentei dar .cancel mas nao faz diferenca... alguem tem alguma idéia de como atualizar os dados desta tabela???
Grata,
Tenho uma tabelinha de parâmetros que serve apenas p/ armazenar o ultimo codigo de cliente cadastrado, por ex.
Eu usava em PDX e nao tinha problemas, mas agora usando o banco IB, comecei a ter um probleminha...
Funciona assim:
Qdo entro no form sugiro o numero do proximo codigo no campo codigo.text. Este numero eu pego do tal arquivo, sempre somando um ao ultimo que foi digitado. Ai, na hora de gravar, eu faco isso novamente p/ pegar um novo numero caso alguem na rede tenha cadastrado um cliente enquanto minha tela estava aberta, e atualizo o arq. de parâmetros com o ultimo numero.
O problema é que no IB, se eu abrir a tela aqui (ele sugere o numero 6 por ex.), ai alguem pela rede entra enquanto eu ainda nao salvei, ele sugere o numero 6 p/ essa pessoa tb. Ai a pessoa grava antes que eu. O registro dela fica com o codigo 6 e ele atualiza o arq. de parametros (exatamente como deveria ser.) Qdo eu vou gravar, ele faz aquela verificacao que eu disse p/ ver se alguem nao gravou nada pela rede e pega novamente o numero, só que ele nao pega o numero 6 (que somando 1 daria 7 e seria o prox. numero correto), ele pega o 5 mesmo (que somando 1 dá o 6). É como se na maquina que o prog estava aberto, ele nao atualizasse os dados da tabela. Ai, é lógico, ele dá erro! Tentei dar refresh na tabela mas ele nao aceita (pq. é uma tab. c/ apenas 1 registro e s/ indices), tentei dar .cancel mas nao faz diferenca... alguem tem alguma idéia de como atualizar os dados desta tabela???
Grata,
Renata
Curtidas 0
Respostas
Jsalgado
14/04/2003
Renata,
Pq vc nõ faz uma query do tipo
Select max(codigo) from arquivo
Essa query vai te retornar o último código da tabela que vc quer atualizar.
Espero ter ajudado.
Abraços.
JSalgado.
Pq vc nõ faz uma query do tipo
Select max(codigo) from arquivo
Essa query vai te retornar o último código da tabela que vc quer atualizar.
Espero ter ajudado.
Abraços.
JSalgado.
GOSTEI 0
Renata
14/04/2003
Já tenho isso em outros lugares... em arquivos menores. Mas fica lento num arquivo grande...
mas valeu!
[]´s
mas valeu!
[]´s
GOSTEI 0
Nebrio
14/04/2003
Renata, já que vc migrou p/ IB e vai trabalhar em rede aconselho você a utilizar Trigger para geração deste número.
Se quiser informações de como utilizar o TRIGGER é só escrever no forum
Se quiser informações de como utilizar o TRIGGER é só escrever no forum
GOSTEI 0
Renata
14/04/2003
Obrigada pela dica!
Faremos isso, mas nao agora pq. estamos ´afogados´ de trampo...
Eu resolvi ´por hora´. Ficou assim:
tabela.active := false;
tabela.active := true;
Isso antes de editar o arq. de parametros p/ gravar o ultimo cliente. Ai
funcionou!!!
Obrigada a todos! :wink:
Faremos isso, mas nao agora pq. estamos ´afogados´ de trampo...
Eu resolvi ´por hora´. Ficou assim:
tabela.active := false;
tabela.active := true;
Isso antes de editar o arq. de parametros p/ gravar o ultimo cliente. Ai
funcionou!!!
Obrigada a todos! :wink:
GOSTEI 0