Tenho uma situação no sistema em que preciso gerar uma planilha Excel. O problema é que, mesmo executando os comandos de liberação do objeto, o Excel continua em execução em segundo plano.
Alguém tem uma dica de como fazer?
Meu código está assim:
FUNCTION gerEnvXMLExcel()
#DEFINE AUT "Autorizadas"
#DEFINE CAN "Canceladas"
#DEFINE AAU "Aguardando Autorização"
#DEFINE INU "Inutilizadas"
#DEFINE DEN "Denegadas"
#DEFINE ENT "Notas de Entradas"
#DEFINE OUT "Outras"
TRY
oExcel := CreateObject( "Excel.Application" )
CATCH
Msginfo("Falha na criação do arquivo excel. Favor verificar se o excel está instalado!",'Atenção')
Return .F.
END
oExcel:Visible := .F.
oExcel:DisplayAlerts := .F.
oExcel:WorkBooks:Add()
// Cria uma aba para cada tipo de documento
oExcel:Sheets:Add()
oSheet := oExcel:ActiveSheet
oSheet:Name := OUT
oExcel:Sheets(OUT):Tab:Color := 0xFF00FF && Magenta
oExcel:Sheets(OUT):Select()
MontaCabecalho("RELAÇÃO DE OUTROS TIPOS DE NOTAS NO PERÍODO: "+DTOC(pDtInicio)+' A '+DTOC(pDtFim))
...
...
...
oExcel:WorkBooks:Close()
oExcel:Quit()
oExcel := nil // Libera o Excel
Release oExcel
Mesmo executando o método Quit(), atribuindo nil e executando o Release no objeto, o Excel continua em execução.
xHarbour 1.2.3 + HWGUI