Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

CONTEÚDO

...

  1. Visão Geral
  2. Exemplo de utilização
  3. Escolha do Mecanismo para Remoção do Semáforo
  4. Pontos de atenção das funções escolhidas e nas formas de bloqueio de registros
  5. Ca100Incl e SimpleLock

a.1 Tirando Dúvidas

b. StarJob e RpcSetEnv

b.1 Tirando Dúvidas 

  1. Coexistência de versões Protheus anteriores

...

  1. 12.1.

...

a. Coexistência de diversas Versões Protheus

b. Tabela de Documento contábil, CTF

c. Não alteração dos fontes de outros módulos nos processos de Contabilizações off line , versões maiores ou iguais a P12.1.031

d. Fontes com ajustes no módulo Contábil 

6. Mensagem Única

...

  1. 33

...

  1. Tabelas Contábeis Envolvidas

8. Desenvolvimento/Codificação

  1. Parâmetros do Semáforo Contábil

10. Funções de Semáforo 

11. Rotinas chamadoras das funções de Semáforo Contábil

12. Rotinas chamadoras da função GravaLanc

13. Rotinas chamadoras da função Ca100incl

  1. Prós 
  2. Links Relacionados

...

01. VISÃO GERAL


Com as evoluções do Protheus houve a necessidade de remoção do arquivo de semáforo contábil. 


A contabilização de integrações faz uso função LockByName e da

...

tabela de semáforo contábil.

...

A tabela de semáforo contábil não será mais criada no diretório system

...

.

Outra mudança

...

é na geração do número do documento contábil (CTF). Este número passou a ser

...

gerado por JOB em uma thread separada que cria uma quantidade determinada pelo parâmetro MV_CTFQTD.

...

A remoção do arquivo de semáforo contábil e a

...

geração do número do documento contábil por job estará

...

disponível a partir da versão 12.1.33. Para versões anteriores continuará sem alterações.


02. 

...

EXEMPLO DE UTILIZAÇÃO

Esta funcionalidade será utilizada em todos os módulos do ERP em que existe contabilização de integrações e dentro do próprio módulo Contabilidade Gerencial.


03. 

...

Após discussões das questões de performance, concorrência, perda de dados, funções dentro de transações, inicialmente, fomos orientados a adotar a solução abaixo que serão feitos em dois pontos.

Na função de contabilização Ca100Incl, na contabilização de integrações, receber do módulo origem o vetor aFlagCTB preenchidos com as devidas posições, aFlagCTB{  'campo da tabela a ser marcado', 'string a gravar', 'alias da tabela a marcar', 'recno a ser marcado' }  para todos os registros de origem a serem contabilizados. Também não alterar o local da chamada dessa função dentro do ERP, podendo algumas chamadas ficarem dentro de transação.  

Outro ponto é na chamada da função que gera o número do próximo documento contábil, ProxDoc.  Como esta função pode estar dentro de uma transação, caso ela não consiga pegar um número de documento contábil disponível,  utilizar a função Starjob para executá-la e gerar os novos números de documentos contábeis e novamente tentar pegar um número de documento disponível e bloquear e marcar como usado.

Porém, na reunião com o time da Engenharia, foi solicitado a verificação da possibilidade de coexistência de várias versões do Protheus anteriores a P12.1.31 e da possibilidade de não alterar os fontes dos módulos de origem da contabilização.  

05. Solicitação de Coexistência de versões Protheus anteriores e iguais ou superiores a P12.1.033

a. Coexistência de diversas Versões Protheus

COEXISTENCIA DE VERSÕES PROTHEUS ANTERIORES A P12.1.33


Para versões anteriores da P12.1.33, a criação do arquivo de semáforo contábil na pasta system será mantida. 

Para versões a partir de P12.1.

...

33, o arquivo de semáforo contábil será substituída por LockByName e SimpleLock para o bloqueio do número do documento a (CTF).

...


04Tabelas Contábeis Envolvidas

CTF - Capa do Lote Contábil

...

Campo criado para indicar se o documento já está em uso por outra conexão.


Campo

X3_CAMPO 

Tipo

X3_TIPO

Tamanho 

X3_TAMANHO

Decimal

X3_DECIMAL

Picture

X3_PICTURE

Título 

X3_TITULO

Descrição

X3_DESCRIC

Grupo Cpos

X3_GRPSXG

Usado

X3_USADO

Obrigatório

X3_OBRIGAT

Browse

X3_BROWSE

Opções 

X3_F3

When

X3_WHEN

Relação

X3_RELACAO

Visual

X3_VISUAL

Val Sistema

X3_VALID

Contexto
X3_CONTEXT

CTF_USADOC1

Doc UsadoIndicador de uso do Documento Contábil

X


N




R

...







O campo CTF_USADO funciona de acordo com a regra:

CTF_USADO = 'X' → Significa que a chave (DATA, LOTE, SUBLOTE , DOCUMENTO) está disponível para uso permitindo assim sua utilização no cadastro de um lançamento contábil.

CTF_USADO = 'R' → Significa que a chave (DATA, LOTE, SUBLOTE , DOCUMENTO) está disponível para ser reutilizada, o sistema não irá gatilhar o número dessa chave de forma automática, porém caso o usuário force sua utilização, o sistema irá liberar e o cadastro do lançamento contábil irá ser efetuado normalmente.

CTF_USADO = 'S' → Significa que a chave (DATA, LOTE, SUBLOTE , DOCUMENTO) está utilizada e não permitirá o uso, o sistema não irá gatilhar o número dessa chave de forma automática e caso o usuário force sua utilização, aparecerá o help (DOCINVALID) não permitindo sua utilização.

        Image Added

Ao finalizar a gravação de um lançamento contábil, o conteúdo do campo CTF_USADO irá ser atualizado para 'S' impedindo que seja utilizado para gravação de novos lançamentos com essa chave.

Ao excluir um lançamento contábil, o conteúdo do campo CTF_USADO irá ser atualizado para 'R' permitindo que o usuário possa reutilizar a chave.


   CTK
 - Tabela de Contraprova gerada pela função

...

Detprova

...

   SX6 -

...

Tabela de parâmetros do sistema.

...

   Será criado um novo parâmetro para definir a quantidade de documentos a serem criados pelo Job. Assim poderá ser aumentado se houver demanda por mais documentos.


X6_FIL

X6_VAR 

X6_TIPO

X6_DESCRIC

X6_CONTEUD

X6_PROPRI


MV_CTFQTDNQuantidade de Documentos a serem criados pelo Job
10

100

S

...



05.PARÂMETROS DO SEMAFORO CONTÁBIL



ParâmetroConteudo

MV_CTBSER   

...

'1' = Ligado;

'2' = Desligado;

'3' = Modo teste.

MV_CTBSERT

...

Tempo em milissegundos.

MV_

...

CTBSETZ'.T.

...

' = Permite zap/truncate;

...


'.F.

...

' = Não permite
MV_CT2SMLT

...

'.T.

...

' = Configuração para alterações(opção diferente de inclusão) simultâneas.
MV_CTBNFSE

...

'1' =Ligado;
'2' = Desligado


A partir da versão 12.1.33 os parâmetros acima não serão mais considerados.

...

Em versões anteriores nada muda.


ParâmetroConteúdo

MV_CTFQTD

100 = Esse parâmetro indica

MV_CTFQDT - 10.  Quantidade default de númerode documentos a serem criados por job

...

a quantidade de documentos ( CTF_DOC ) a serem criados pelo job. Assim

...

, pode e deve ser aumentado de acordo com a demanda de documentos.

10. Funções do Semáforo Contábil

CtbSerialI

CtbSerialF

CtbFimSemaforo

CtbIniSemaforo

CanProcItvl

FreeProcItvl

11. Rotinas chamadoras das funções do Semáforo Contábil

ATFA371.PRX – Contabilização Off line do Ativo

CTBA190.PRW- Reprocessamento Contábil

CTBA210.PRW – Apuração de Resultados -Não tratar.. - DESCONTINUADO

CTBA215.PRW – Estorno da Apuração de Resultados

CTBA220.PRW – Consolidação Geral

CTBA230.PRW – Consolidação Configurada

CTBA280.PRW – Gerar lançamentos referentes ao rateio off line cadastrado.

CTBA281.PRW - Este programa calcula os rateios Off-Line cadastrados. (Rateio por combinacoes)    

CTBA340.PRW – Cálculo de variação monetária ( Translation Effect).

CTBA350.PRW – Efetivar pré-lançamentos. “ON”

CTBA370.PRW – Recalcular valor dos lançamentos contábeis

CTBA380.PRW – Variação Monetária – Apurar diferença Cambial entre as moedas.

CTBA381.PRW – Variação Monetária - Localizações.

CTBA500.PRW – Contabilização txt. “ON”

CTBXATU.PRW – Grava lançamentos Contábeis – CT2

CTBXSEM.PRW – Funções de Semáforos

CTBANFE.PRW – Processamento da Contabilização Off line de Documentos de Entrada.


06. PRÓS

Prós:

  • As alterações realizadas visam o ganho de performance nas contabilizações e estão presentes a partir do release 12.1.33


07. LINKS RELACIONADOS

        CTBANFS.PRW – Processamento da Contabilização Off Line de Documentos de Saída.