Campo RECNO auto-incremental

Blog Advpl - Share knowledge

Campo RECNO auto-incremental

16 de novembro de 2014 Configurador Dicas Protheus12 0

As vezes passamos por algumas provações quando queremos utilizar os recursos do próprio banco de dados, como o comando INSERT ou UPDATE por exemplo. Nos últimos anos, temos passado por várias evoluções no sistema, e um dos maiores problemas é a sua performance. As vezes ficamos horas a fio esperando determinados processos serem executados, pelo simples fato do sistema não utilizar recursos que o banco de dados possue. Mas com o passar do tempo isso vem mudando e o Protheus vai melhorando cada vez mais.

O campo R_E_C_N_O_ já é utilizado um bom tempo no sistema Protheus. E na versão 12 ele ganha mais um “plus“. É possível utilizando uma opção chamada “Rec.aut.inc”, indica se a tabela possuirá o recurso de incrementar automaticamente o campo de controle RECNO, mesmo quando utilizando comandos de inserção SQL que não utilizem comandos de RDD do TopConnect.

Antes de mais nada, vamos entender qual é o objetivo do R_E_C_N_O_.

Este campo alterar a forma do sistema Protheus gravar o campo R_E_C_N_O_ das tabelas de dados para a modalidade auto-incremental.

O campo R_E_C_N_O_ é a chave primária de todas as tabelas de dados do Protheus, sendo único e obrigatório.

O conteúdo de R_E_C_N_O_ é atribuído automaticamente pelo TOTVS DBAcess (antigo TopConnect) quando é efetuada uma inserção de linha (registro) através de comandos em sintaxe ADVPL.

A modalidade de atualização de R_E_C_N_O_ auto-incremental transfere para o banco de dados a responsabilidade por atribuir o valor de R_E_C_N_O_ através de atributos especializados. Estes atributos variam de banco de dados para banco de dados.

Para cada banco de dados em uso, o DBAccess utiliza um tipo de campo ou recurso para implementar o incremento automático do R_E_C_N_O_ :

Banco de Dados Tipo
DB2 IDENTITY
Informix SERIAL
MSSQL IDENTITY
MySQL AUTO_INCREMENT
Oracle SEQUENCE AND TRIGGER
Postgres SERIAL
Sybase, OpenEdge e CtreeSQL Não implementado

O recurso está disponível a partir do Protheus 12.

Modo de utilização

O recurso de R_E_C_N_O_ auto-incremental pode estar previamente definido no dicionário de dados padrão ou ser modificado pelo Administrador.

Se estiver predefinido, sua aplicação no banco de dados é automática.

Caso queira modificar esta definição, a alteração deve ser efetuada ANTES da criação da tabela física no banco de dados. Isso porque esta definição afeta a forma como a estrutura da tabela será criada no banco de dados. Se a alteração for feita após a criação da tabela, nenhuma alteração será efetuada nos campos existentes.

A alteração deste comportamento deve ser efetuada pelo módulo configurador. O recurso também pode ser definido para tabelas novas customizadas.

Acessar a opção “base de dados” do módulo configurador. Posicionar na empresa desejada e clicar no item “dicionário de dados”. As tabelas disponíveis são exibidas à direita da tela. Localizar a tabela desejada e clicar no botão “editar”. Serão exibidos os dados principais da tabela, como abaixo:

configurador_recno

 

Deixe uma resposta