Fórum erro na geração de numeração seqüencial #59813

26/05/2008

0

Tenho um campo autoincremento, mas cada vez que mando incrementar ela dá um erro na seqÜência numérica. Se incluir 2 registros seguidos a diferença entre eles é de 6 unidades, porém se sair e voltar a diferença é de 3 unidades, segue código.
With IBQuery1 do
Begin
   Close;
   SQL.Clear;
   SQL.Add(´Select gen_id(VENDEDORES_NUMVEND_GEN, 1) from RDB$DATABASE´);
    Open;
    NumVendedor := IBQuery1.Fields[0].AsInteger;
End;

Gerador
CREATE TRIGGER AI_VENDEDORES_NUMVEND FOR VENDEDORES ACTIVE
BEFORE INSERT POSITION 0
AS
BEGIN
  IF (NEW.NUMVEND IS NULL) THEN
      NEW.NUMVEND = GEN_ID(VENDEDORES_NUMVEND_GEN, 1);
END

O NumVendedor sobe de 3 em 3 ou de 6 em 6 conforme descrito acima


Edilcimar

Edilcimar

Responder

Posts

27/05/2008

Edilcimar

Ninguém se habilita a dar um chute?


Responder

Gostei + 0

27/05/2008

Emerson Nascimento

você atribuiu o valor da variável [i:0a58774e04]NumVendedor[/i:0a58774e04] ao campo [i:0a58774e04]NumVend[/i:0a58774e04] da tabela?


Responder

Gostei + 0

27/05/2008

Edilcimar

sim, o problema é que utilizo este método para todas as tabelas, cada uma com o seu gerador, mas nesta específicamente está ocorrendo este erro maluco


Responder

Gostei + 0

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

Aceitar