Histórico da Página
Parâmetro_MV_CTBUPRC
Características do Requisito
Linha de Produto: | Microsiga Protheus | ||||||||||||||||||||||||||
Segmento: | Serviços | ||||||||||||||||||||||||||
Módulo: | Contabilidade Gerencial (SIGACTB) | ||||||||||||||||||||||||||
Rotina: |
| ||||||||||||||||||||||||||
Cadastros Iniciais: | Cadastros básicos da Contabilidade Gerencial: Calendário Contábil, Moedas Contábeis, Moeda X Calendário,Plano de Contas, Lançamento Padronizados . Financeiro : Cadastro de Natureza, Clientes/Fornecedores, Lançamentos Padronizados utilizados na Contabilização Off Line. Estoques : Cadastro de Natureza , Produtos, Locais de Estoque, Lançamentos Padronizados do módulo utilizados no processo de Contabilização do Recálculo do Custo Médio, Movimentações Internas. | ||||||||||||||||||||||||||
Parâmetro(s): | MV_CTBUPRC | ||||||||||||||||||||||||||
Requisito (ISSUE): | Criação do parâmetro MV_CTBUPRC. Este parâmetro, se existir e parametrizado com .T., irá criar o arquivo temporário da contabilização no banco de dados. Serão realizadas as verificações da regra e contra-regra, as amarrações ( CtbAmarra) e as validações da função linhaOK serão feitas por procedures dinâmicas. A gravação dos lançamentos contábeis (CT2), do rastreamento de lançamento (CV3) e da tabela temporária (TRW ) também serão feitas por procedures dinâmicas. A tabela TRW será populada caso a atualização de saldos seja on line ( MV_ATUSAL = 'S'). Obs: Quando se utilizar recurso não será permitido alterar o lançamento durante a contabilização. | ||||||||||||||||||||||||||
País(es): | Brasil | ||||||||||||||||||||||||||
Banco(s) de Dados: | SqlServer, Oracle. | ||||||||||||||||||||||||||
Tabelas Utilizadas: | CT2, CTK, CV3, TRW, CT5, SD3 | ||||||||||||||||||||||||||
Sistema(s) Operacional(is): | Todos homologados para o Protheus. |
Descrição
MV_CTBUPRC
O parâmetro MV_CTBUPRC se existir e estiver parametrizado como verdadeiro (.T.), irá criar o arquivo temporário da contabilização no banco de dados e não local. Serão realizadas as verificações da regra e contra-regra, as amarrações ( CtbAmarra) e as validações da função linhaOK por procedures dinâmicas. A gravação dos lançamentos contábeis (CT2), rastreamento de lançamento (CV3) e da tabela temporária (TRW ) também serão feitas por procedures dinâmicas. A tabela TRW será populada pela procedure dinâmica caso o parâmetro para a atualização de saldos seja on line ( MV_ATUSAL = 'S').
Obs: quando se utilizar desse recurso, não será permitido alterar o lançamento durante a contabilização. Essa melhoria será disponibilizada nas seguintes rotinas de contabilização contábil: CTBA500,FINA370, CTBAFIN, MATA330 e MATA331.
Campos CT5_CTRLSD, CT5_MLTSLD
CT5_CTRLSD - campo que indica se o controle de saldo irá ser feito '1 - sim' ou não '2 - não'.
CT5_MLTSLD - campo que contém os saldos em que os lançamentos serão gerados. Será preenchido dessa forma '1;3;'.
Caso o campo CT5_CTRLSD ( controla saldo, 1 - sim, 2- não ) estiver preenchido com '1 - sim ' e o campo CT5_MLTSLD ( tipos de saldos em que os lançamentos serão gerados , '1;3' )
Ponto de Entrada CT105CT2
Descrição: | Este ponto de entrada (PE) permite a gravação de dados complementares na tabela de lançamentos contábeis (CT2) durante o processo de contabilização de lançamentos de integração com outros módulos do Protheus. |
Localização: | Rotina customizada. Não fica no menu |
Eventos: | CT105CT2 |
Programa Fonte: | CTBA105 |
Função: | CT105CT2_XX, onde xx é o código da empresa |
Retorno: | Não tem retorno. o Usuário deve garantir que a gravação dos complementos seja bem sucedida. |
Ponto de Entrada CTBGRV
Descrição: | Este ponto de entrada (PE) permite a gravação de dados complementares na tabela de lançamentos contábeis (CT2) durante o processo de contabilização de lançamentos de integração com outros módulos do Protheus. |
Localização: | Rotina customizada. Não fica no menu |
Eventos: | CTBGRV |
Programa Fonte: | Ctba105 |
Função: | CTBGRV_XX, onde xx é o código da empresa |
Retorno: | Não tem retorno. o Usuário deve garantir que a gravação dos complementos seja bem sucedida. |
Os pontos de entradas acima serão chamados nas procedures dinâmicas criada para gravação de lançamentos, portanto, a implementação deles é de responsabilidade do usuário. Uma vez criados os PE's no SGBD, estes devem ser implementados para gravação de dados adicionais.
Serão chamados na ordem e da forma descrita abaixo:
Obs: código em SQLSERVER
/* -----------------------------------------
PE CT105CT2
----------------------------------------- */
If ( @IN_cProg != 'CTBA101' and @IN_cProg != 'CTBA102' and @IN_cProg != 'CTBA103' ) And @IN_LSIMULA = '0' begin
Exec CT105CT2_xx @IN_nMoedas, @cCT2_DATA, @cCT2_LOTE, @cCT2_SBLOTE, @cCT2_DOC, @IN_lCusto, @IN_lItem, @IN_lCLVL, @IN_TOTINF, @IN_LATUBASE, @IN_LREPROC
end
/* -----------------------------------------
PE CTBGRV
----------------------------------------- */
If @IN_LSIMULA = '0' begin
Exec CTBGRV_xx @IN_NOPC, @IN_cProg
End
Na primeira vez em que as procedures dinâmicas de gravação de lançamentos forem criadas, os pontos de entradas também serão criados no SGBD. Uma vez criados, a exclusão destes PE's só poderá ser feita manualmente no SGBD.
Exemplo:
Corpo do PE CT105CT2_XX e os parâmetros de entrada.
Create Procedure CT105CT2_XX (
@IN_NMOEDAS integer,
@IN_DATALANC Char( 08 ),
@IN_LOTE Char( 06 ),
@IN_SBLOTE Char( 03 ),
@IN_DOC Char( 06 ),
@IN_LCUSTO Char( 01 ),
@IN_LITEM Char( 01 ),
@IN_LCLVL Char( 01 ),
@IN_TOTINF float,
@IN_LATUBASE Char( 01 ),
@IN_LREPROC Char( 01 )
)
as
/* ------------------------------------------------------------------------------------
Ponto de entrada padrao : CT105CT2
---------------------------------------------
@IN_NMOEDAS - Nro de Moedas Usadas
@IN_DATALANC - Data do Lancto
@IN_LOTE - Nro do Lote Contábil
@IN_SBLOTE - Sublote contábil
@IN_DOC - Nro do Documento contabil
@IN_LCUSTO - Indica se Trabalha com CCusto, '1' trabalha, '0' Nao
@IN_LITEM - Indica se Trabalha com Item , '1' trabalha, '0' Nao
@IN_LCLVL - Indica se Trabalha com Classe de Valor, '1' trabalha, '0' Nao
@IN_TOTINF - Total Informado
@IN_LATUBASE - Indica se atualiza tabelas de Saldos. Se '1' atualiza
@IN_LREPROC - Indoca se é Reproc Contábil
-------------------------------------------------------------------------------------- */
Declare @iMoedas Integer
Declare @cDataLanc Char( 08 )
Declare @cLote Char( 06 )
Declare @cSbLote Char( 03 )
Declare @cDoc Char( 06 )
Declare @lCusto Char( 01 )
Declare @lItem Char( 01 )
Declare @lClvl Char( 01 )
Declare @nTotInf Float
Declare @lAtuBase Char( 01 )
Declare @lReproc Char( 01 )
Begin
select @iMoedas = @IN_NMOEDAS
select @cDataLanc = @IN_DATALANC
select @cLote = @IN_LOTE
select @cSbLote = @IN_SBLOTE
select @cDoc = @IN_DOC
select @lCusto = @IN_LCUSTO
select @lItem = @IN_LITEM
select @lClvl = @IN_LCLVL
select @nTotInf = @IN_TOTINF
select @lAtuBase = @IN_LATUBASE
select @lReproc = @IN_LREPROC
End
Corpo do PE CTBGRV_XX e os parâmetros de entrada.
Create Procedure CTBGRV_XX (
@IN_NOPC integer,
@IN_CPROG Char( 08 ),
)
as
/* ------------------------------------------------------------------------------------
Ponto de entrada padrao : CT105CT2
---------------------------------------------
@IN_NOPC - 3 - Inclusao, 4- alteração, 6 - Estorno - ( recebe sempre 3 )
@IN_CPROG - Nome do Programa
-------------------------------------------------------------------------------------- */
Declare @nOpc Integer
Declare @cProg Char( 10 )
Begin
select @nOpc = @IN_NOPC
select @cProg = @IN_CPROG
End