Bom dia,
Tenho uma rotina que gera um arquivo texto, usamos a função fWrite para gerar esse arquivo.
Ocorre que criamos um job para executar automaticamente esse rotina, só que no momento da execução ocorre o erro:
TOTVS Build 7.00.131227A-20180727 NG
THREAD ERROR ([19876], VITALHML2AGENT01, THIS) 18/11/2020 18:00:34
invalid handle used in file D:\bamboo-agent-5.7.2\xml-data\build-dir\TP11-BUILDV2APPSRV-TEC11WIN32RPO32\advtec9_tt11\lib_base\diskman.cpp at line 266
on CABCXA(VTCADCXA.PRW) 18/11/2020 17:03:56 line : 214
Na linha 214 a 218 do fonte temos o seguinte:
If fWrite(nHdl,cLin,Len(cLin)) != Len(cLin)
If !MsgAlert("Ocorreu um erro na gravacao do arquivo. Continua?","Atencao!")
Return
Endif
Endif
Verifique se o arquivo foi criado corretamente (nHdl diferente de -1), pois pode ser algum problema quanto ao caminho. Exemplos: inexistente, sem permissão, com caracteres especiais, etc.
Alguns diretórios possuem comportamento diferente via SmartClient e via Job. Uma boa forma de testar esse comportamento depurando é utilizar a função StartJob.
Além disso, caso estiver utilizando job, não é recomendável a utilização de funções de exibição de mensagens como MsgAlert, MsgStop, etc.
No caso do seu fonte você criou uma condição com a função MsgAlert, mas essa função possui retorno nulo, podendo ocasionar inconsistências na execução. O correto nessa situação, se executado fora de Job, seria um MsgYesNo/MsgNoYes.