Page tree

Integração de Títulos com Multi-Thread

Características do Requisito

Linha de Produto:

Microsiga Protheus

Segmento:

Serviços

Módulo:

SIGAGPE - Gestão de Pessoal

Rotina:

Rotina

Nome Técnico

GPEM670

Integr. Financeiro

Rotina(s) envolvida(s)

Nome Técnico

Informe a(s) rotina(s) envolvidas.

Informe o nome técnico da(s) rotina(s) envolvidas.

 RHUPDGPE

Compatibilizador do SIGAGPE

Parâmetro(s):

MV_RHQTRC1

Chamados relacionados

TRSHSU

País(es):

Todos

Banco(s) de Dados:

TotvsDbAccess

Tabelas utilizadas:

RC1 (Movimentação de Títulos) - SE2 (Contas a Pagar)

Sistema(s) operacional(is):

Todos

Versões/Release:

11.80

Descrição

Melhoria de performance na rotina de Integração de Títulos com o financeiro com a utilização de multi-thread.

 

Importante

Antes de executar o compatibilizador RHUPDMOD é imprescindível:

  • Realizar o backup da base de dados do produto que será executado o compatibilizador (diretório \PROTHEUS11_DATA\DATA) e dos dicionários de dados SXs (\PROTHEUS11_DATA\SYSTEM).
  • Os diretórios acima mencionados correspondem à instalação padrão do Protheus, portanto, devem ser alterados conforme o produto instalado na empresa.
  • Essa rotina deve ser executada em modo exclusivo, ou seja, nenhum usuário deve estar utilizando o sistema.
  • Se os dicionários de dados possuírem índices personalizados (criados pelo usuário), antes de executar o compatibilizador, certifique-se de que estão identificados pelo nickname. Caso o compatibilizador necessite criar índices, irá adicioná-los a partir da ordem original instalada pelo Protheus, o que poderá sobrescrever índices personalizados, caso não estejam identificados pelo nickname.
  • O compatibilizador deve ser executado com a Integridade Referencial desativada*.

 

Atenção

O procedimento a seguir deve ser realizado por um profissional   qualificado como Administrador de Banco de Dados (DBA) ou equivalente!

A ativação indevida da Integridade Referencial pode alterar   drasticamente o relacionamento entre tabelas no banco de dados. Portanto,   antes de utilizá-la, observe atentamente os procedimentos a seguir:

  1. No   Configurador (SIGACFG), veja se a empresa utiliza Integridade   Referencial, selecionando a opção Integridade/Verificação   (APCFG60A).
  2. Se não   há Integridade Referencial ativa,   são relacionadas em uma nova janela todas as empresas e filiais cadastradas   para o sistema e nenhuma delas estará selecionada. Neste caso, E SOMENTE NESTE, não é necessário   qualquer outro procedimento de ativação   ou desativação de integridade, basta finalizar a verificação e aplicar   normalmente o compatibilizador, conforme instruções.
  3.  Se há Integridade Referencial ativa   em todas as empresas e filiais, é   exibida uma mensagem na janela Verificação   de relacionamento entre tabelas. Confirme a mensagem para que a   verificação seja concluída, ou;
  4.  Se   há Integridade Referencial ativa   em uma ou mais empresas, que não   na sua totalidade, são relacionadas em uma nova janela todas as empresas e   filiais cadastradas para o sistema e, somente, a(s) que possui(em)   integridade está(arão) selecionada(s). Anote qual(is) empresa(s) e/ou   filial(is) possui(em) a integridade ativada e reserve esta anotação para   posterior consulta na reativação (ou ainda, contate nosso Help Desk Framework   para informações quanto a um arquivo que contém essa informação).
  5. Nestes   casos descritos nos itens “iii” ou   “iv”, E SOMENTE NESTES CASOS, é necessário desativar tal integridade, selecionando a opção Integridade/ Desativar (APCFG60D).
  6.  Quando desativada a Integridade Referencial,   execute o compatibilizador, conforme instruções.
  7. Aplicado o compatibilizador, a Integridade   Referencial deve ser reativada, SE E   SOMENTE SE tiver sido desativada, através da opção Integridade/Ativar (APCFG60). Para isso, tenha em mãos as   informações da(s) empresa(s) e/ou filial(is) que possuía(m) ativação da   integridade, selecione-a(s) novamente e confirme a ativação.

 

Contate o Help Desk Framework EM CASO DE DÚVIDAS!

 

  1. Em ByYou Smart Client, digite informe o RHUPDMOD no campo Programa Inicial e selecione o módulo SIGAGPE - Gestão de Pessoal
    Importante: Para a correta atualização do dicionário de dados, certifique-se que a data do compatibilizador seja igual ou superior a 19/08/15.
  2. Clique em OK para continuar.
  3. Após a confirmação é apresentada a janela para seleção do compatibilizador. Selecione o item 291 - Criação de parametro MV_RHQTRC1 para utilização de Multi-Thread na Integração de Títulos.
  4. Ao confirmar é exibida uma mensagem de advertência sobre o backup e a necessidade de sua execução em modo exclusivo.
    1. Clique em Processar para iniciar o processamento. O primeiro passo da execução é a preparação dos arquivos.
      É apresentada uma mensagem explicativa na tela.
    2. Em seguida, é exibida a janela Atualização concluída com o histórico (log) de todas as atualizações processadas. Nesse log de atualização são apresentados somente os campos atualizados pelo programa. O compatibilizador cria os campos que ainda não existem no dicionário de dados.
    3. Clique em Gravar para salvar o histórico (log) apresentado.
    4. Clique em OK para encerrar o processamento.

 

Procedimento para Implantação

O sistema é atualizado logo após a aplicação do pacote de atualizações (Patch) deste chamado.

  1. Após execução do compatibilizador RHUPDMOD execute o Configurador (SIGACFG) ,no Cadastro de Parâmetros, verifique que o parâmetro MV_RHQTRC1 é criado conforme especificações abaixo:

Nome da Variável:

MV_RHQTRC1

Tipo:

N

Descrição:

Indica a quantidade de threads utilizadas na integração de títulos.

Valor Padrão:

1

Atualizações do Compatibilizador

 

1.  Criação ou Alteração de Parâmetros no arquivo SX6 – Parâmetros:

Nome da Variável

MV_RHQTRC1

Tipo

N

Descrição

Indica a quantidade de threads utilizadas na integração de títulos

Valor Padrão

1

  

Procedimento para Configuração

  

CONFIGURAÇÃO DE PARÂMETROS

 

  1. No Configurador (SIGACFG), acesse Ambientes/Cadastros/Parâmetros (CFGX017). Configure o parâmetro a seguir:

Itens/Pastas

Descrição

Nome:

MV_RHQTRC1

Tipo:

N

Cont. Por.:

Informe aqui a quantidade de threads que deseja utilizar

Descrição:

Indica a quantidade de threads utilizadas na integração de títulos.

 

Importante: Caso o parâmetro fique com conteúdo menor ou igual a 1, não serão executadas múltiplas threads na execução da rotina. Múltiplas threads são executadas apenas, se o conteúdo do parâmetro for igual ou superior a 2.

A quantidade mínima de registros (RC1 filtrados) por thread é 500, sendo assim, caso exista menos do que 500 registros, nenhuma thread será iniciada. Da mesma forma, se existir, por exemplo, 1001 registros para serem integrados e, o parâmetro estiver configurado para utilizar 3 threads, automaticamente o sistema irá fazer um tratamento e apenas DUAS threads serão iniciadas, processando 500 registros em uma, e o restante (501), na segunda. Nunca uma thread terá menos que 500 registros.

A utilização de threads, se bem definida, pode melhorar a performance das rotinas de forma extraordinária, porém, seu mal uso pode causar o efeito contrário, piorando a performance. 
É importante citar que cada thread irá demandar capacidade de processamento e memória extra do servidor. Portanto, se a quantidade não for bem definida, a perda de performance do hardware em geral pode ser maior que o ganho no processamento paralelo da rotina, deixando o processo de uma forma geral mais lento. 
Não é possível definir uma quantidade de threads padrão, pois isso depende exclusivamente do poder de processamento do servidor, ficando a cargo do departamento de TI do cliente, a análise e definição de quantas threads deverão ser utilizadas.

IMPORTANTE: Para utilização de multi-threads, é necessário deixar o conteúdo do parametro MV_FINATFN com "2". Esta parametrização é fundamental para a garantia da integridade das informações e performance.

 

Procedimento para Utilização

 

       1.            No Gestão de Pessoal (SIGAGPE) acesse Miscelânea / Títulos / Integr. Financeiro (GPEM670).

Confirme os parâmetros de execução da rotina e confirme novamente.