EXECAUTO MATA094 - Liberação de Documentos (MATA094)

Produto:

Microsiga Protheus 

Versões:

A partir da Versão 12

Ocorrência:

Rotina Automática - MATA094 (Execauto)

Ambiente:

SIGACOM - Compras

Descrição:

Rotina automática no modelo MVC 

Passo a passo:

#INCLUDE 'RWMAKE.ch'
#INCLUDE 'TBICONN.ch'
#INCLUDE 'Protheus.ch'
#INCLUDE 'FWMVCDef.ch'


User Function Myexec094()
Local oModel094 := Nil
Local cNum := "PMSA02"
Local cTipo := "PC"
Local cAprov := "000003"
Local nLenSCR := 0
Local lErroAuto := .F.


PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01" USER "Administrador" PASSWORD "*" MODULO "COM"


nLenSCR := TamSX3("CR_NUM")[1]
DbSelectArea("SCR")
SCR->(DbSetOrder(3))
If SCR->(DbSeek(xFilial("SCR")+cTipo+Padr(cNum, nLenSCR)+cAprov))

   //-- Seta operação de aprovação de documentos
   A094SetOp( '001' )


   //Pegando o modelo de dados, setando a operação de aprovação
   oModel094 := FWLoadModel('MATA094')
   oModel094:SetOperation( MODEL_OPERATION_UPDATE )
   oModel094:Activate()

   //Se conseguir validar as informações
   If oModel094:VldData()
      oModel094:CommitData()
      lErroAuto := .T.
   EndIf

   If !lErroAuto.
      //Busca o Erro do Modelo de Dados
     aErro := oModel094:GetErrorMessage()
     
     //Monta o Texto que será mostrado na tela
     AutoGrLog("Id do formulário de origem:" + ' [' + AllToChar(aErro[01]) + ']')
     AutoGrLog("Id do campo de origem: "      + ' [' + AllToChar(aErro[02]) + ']')
     AutoGrLog("Id do formulário de erro: "     + ' [' + AllToChar(aErro[03]) + ']')
     AutoGrLog("Id do campo de erro: "           + ' [' + AllToChar(aErro[04]) + ']')
     AutoGrLog("Id do erro: "                            + ' [' + AllToChar(aErro[05]) + ']')
     AutoGrLog("Mensagem do erro: "             + ' [' + AllToChar(aErro[06]) + ']')
     AutoGrLog("Mensagem da solução:"         + ' [' + AllToChar(aErro[07]) + ']')
     AutoGrLog("Valor atribuído: "                    + ' [' + AllToChar(aErro[08]) + ']')
     AutoGrLog("Valor anterior: "                      + ' [' + AllToChar(aErro[09]) + ']')

     //Mostra a mensagem de Erro
     MostraErro()
   EndIf
EndIf


//Desativa o modelo de dados
oModel094:DeActivate()

return


Observação:Para maiores informações consultar as informações contidas no documento "ADVPL utilizando MVC"