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