Árvore de páginas

Versões comparadas

Chave

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

...

Propriedades de página

CONTEÚDO

  1. Visão Geral
  2. Exemplo de utilização
    1. InclusãoAlteração
    2. Inclusão com mais de um Lançamento
  3. Tabelas utilizada


01. VISÃO GERAL

...

Aviso
titleAviso

A Execução automática está disponível apenas para Inclusão e Alteração de lançamentos contábeis.

Informações
titleImportante

Na utilização de execAuto ExecAuto considerar os seguintes critérios:

 - Passar o campo CT2_CONVER como 15555, demais moedas devem ser feitos pela inclusão de um novo aItens

 - Passar o campo CT2_CRITER, para as demais moedas apenas inclui como conversão, não permitindo a inclusão do CT2_VALOR zerado.

 - Para alteração de registro passe novamente o aCab



Inclusão:


Bloco de código
languagepy
themeMidnight
titlemyctba102inc
linenumberstrue
collapsetrue
#INCLUDE "PROTHEUS.CH"
 
//-------------------------------------------------------------------
/*/{Protheus.doc} MyCTBA102Inc   MyCTBA102Inc    
 
 Inclusão Inclusão de Lançamento Automático CTBA102
 
@author Totvs
@since 29/11/2013
@version 1@author Totvs
@since 23/06/2022
@version 2.0
 
/*/
//-------------------------------------------------------------------
 
User Function MyCTBA102Inc()

Local nX
Local aArea         := GetArea()
Local nDoc  aCab          := 1{}
Local lRet            aItens := {}

Private lMsErroAuto     := .TF.
LocalPrivate lMsHelpAuto  aCab            := {}
Local aItens        := {}
Local aLinha         := {}
Local dDataLanc     := ctod("28/11/2013")  
Local nLinha        := '001'


Private lMsErroAuto     := .F.
Private lMsHelpAuto     := .T.
Private CTF_LOCK        := 0
Private lSubLote         := .T.


PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01 " MODULO "CTB" TABLES "CT2"

    aCab := {}
    aItem := {}



    aAdd(aCab,  {'DDATALANC'     ,dDataBase        ,NIL} )
    aAdd(aCab,  {'CLOTE'         ,'333333'         ,NIL} )
    aAdd(aCab,  {'CSUBLOTE'         ,'001'         ,NIL} )
    aAdd(aCab,  {'CDOC'             ,'000001'         ,NIL} )
    aAdd(aCab,  {'CPADRAO'         ,''             ,NIL} )
    aAdd(aCab,  {'NTOTINF'         ,0                 ,NIL} )
    aAdd(aCab,  {'NTOTINFLOT'     ,0                 ,NIL} )

    

    aAdd(aItens,{ .T.
Private CTF_LOCK        := 0
Private lSubLote        := .T.
 

    RpcSetType(3)
    RpcSetEnv( 'T1', 'D MG 01 ',,,'CTB')

    aAdd(aCab,  {'DDATALANC'     ,dDataBase        ,NIL} )
    aAdd(aCab,  {'CLOTE'         ,'333333'         ,NIL} )
    aAdd(aCab,  {'CSUBLOTE'      ,'001'            ,NIL} )
    aAdd(aCab,  {'CPADRAO'       ,''               ,NIL} )
    aAdd(aCab,  {'NTOTINF'       ,0                ,NIL} )
    aAdd(aCab,  {'NTOTINFLOT'    ,0                ,NIL} )
 
    aAdd(aItens,{  {'CT2_FILIAL'          ,xFilial('0101   '     CT2'), NIL},;
                    {'CT2_LINHA'      , nLinha        , NIL},;
                   {'CT2_MOEDLC'      ,'01'          , NIL},;
                   {'CT2_DCLINHA'              , '3'         001'         , NIL},;
                     {'CT2_DEBITO'      ,'101010100'   , NIL},;
                                  {'CT2_CREDITMOEDLC'          ,'201010100'   01'          , NIL},;
                   {'CT2_VALOR'      , 3000          , NIL},;
                                  {'CT2_ORIGEMDC'                ,'MSEXECAUT'    3'          , NIL},;
                   {'CT2_HP'           ,''           , NIL},;
                                   {'CT2_CONVER'    DEBITO'      ,'11101010100'          	 , NIL},;
                    {'CT2_HIST'       ,'MSEXECCT2'    , NIL} } )         

    MSExecAuto({|x, y,z| CTBA102(x,y,z)}, aCab ,aItens, 3)

    If lMsErroAuto
        lMsErroAuto := .F.
        MsgAlert("ERRO Lançamento" , "Teste Carga CT2")
		mostraErro()
        Exit
    Endif
RestArea(aArea)

RESET ENVIRONMENT

Return

Inclusão Mais de uma Linha :

Bloco de código
languagepy
collapsetrue
User Function MyCTBA102Inc() 

Local nX
Local aArea := GetArea()
Local nDoc := 1
Local lRet := .T.
Local aCab := {}
Local aItens := {}
Local aLinha := {}
Local dDataLanc := ctod("28/11/2013") 


Private lMsErroAuto := .F.
Private lMsHelpAuto := .T.
Private CTF_LOCK := 0
Private lSubLote := .T.


PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01 " MODULO "CTB" TABLES "CT2"

aCab := {}
aItem := {}

aAdd(aCab, {'DDATALANC' ,dDataBase ,NIL} )
aAdd(aCab, {'CLOTE' ,'333333' ,NIL} )
aAdd(aCab, {'CSUBLOTE' ,'001' ,NIL} )
aAdd(aCab, {'CDOC' ,'000001' ,NIL} )
aAdd(aCab, {'CPADRAO' ,'' ,NIL} )
aAdd(aCab, {'NTOTINF' ,0 ,NIL} )
aAdd(aCab, {'NTOTINFLOT' ,0 ,NIL} )


aItem1 := { {'CT2_FILIAL' ,'0101 ' , NIL},;
{'CT2_LINHA' , '001' , NIL},;
{'CT2_MOEDLC' ,'01' , NIL},;
{'CT2_DC' ,'3' , NIL},;
{'CT2_DEBITO' ,'101010100' , NIL},;
{'CT2_CREDIT' ,'201010100' , NIL},;
{'CT2_VALOR' , 3000 , NIL},;
{'CT2_ORIGEM' ,'MSEXECAUT' , NIL},;
{'CT2_HP' ,'' , NIL},;
{'CT2_CONVER' ,'11' , NIL},;
{'CT2_HIST' ,'MSEXECCT2' , NIL} }

aItem2 := { {'CT2_FILIAL' ,'0101 ' , NIL},;
{'CT2_LINHA' , '002' , NIL},;
{'CT2_MOEDLC' ,'01' , NIL},;
{'CT2_DC' ,'3' , NIL},;
{'CT2_DEBITO' ,'101010100' , NIL},;
{'CT2_CREDIT' ,'201010100' , NIL},;
{'CT2_VALOR' , 4000 , NIL},;
{'CT2_ORIGEM' ,'MSEXECAUT' , NIL},;
{'CT2_HP' ,'' , NIL},;
{'CT2_CONVER' ,'11' , NIL},;
{'CT2_HIST' ,'MSEXECCT2LINHA2' , NIL} }

aAdd(aItens, aItem1)
aAdd(aItens, aItem2) 

MSExecAuto({|x, y,z| CTBA102(x,y,z)}, aCab ,aItens, 3)

If lMsErroAuto
lMsErroAuto := .F.
MsgAlert("ERRO Lançamento" , "Teste Carga CT2")
mostraErro()
Exit
Endif
RestArea(aArea)

RESET ENVIRONMENT

Return

Alteração:

              {'CT2_CREDIT'      ,'201010100'   , NIL},;
                   {'CT2_VALOR'      , 3000          , NIL},;
                   {'CT2_ORIGEM'     ,'MSEXECAUT'    , NIL},;
                   {'CT2_HP'           ,''           , NIL},;
                   {'CT2_CONVER'    ,'11'            , NIL},;
                   {'CT2_HIST'       ,'MSEXECCT2'    , NIL} } )         
 
    MSExecAuto({|x, y,z| CTBA102(x,y,z)}, aCab ,aItens, 3)
 
    If lMsErroAuto
        lMsErroAuto := .F.
        MostraErro()
    Endif
    
RestArea(aArea)

 
Return


Inclusão com Mais de um Lançamento :


Bloco de código
languagepy
themeMidnight
titleMyCTBA102Inc()
collapsetrue
#INCLUDE "PROTHEUS.CH"
 
//-------------------------------------------------------------------
/*/{Protheus.doc} MyCTBA102Inc   
  
 Inclusão de Lançamento Automático CTBA102
  
@author Totvs
@since 23/06/2022
@version 2.0
  
/*/
//-------------------------------------------------------------------

User Function MyCTBA102Inc()


Local aArea  := GetArea()
Local aCab   := {}
Local aItens := {}
Local nLinha := 2
Local nX     := 0
 
Private lMsErroAuto := .F.
Private lMsHelpAuto := .T.
Private CTF_LOCK    := 0
Private lSubLote    := .T.
 

    RpcSetType(3)
    RpcSetEnv( 'T1', 'D MG 01 ',,,'CTB')

    aAdd(aCab, {'DDATALANC' ,dDataBase ,NIL} )
    aAdd(aCab, {'CLOTE' ,'333333' ,NIL} )
    aAdd(aCab, {'CSUBLOTE' ,'001' ,NIL} )
    aAdd(aCab, {'CPADRAO' ,'' ,NIL} )
    aAdd(aCab, {'NTOTINF' ,0 ,NIL} )
    aAdd(aCab, {'NTOTINFLOT' ,0 ,NIL} )

    For nX := 1 To nLinha
        aAdd(aItens,  {;
            {'CT2_FILIAL' , xFilial('CT2')                       , NIL},;
            {'CT2_LINHA'  , StrZero(nX,3)                        , NIL},;
            {'CT2_MOEDLC' ,'01'                                  , NIL},;
            {'CT2_DC'     ,'3'                                   , NIL},;
            {'CT2_DEBITO' ,'101010100'                           , NIL},;
            {'CT2_CREDIT' ,'201010100'                           , NIL},;
            {'CT2_VALOR'  , 3000                                 , NIL},;
            {'CT2_ORIGEM' ,'MSEXECAUT'                           , NIL},;
            {'CT2_HP'     ,''                                    , NIL},;
            {'CT2_CONVER' ,'11'                                  , NIL},;
            {'CT2_HIST'   ,'MSEXECCT LANCAMENTO '+cValtoChar(nX) , NIL} })
    Next nX
 
    MSExecAuto
Bloco de código
languagepy
themeMidnight
titlemyctba102Alt
linenumberstrue
collapsetrue
#INCLUDE "PROTHEUS.CH"

//-------------------------------------------------------------------
/*/{Protheus.doc} MyCTBA102Alt    
 Inclusão de Lançamento Automático CTBA102

@author Totvs
@since 29/11/2013
@version 1.0
/*/
//-------------------------------------------------------------------

User Function MyCTBA102Alt()

Local nX
Local aArea         := GetArea()
Local nDoc            := 1
Local lRet            := .T.
Local aCab            := {}
Local aItens        := {}
Local aLinha         := {}
Local dDataLanc     := ctod("28/11/2013")  
Local nLinha        := '001'


Private lMsErroAuto     := .F.
Private lMsHelpAuto     := .T.
Private CTF_LOCK        := 0
Private lSubLote         := .T.

PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01 " MODULO "CTB" TABLES "CT2"

	aCab     := {}
    aItens     := {}
    aLinha := {}

    aAdd(aCab,  {'DDATALANC'     ,dDataBase        ,NIL} )
    aAdd(aCab,  {'CLOTE'         ,'333333'         ,NIL} )
    aAdd(aCab,  {'CSUBLOTE'         ,'001'         ,NIL} )
    aAdd(aCab,  {'CDOC'             ,'000001'         ,NIL} )
    aAdd(aCab,  {'CPADRAO'         ,''             ,NIL} )
    aAdd(aCab,  {'NTOTINF'         ,0                 ,NIL} )
    aAdd(aCab,  {'NTOTINFLOT'     ,0                 ,NIL} )

   

    aAdd(aItens,{      {'CT2_FILIAL'      ,'0101   '           , NIL},;
                       {'CT2_LINHA'      , nLinha              , NIL},;
                       {'CT2_MOEDLC'      ,'01'               , NIL},;
                       {'CT2_DC'          ,'3'               , NIL},;
                       {'CT2_DEBITO'      ,'101010100'         , NIL},;
                       {'CT2_CREDIT'      ,'201010100'         , NIL},;
                       {'CT2_VALOR'      , 6000              , NIL},;
                       {'CT2_ORIGEM'     ,'MSEXECAUT'        , NIL},;
                       {'CT2_HP'          ,''                   , NIL},;
                       {'CT2_EMPORI'     ,'01'                 , NIL},;
                       {'CT2_FILORI'      ,'0101001'            , NIL},;                       
                       {'CT2_HIST'       ,'MSEXECCT2-1'    , NIL},;
                       {'LINPOS'            ,'CT2_LINHA'        ,nLinha}})  
                   

    MSExecAuto({|x, y,z| CTBA102(x,y,z)}, aCab ,aItens, 43)



    If    
    If lMsErroAuto
        lMsErroAuto        lMsErroAuto := .F.
         MsgAlert("ERRO Lançamento" , "Teste Carga CT2"MostraErro()
          ExitEndIf
    Endif

RestArea(aArea)
RESET ENVIRONMENT
Return

 

...



03TABELAS UTILIZADAS

  • CT2- Lançamentos Contábeis

...