Árvore de páginas

Efetivacao de pre_lancamentos contabeis por thread procedures

Características do Requisito

Linha de Produto:

Microsiga Protheus

Segmento:

Serviços

Módulo:

Contabilidade Gerencial

Rotina:

Rotina

Nome Técnico

CTBA192

Reprocessamento de Saldos por Conta

Rotina(s) envolvida(s)

Nome Técnico

CTB.PRW

Compatibilizador UPDCTB

CTBA350 

Efetivação de Pre-Lançamentos
CTBA351Validação pré-lancamentos 

Cadastros Iniciais:

Calendário Contábil

Moeda Contábil

Amarração Calendário Contábil x Moeda Contábil

Lançamento Contábeis

Parâmetro(s):

MV_CT350TH - Quantidade de Thread na efetivação

MV_CT350QY - Habilita a query na efetivação

MV_CT350SL - Controle atualização saldos na efetivação         

MV_CT350TC - Controle trace log na efetivação                  

Chamados Relacionados

XXXXXX

País(es):

Todos

Banco(s) de Dados:

SQLServer/Oracle

Tabelas Utilizadas:

CT2 – Lançamentos Contábeis        

CTT – Centro de Custos

CTD - Item Contábil                

CTH - Classes de Valores           

CT6 - Totais de Lotes    

CTC - Saldos do Documento

Sistema(s) Operacional(is):

Todos

Descrição

Implementada a melhoria de performance para a rotina CTBA350 – Efetivação, através da utilização de Threads e Stored Procedures dinâmicas e cálculo das tabelas CT6 (Totais de Lotes) e CTC (Saldos por documentos).

Thread é um pequeno programa que trabalha como um subsistema independente de um programa maior, executando uma tarefa específica. Um programa dividido em várias threads pode rodar mais rápido que um programa monolítico, pois várias tarefas podem ser executadas simultaneamente, permitindo compartilhar os recursos do sistema.

Stored Procedures, nome correspondente em português seria Procedimento Armazenado e são rotinas criadas na linguagem nativa do banco de dados utilizado, que tem por objetivo agilizar a execução de  processamentos que podem ser demorados, dependendo do volume de dados armazenados. As Stored Procedures são dinâmicas quando são criadas em tempo de execução e excluídas ao final do processamento.

Para ganho de performance no processamento da Rotina CTBA350 – efetivação, foi implementado o conceito de execução por thread que permite ao usuário definir, através do novo parâmetro MV_CT350TH, o número de threads que devem ser executadas ao mesmo tempo pelo Sistema.

A quantidade de Threads é definida com base na infraestrutura do cliente que deverá avaliar a necessidade de aumento ou diminuição.

Importante

(Apenas para Microsiga Protheus, versões anteriores à versão 12)

Antes de executar o compatibilizador U_UPDCTB é imprescindível:

  • Realizar o backup da base de dados do produto que será executado o compatibilizador (diretório PROTHEUS_DATA\DATA, se versão 10, ou \PROTHEUS11_DATA\DATA, se versão 11) e dos dicionários de dados SXs (diretório PROTHEUS_DATA_SYSTEM, se versão 10, ou \PROTHEUS11_DATA\SYSTEM, se versão  11).
  • 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 Microsiga Protheus TOTVS Smart Client (se versão 10), digite  U_UPDCTB no campo Programa Inicial. Para a correta atualização do dicionário de dados, certifique-se que a data do compatibilizador seja igual ou superior a 16/11/2016.
  2. Clique em OK para continuar.
  3. Após a confirmação é exibida uma tela para a seleção da empresa em que o dicionário de dados será modificado.
  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.

 

Atualizações do Compatibilizador

(Apenas para Microsiga Protheus, versões anteriores à versão 12)

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

Nome da Variável

MV_CT350TH

Tipo

Numérico

Descrição

Quantidade de threads para o processamento, menor ou igual a 1 não utiliza Thread.

Valor Padrão

1

Procedimento para Configuração

 CONFIGURAÇÃO DE PARÂMETROS

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

Itens/Pastas

Descrição

Nome:

MV_CT350TH

Tipo:

Numérico

Cont. Por.:

Quantidade de threads para o processamento, menor ou igual a 1 não utiliza Thread.

Descrição:

1

Procedimento para Utilização

Exemplo:

  1. No Configurador (SIGACFG), acesse Ambientes/Cadastros/Parâmetros (CFGX017).
  2. Localize o parâmetro MV_CT350TH e Clique em alterar;
  3. Modifique o parâmetro para 10 ou outro valor conforme a explicação abaixo:
    A quantidade de Threads é definida com base na infraestrutura do cliente que deverá avaliar a necessidade de aumento ou diminuição. Caso seja maior que 1 (um), utiliza a quantidade de Threads definida no parâmetro e faz a chamada da função CTB351PROC, caso seja menor ou igual a 1 chama a função padrão CTBA350PROC padrão sem Thread ou Stored Procedures.                     
  4. Localize o parâmetro MV_CT350QY e Clique em alterar;
    1. Modifique o parâmetro para .T.
  5. Localize o parâmetro MV_CT350SL e Clique em alterar;
    1. Modifique o parâmetro para .T.
  6. Localize o parâmetro MV_CT350TC e Clique em alterar;
    1. Modifique o parâmetro para .F.
  7. No módulo Contabilidade Gerencial (SIGACTB) acesse Miscelanea\Processamentos\Efetivação ( CTBA350 ).
    1. Defina os Parâmetros e Confirme - Ok