Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Propriedades de página

CONTENIDO

  1. Visión general
  2. Ejemplo de utilización
    1. Inclusión
    2. Inclusión con más de un asiento
    3. Modificación
  3. Tablas utilizadas


01. VISIÓN GENERAL

...

Informações
titleImportante

En la utilización de execAuto considere los siguientes critérios:

 - Pasar el campo CT2_CONVER como 15555, demás monedas se deben hacer por la inclusión de un nuevo aItens

 - Pasar el campo CT2_CRITER, a las otras monedas solamente incluye como conversión, no permitiendo la inclusión de CT2_VALOR en cero.

 - Para modificar el registro pase nuevamente el aCab

Inclusión:

Midnight
Bloco de código
languagepy
theme
Dica
titlemyctba102inc
linenumberstrue
collapsetrue
Importante

Para garantizar la grabación correcta de los campos Logs y Auditoría (CT2_USERGI y CT2_USERGA) al utilizarlos, esw necesario informar el Usuario y la Contraseña del Protheus durante la preparación del entorno, para saber más, acceda a:

Logs y Auditoría

RpcSetEnv

Prepare Environment


Inclusión:


Bloco de código
languagepy
themeMidnight
titlemyctba102inc
linenumberstrue
collapsetrue
#INCLUDE "PROTHEUS.CH"
 #INCLUDE "PROTHEUS.CH"

//-------------------------------------------------------------------
/*/{Protheus.doc} MyCTBA102Inc MyCTBA102Inc      
 
 Inclusão Inclusión de Lançamentoasiento Automáticoautomá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 := .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 := {}
    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,{  {'CT2_FILIAL'      ,'0101   '     , NIL},;
                  {}

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} )
 
    aAdd(aItens,{  {'CT2_FILIAL'      ,xFilial('CT2'), NIL},;
                   {'CT2_LINHA'          , nLinha        '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'    HP'           ,'11'         	'           , 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

Inclusión con más de un asiento :

Bloco de código
languagepy
themeMidnight
titleMyCTBA102Inc()
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 := {}


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} )

//lançamento 1
aAdd(aItens,  { {'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} } )

//lançamento 2
aAdd(aItens, { {'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} })

//adicionar ao array aItens a quantidade necessária de lançamentos que deseja efetuar

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

Modificación:

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, 4)



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

RestArea(aArea)
RESET ENVIRONMENT
Return

...

 {'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

Inclusión con más de un asiento :


Bloco de código
languagepy
themeMidnight
titleMyCTBA102Inc()
collapsetrue
#INCLUDE "PROTHEUS.CH"
 
//-------------------------------------------------------------------
/*/{Protheus.doc} MyCTBA102Inc   
  
 Inclusión de asiento 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({|x, y,z| CTBA102(x,y,z)}, aCab ,aItens, 3)
    
    If lMsErroAuto
        lMsErroAuto := .F.
        MostraErro()
    EndIf


RestArea(aArea)
 
Return 


03. TABLAS UTILIZADAS

  • CT2- Asientos contables