...
Implementada melhoria com a disponibilização de realizar a comunicação de cadastro do PLS com o HAT através Jobs inicializados pelo appserver.ini.
Este ajuste é uma alternativa a utilização do Schedule de comunicação PLENVHAT, assim o cliente pode decidir por qual processo ele deseja enviar os dados cadastrais do PLS para o HAT. Caso o método adotado seja a utilização de Jobs, recomendamos desabilitar o Schedule PLENVHAT.
Funcionamento dos jobs:
Com a utilização de jobs, diferentemente do Schedule que processava os registros por Alias, os jobs sempre vão buscar os registros sem processamento mais antigos independentes da API. Cada thread processa um registro por vez, tentando realizar a comunicação com a API da HAT.
Caso a comunicação não possa ser realizada por algum motivo. o sistema incrementará o campo Qtde Tentat. (BNV_QTDTRY). O sistema reinicializa os registros que não teve sucesso ao comunicar a cada 2 minutos e realiza 5 tentativas para cada registro. Após 5 tentativas, o sistema ignora esse registro para não gerar problemas de controle de fila tentando enviar a todo tempo, um registro que já apresentou problemas no envio 5 vezes. É possível posteriormente, realizar o envio manualmente deste registro na rotina Pedidos PLS x HAT (PLSA274).
Totvs custom tabs box |
---|
tabs | Passo 01, Passo 02, Passo 03, Passo 04 |
---|
ids | passo1,passo2 |
---|
|
Totvs custom tabs box items |
---|
default | yes |
---|
referencia | passo1 |
---|
| Para habilitar os jobs automáticos, é necessário adiciona-los ao arquivo appserver.ini:
Crie uma instância PLSHAT: Bloco de código |
---|
title | Bloco PLSHAT |
---|
linenumbers | true |
---|
| [PLSHAT]
ENVIRONMENT=PLS27
INSTANCES=1,1
main=PJobPlsHat
|
ENVIRONMENT - Indique o ambiente que será processado. INSTANCES - Quantidade de threads que será alocada/iniciada ao iniciar o server. main - Nome do programa, manter PJobPlsHat fixo.
Agora precisamos adicionar a instância PLSHAT no ONSTART para a mesma ser iniciada junto com o ambiente: Bloco de código |
---|
title | Bloco ONSTART |
---|
linenumbers | true |
---|
| [OnStart]
jobs=HTTP,HTTPJOB,PLSHAT
RefreshRate=120 |
Jobs - Nome dos jobs (instâncias) que serão iniciados ao inicializar o serviço. Refreshrate - Determina um intervalo de tempo, em segundos, para que os jobs especificados, na chave [OnStart], sejam executados novamente e automaticamente, caso os mesmos não estejam em execução. Esta chave, uma vez especificada, é válida para todos os jobs da seção [OnStart]. Deste modo, todos os jobs especificados serão executados novamente, caso já tenham sido terminados.
Na chave correspondente ao seu ambiente, é necessário adicionar as atributos: EMPROBOXML, FILROBOXML e OPEPLSTOHAT. Perceba que em nossa chave [PLSHAT] criada anteriormente, utilizamos o ambiente PLS27. Segue um exemplo de preenchimento: Bloco de código |
---|
title | Configuração do Ambiente |
---|
linenumbers | true |
---|
| [PLS27]
SourcePath=C:\PLS27\rpo
RootPath=C:\PLS27\ProtheusData
StartPath=\System
RpoLanguage=Portuguese
RpoVersion=120
RpoDb=TOP
LocalFiles=CTREE
localdbextension=.DTC
SpecialKey=PLS27
dbDataBase=MSSQL
dbServer=localhost
dbALIAS=P12127MNTDBEXP
dbPort=7890
TOPMemoMega=1
JEMP=T1
JFIL=M SP 01
EMPROBOXML=T1
FILROBOXML=M SP 01
OPEPLSTOHAT=0001 |
EMPROBOXML - Empresa que o Job PJobPlsHat executará. FILROBOXML - Filial que o Job PJobPlsHat executará. OPEPLSTOHAT - Código da Operadora (BA0) que o Job PJobPlsHat executará. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | passo2 |
---|
| Aplique o pacote de dicionário de dados que acompanha este pacote ou crie os campos da tabela BNV descritos na sessão 05 deste documento. |
|
...
Com essa organização, é possível ler o log com facilidade separando cada processamento.
12123
Card documentos |
---|
Informacao | Use esse box para destacar informações relevantes e/ou de destaque. |
---|
Titulo | IMPORTANTE! |
---|
|
...