Passo a passo: | Vamos criar um exemplo de execauto para a inclusão de um registro para a base de atendimento #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
#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 |
Os dados enviados para exclusão devem existir, pois internamente é realizado um posicionamento no registro para a exclusão do mesmo |
|