Duvidas no uso de triggers (firebird)

26/11/2004

0

Ola pessoal, estou com o seguinte problema!!!

Tenho um cadastro de cliente (dentre outros )
dai tenho o codigo de cliente CODCLI-> [00001]

Eu fasso o incremento do codigo atraves de uma trigger, mas só que dai o incremento fica só para frente, vou demonstrar aqui o problema

Eu cadastro o cliente 00001, 00002, 00003, 00004, até ai ele vai na ordem, mas quando eu excluo qualquer um dos registros, dai ferra a o ordem... ele pula um numero, tipow na sequencia ele teria de inserir o 00005, mas como eu exclui um registro ele insere 00006, e se eu excluir dois ele insere o 00007... como resolver isso, eu pude percerber que o controle dos incrementos fica nos GEnerators ...

me ajudem

--------------
BadMaker


Badmaker

Badmaker

Responder

Posts

26/11/2004

Gandalf.nho

A única maneira de fazer isso seria fazer via código para localizar os ´buracos´ na numeração, o que não é muito recomendado em ambiente multi-usuário porque pode acarretar conflitos. Para deciodir o que fazer, basta responder a uma pergunta: tem importância para o sistema/usuário não haver buracos na numeração? Se não houver, deixe do jeito normal que não dará problemas.


Responder

26/11/2004

Badmaker

Hummm. é obvio, que eu nem precisaria arrumar isso, porém o cliente onde o sistema opera é meio estranho, e não sei porque ele segue a numeração em cima da risca, ou seja ele decorou os clientes com os codigos, entaum ele naum quer que falhe ou pule a numeração...


--------------
BadMaker


Responder

26/11/2004

Gandalf.nho

Se o sistema não for multi-usuário, monte uma procedure para reaproveitar os buracos na numeração. (A menos que você possa convencer seu usuário a deixar assim...)


Responder

26/11/2004

Emerson Nascimento

publique sua trigger. talvez o problema esteja nela...


Responder

26/11/2004

Fsflorencio

Se vc estiver usando generators, então o problema pode estar na trigger que está executando o gen_id() no evento de exclusão.

O evento de exclusão não pode mexer no generator.


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar