top of page

EXECAUTO MATA241 - ESTORNO

Dúvida

Qual o exemplo de ExecAuto utilizado para executar automaticamente a rotina MATA241 com a opção de estorno?

#INCLUDE "TOTVS.CH"
#INCLUDE "TBICONN.CH"

function U_TMATA241()
    local _aCab1    := {}
    local _aItem    := {}
    local _atotitem :={}
    local cLocal    :="01"
    local cCodProd  :="000000000000002"
    local cNumSeq   :="000038"
    private lMsHelpAuto := .t. // se .t. direciona as mensagens de help
    private lMsErroAuto := .f. //necessario a criacao
    private _acod:={"1","MP1"}

    RpcSetEnv("99","01","Administrador","","EST","MATA241",{"SD3"})

    SD3->(DbgoTop())
    SD3->(DbSetOrder(3))//D3_FILIAL, D3_COD, D3_LOCAL, D3_NUMSEQ, 
    IF!SD3->(DbSeek(xFilial("SD3");
            + PadR(cCodProd ,TamSx3("D3_COD")[1]);
            + PadR(cLocal   ,TamSx3("D3_LOCAL")[1]);
            + PadR(cNumSeq  ,TamSx3("D3_NUMSEQ")[1])))
        fwAlertInfo("Registro não encontrado")
        return .F.
    EndIf

    _aCab1 := { {"D3_TM"        ,SD3->D3_TM     , nil},;
                {"D3_EMISSAO"   ,SD3->D3_EMISSAO, nil}}

    _aItem:={ {"D3_COD"     ,SD3->D3_COD        ,nil},;
              {"D3_UM"      ,SD3->D3_UM         ,nil},;
              {"D3_QUANT"   ,SD3->D3_QUANT      ,nil},;
              {"D3_LOCAL"   ,SD3->D3_LOCAL      ,nil},;
              {"D3_LOTECTL" ,SD3->D3_LOTECTL    ,nil}}
          
    aadd(_atotitem,_aitem)

    MSExecAuto({|x,y,z| MATA241(x,y,z)},_aCab1,_atotitem,6)

    If lMsErroAuto
        mostraErro()
        return .F.
    else
        fwAlertSuccess("Sucesso!")
    endIf

  RpcClearEnv()

return .T.
778 visualizações0 comentário
bottom of page