Produto: | Microsiga Protheus® |
Ocorrência: | Como incluir um registro na base de atendimento via execauto |
Ambiente: | Microsiga Protheus - SIGATEC - Gestão de Serviços |
Solução: | Está solução é uma explicação de como é criado um registro via execauto na base de atendimento |
Passo a passo: | Vamos criar um exemplo de execauto para a inclusão de um registro para a base de atendimento Exemplo de Uso #INCLUDE "PROTHEUS.CH" #INCLUDE "TOPCONN.CH" #INCLUDE "XMLXFUN.CH" #INCLUDE "TBICONN.CH" User Function MyTECA040() Local aCab040 := {} // Cabecalho do AA3 Local aItens040 := {} // Itens AA4 Local lRet := .T. Local nI Local aNrsSerie := {} // Array com o numero de serie para exclusao da base instalada Local nRegs := 0 Local nOpc := 3 //3-inclusão/5-Exclusão PRIVATE lMsErroAuto := .F. ConOut(Repl("-",80)) ConOut(PadC("Teste de Exclusao da Base Instalada",80)) PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01 " MODULO "TEC" TABLES "AA3","AA4" Aadd(aNrsSerie,"26122023-11 ") nRegs := Len(aNrsSerie) For nI := 1 to nRegs Aadd(aCab040, { "AA3_FILIAL" , "D MG " , NIL } ) Aadd(aCab040, { "AA3_CODCLI" , "000001" , NIL } ) Aadd(aCab040, { "AA3_LOJA" , "01" , NIL } ) Aadd(aCab040, { "AA3_CODPRO" , " COM00000000000000000000000011" , NIL } ) Aadd(aCab040, { "AA3_NUMSER" , aNrsSerie[nI] , NIL } ) Aadd(aCab040, { "AA3_DTVEN" , dDataBase , NIL } ) TECA040(,aCab040,aItens040,nOpc) If lMsErroAuto lRet := !lMsErroAuto ConOut("Inclusão/exclusão com sucesso! ") Else ConOut("Exclusao/Inclusão com sucesso! ") Endif aCab040 := {} Next RESET ENVIRONMENT Return lRet Veja que inciamos a Empresa e sua Filial, elas devem existir e o campo AA3_FILIAL deve ser preenchido com uma filial valida dentro da empresa incializada. Vamos executar o codigo através do VSCode. Veja que o registro foi criado normalmente. Agora vamos executar a exclusão do mesmo Exemplo de Uso #INCLUDE "PROTHEUS.CH" #INCLUDE "TOPCONN.CH" #INCLUDE "XMLXFUN.CH" #INCLUDE "TBICONN.CH" User Function MyTECA040() Local aCab040 := {} // Cabecalho do AA3 Local aItens040 := {} // Itens AA4 Local lRet := .T. Local nI Local aNrsSerie := {} // Array com o numero de serie para exclusao da base instalada Local nRegs := 0 Local nOpc := 5 //3-inclusão/5-Exclusão PRIVATE lMsErroAuto := .F. ConOut(Repl("-",80)) ConOut(PadC("Teste de Exclusao da Base Instalada",80)) PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01 " MODULO "TEC" TABLES "AA3","AA4" Aadd(aNrsSerie,"26122023-11 ") nRegs := Len(aNrsSerie) For nI := 1 to nRegs Aadd(aCab040, { "AA3_FILIAL" , "D MG " , NIL } ) Aadd(aCab040, { "AA3_CODCLI" , "000001" , NIL } ) Aadd(aCab040, { "AA3_LOJA" , "01" , NIL } ) Aadd(aCab040, { "AA3_CODPRO" , " COM00000000000000000000000011" , NIL } ) Aadd(aCab040, { "AA3_NUMSER" , aNrsSerie[nI] , NIL } ) Aadd(aCab040, { "AA3_DTVEN" , dDataBase , NIL } ) TECA040(,aCab040,aItens040,nOpc) If lMsErroAuto lRet := !lMsErroAuto ConOut("Inclusão/exclusão com sucesso! ") Else ConOut("Exclusao/Inclusão com sucesso! ") Endif aCab040 := {} Next RESET ENVIRONMENT Return lRet Importante Os dados enviados para exclusão devem existir, pois internamente é realizado um posicionamento no registro para a exclusão do mesmo |
Observações: |