KB-38947: Criando um campo de Histórico que incrementa seu valor automaticamente.

Descrição:

Como criar um campo de Histórico que incrementa seu valor automaticamente, de forma que a cada novo registro, ele receba um valor sequencial?

Solução:

Não é possível criar esse tipo de campo nos Históricos do E3. Entretanto, pode-se criar esse campo no próprio Banco de Dados.

 

ACCESS

Ao utilizar o Access, é possível adicionar um campo na tabela atual, como no exemplo abaixo:

SQL SERVER

Ao utilizar o SQL Server, existem duas possibilidades.

Através do Manager do SQL, crie um campo, acesse suas propriedades e configure-as com o tipo Coluna de Identidade.

 

Observação: O campo criado deve ser obrigatoriamente do tipo numérico inteiro (INT).
A outra maneira, também através do Manager do SQL, é criar toda a tabela através de uma Consulta, como no exemplo abaixo:

 

ORACLE:

Ao utilizar o Oracle, deve-se criar um trigger para que a coluna desejada seja incrementada a cada novo registro.

Segue abaixo um exemplo, onde primeiramente será inserida uma coluna chamada Coluna_ID na tabela TabelaTeste e posteriormente será criado o trigger:


ALTER TABLE
TABELATESTE
ADD
Coluna_ID number primary key;

create sequence seq_autonumber;

create trigger trg_autonumber
before insert on TABELATESTE
for each row
begin
select seq_autonumber.nextval into :new.Coluna_ID from dual;
end;


Vinculando o histórico a tabela existente:

Após criação da tabela, deve-se vincular o histórico a tabela:
KB-26934: Vinculando um Histórico a uma tabela já existente.

Em seguida excluir do histórico do E3 a coluna utilizada para identificação, pois ao inserir registros o E3 tenta escrever zero na coluna, o que não é permitido pela configuração da coluna.

Print Friendly, PDF & Email

Este artigo foi útil? Was this helpful?

Classificação média - Average rating 5 / 5. Count: 1

Leave a Reply

Your email address will not be published.Required fields are marked *