Boa tarde!
Estou usando o execauto da FINA050 para deletar alguns registros.. O problema é que as vezes ele simplesmente não deleta o registro e não volta nenhum erro.
Alguma idéia de como corrigir?
Segue o código:
Static Function FINA050EXC()
LOCAL aArray := {}
Local nY
Local lMsErroAuto := .F.
Local cErro := ""
if alltrim(XZZM->ZZM_CTRID) != alltrim(SE2->E2_XCTRID)
Return
Endif
//Estrutura para demais títulos
aArray :={ {"E2_FILIAL" ,SE2->E2_FILIAL,Nil},;
{"E2_PREFIXO" ,SE2->E2_PREFIXO,Nil},;
{"E2_NUM" ,SE2->E2_NUM,Nil},;
{"E2_PARCELA" ,SE2->E2_PARCELA,Nil},;
{"E2_TIPO" ,SE2->E2_TIPO,Nil},;
{"E2_NATUREZ" ,SE2->E2_NATUREZ,Nil}}
MsExecAuto( { |x,y,z| FINA050(x,y,z)}, aArray,, 5) // 3 - Inclusao, 4 - Alteração, 5 - Exclusão
//MSExecAuto({|x, y| FINA050(x, y)}, aArray, 5)
If lMsErroAuto
aLog := GetAutoGRLog()
For nY := 1 To Len(aLog)
If !Empty(cErro)
cErro += CRLF
EndIf
cErro += aLog[nY]
Next nY
Endif
Return cErro