Dicas Rápidas Protheus

Chave SpecialKey – Protheus

Escritor por Vinícius Moreira

 

Quando o controle de numeração do sistema for realizado através do hardlock e existir mais de uma base compartilhando este hardlock, precisamos utilizar uma chave chamada SpecialKey. Ela serve para que o sistema possa identificar qual base fez a requisição do próximo numero.

 

Vamos supor que temos um campo chamado A1_SEQUEN e o inicializador padrão deste campo executa a função GETSXENUM para buscar a numeração sequencial. Se tivermos uma base de teste e uma base de produção com esta mesma configuração, ao entrar na base de teste e executar a função, o sistema retornará o próximo numero e se depois entrarmos no ambiente de produção ele retornará o numero sequencial ao utilizado no ambiente de teste.

Numero recebido pela base de teste: 4
Numero recebido pela base de produção: 5

Isso acontece porque o hardlock não sabe o que é sua base de teste e o que é sua base de produção. Por isso devemos utilizar a chave SpecialKey no Ini do server para informar ao hardlock que estamos utilizando bases diferentes, assim a numeração de uma base será independente da outra.

Fique atualizado, É GRÁTIS!
Cadastre o seu endereço de e-mail e fique por dentro de todas as atualizações da AcademiaERP.
Não enviamos spam.

A utilização da chave é bem simples, basta coloca-la abaixo da seção do ambiente. A chave necessita apenas de uma string que será utilizada para identificar a base, por exemplo, no ambiente de produção pode ser SpecialKey=prd e no ambiente de teste SpecialKey=tst.

 

Abaixo temos o exemplo de como o appserver.ini ficaria.

 

[producao]
SourcePath=c:producaoApo
RootPath=C:producao
StartPath=system
RpoDb=TOP
LocalFiles=CTREE
RpoLanguage=Portuguese
RpoVersion=111
Trace=0
LocalDbExtension=.DTC
SpecialKey=prd

[teste]
SourcePath=c:testeApo
RootPath=C:teste
StartPath=system
RpoDb=TOP
LocalFiles=CTREE
RpoLanguage=Portuguese
RpoVersion=111
Trace=0
LocalDbExtension=.DTC
SpecialKey=tst

 

É isso ai galera, espero ter ajudado.

 

Sobre o Autor

Vinícius Moreira

Deixe um comentário

Dúvida?