CONTEÚDO

  1. Visão Geral
  2. Configurações Gerais
  3. Parametrização dos agendamentos do AUTONFE para processamento em sequencial (Monothread)
  4. Parametrização dos agendamentos do AUTONFE para processamento em paralelo (Multithread)
  5. Uso de licenças do AUTONFE

01. VISÃO GERAL


Permitir a configuração do agendamento (schedule) da rotina automáticas de Transmissão (AUTONFETRANS), Monitoramento (AUTONFEMON) e Cancelamento (AUTONFECANC) de Nota(s) Fiscal(is) Eletrônica(s) - AUTONFE - de forma sequencial ou paralela, onde:

Execução Sequencial (padrão): Quando todo o processo de Transmissão ou Monitoramento ou Cancelamento é executado por uma única instancia (thread) do programa. 

Execução Paralela (multithread): Quando todo o processo de Transmissão ou Monitoramento ou Cancelamento é executado por mais de uma instancia (thread) do programa. 

Ambos os casos serão detalhados em cada tópico.


Rotinas do AUTONFE:

Rotina de Transmissão: AUTONFETRANS
Rotina de Monitoramento: AUTONFEMON
Rotina de Cancelamento: AUTONFECANC


02. Configurações Gerais


Para releases inferiores à Microsiga Protheus 12.1.33 será necessário realizar a seguinte configuração do dicionário de perguntes do Protheus.


No módulo do Configurador (SIGACFG), acesse Base de Dados / Dicionário / Base de Dados:


Selecione a opção Perguntas:


Clique no lupa de pesquisa:


Informe AUTONFE no campo de busca, e clique no botão Buscar. Em seguida clique em Editar:


Inclua na segunda linha (pressionar tecla para baixo) as seguintes informações exibidas em tela. Depois pressionar o botão Confirmar.



03. Parametrização dos agendamentos do AUTONFE para processamento em sequencial (Monothread)


Quando se configura as rotinas do AUTONFE indicadas anteriormente, para cada uma delas é possível realizar o processo de forma sequencial, ou seja, ao configurar por exemplo, na rotina de transmissão de notas (AUTONFETRANS) o parâmetro Nro de Processos simultâneos? com conteúdo igual a 0 ou 1, isto será interpretado pela rotina que ela não deverá abrir novas threads para enviar/transmitir as notas. Desta forma a rotina irá trabalhar utilizando apenas a própria thread aberta no agendamento para realizar toda transmissão das notas informadas no parâmetro de Serie

Isto implica em um processamento mais lento porem que consumirá apenas uma das licenças disponíveis.


Abaixo, como exemplo apenas,  será mostrado o processo de configuração da rotina de Transmissão de Notas AUTONFETRANS de forma sequencial (monothread):


No módulo Configurador (SIGACFG), acesse Ambiente / Schedule / Schedule :


Em Schedule / Agendamentos / Cadastro, clicar no botão Incluir:


Preencher os campos conforme desejado.


Ao preencher o nome da rotina com uma das rotinas do AUTONFE informadas acima, será apresentado tela de parâmetros com o novo parâmetro de Numero de Processos Simultâneos. Para que seja respeitado o uso de apenas 1 processo em execução para a transmissão das notas, basta informar 0 ou 1. Em seguida clicar em OK






Ao preencher o campo de Empresa/Filial o próprio agendamento se encarregará de "disparar" um processo para cada empresa/filial configurada. Este comportamento é padrão dos agendamentos Protheus e é independente da configuração do parâmetro realizado no passo anterior. 



Neste caso mostrado acima, serão disparados dois processos (threads) de transmissão de notas, pois temos duas empresas/filiais configuradas. Para cada processo de transmissão, a rotina do AUTONFE identificará o parâmetro de Numero de Processos Simultâneos e assim não realizara mais nenhum outra abertura de processo em paralelo, realizando toda a operação no mesmo processo (thread) aberto pelo agendamento.




03. Parametrização dos agendamentos do AUTONFE para processamento em paralelo (Multithread)


Quando se configura as rotinas do AUTONFE indicadas anteriormente, para cada uma delas é possível realizar o processo de forma sequencial, ou seja, ao configurar por exemplo, na rotina de transmissão de notas (AUTONFETRANS) o parâmetro Nro de Processos simultâneos? com conteúdo igual a 0 ou 1, isto será interpretado pela rotina que ela não deverá abrir novas threads para enviar/transmitir as notas. Desta forma a rotina irá trabalhar utilizando apenas a própria thread aberta no agendamento para realizar toda transmissão das notas informadas no parâmetro de Serie

Isto implica em um processamento mais lento porem que consumirá apenas uma das licenças disponíveis.




Abaixo, como exemplo apenas,  será mostrado o processo de configuração da rotina de Transmissão de Notas AUTONFETRANS de forma sequencial (monothread):


No módulo Configurador (SIGACFG), acesse Ambiente / Schedule / Schedule :


Em Schedule / Agendamentos / Cadastro, clicar no botão Incluir:


Preencher os campos conforme desejado.


Ao preencher o nome da rotina com uma das rotinas do AUTONFE informadas acima, será apresentado tela de parâmetros com o novo parâmetro de Numero de Processos Simultâneos. Para que seja respeitado o uso de apenas 1 processo em execução para a transmissão das notas, basta informar 0 ou 1. Em seguida clicar em OK




Ao preencher o campo de Empresa/Filial o próprio agendamento se encarregará de "disparar" um processo para cada empresa/filial configurada. Este comportamento é padrão dos agendamentos Protheus e é independente da configuração do parâmetro realizado no passo anterior. 



Neste caso mostrado acima, serão disparados dois processos (threads) de transmissão de notas, pois temos duas empresas/filiais configuradas. Para cada processo de transmissão, a rotina do AUTONFE identificará o parâmetro de Numero de Processos Simultâneos e assim não realizara mais nenhum outra abertura de processo em paralelo, realizando toda a operação no mesmo processo (thread) aberto pelo agendamento.






04. Uso de licenças do AUTONFE


No modulo SIGACFG (configurador), acessar:




Selecionar qual rotina necessita de mais processamento, e depois seleciona-la.

Clicar no botão Alterar e depois no botão Parâmetros.



Informar no campo destacado quantos processos simultâneos a rotina deverá executar.


Caso não seja informado o número de processos simultâneos ou caso seja informado o valor: 1, o processo será executado como mono thread. O número de threads usados no Agent não afeta o funcionamento multithreading da rotina autonfe. 



Depois clicar no botão OK para gravar as modificações.

Após tal configuração basta executar o agendamento ou aguardar sua execução automática na data pré-configurada.



Atenção: No caso da utilização do Fórmula é necessário que o valor retornado seja numérico, conforme exemplo abaixo:









<!-- esconder o menu --> 


<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}
</style>