Se alguma pergunta ou resposta lhe foi útil, não deixe de dar seu voto positivo!

FWMSPRINTER - Gerar PDF via Job.

Boa Tarde. Estou tendo dificuldades ao tentar gerar um relatório em PDF sem interface via Job. Por mais que eu passe o RootPath como local de geração do arquivo em PDF continua aparecendo a mensagem "Caminho de destino do arquivo .Rel não esta dentro do RootPath do Protheus Server. Processo ignorado. NEW - FWMSPRINTER.PRW(410) ". Alguem consegue me ajudar. Vou passar os trechos de como estou tentando fazer.

chamo a função para impressão/geração do arquivo. lRetImp := StartJob('U_GLB2477', GetEnvServer(), .T.,{ _cNumSol,.T.,_cEmp,_cFil }) isso é chamado em um fonte diferente.

aqui vem a execução da função. User Function GLB2477(aParams) Local lAdjustToLegacy := .F. Local lDisableSetup := .T. Local oPrinter Local cRootPath := "" Local cLocal := "" Local cFilePrint := "" Local FileName := "" Local cBMP := "" Local aDadBcos Local aAllUsers := {} Local nPosUsr := 0 Local _cSolicit := "" Local aRet := {} Local _cNumSol := aParams[1] Local lAuto := aParams[2] Local _cEmp := aParams[3] Local _cFil := aParams[4]

If lAuto == .T. //RpcSetType(3) //RpcSetEnv( cEmp, _cFil,,, "FIN" ) WFPrepEnv( _cEmp, _cFil, , , "FIN") ENDIF IF lAuto == .T. cRootPath := GetSrvProfString ("ROOTPATH","") cLocal := cRootPath+"\solpa\" ELSE cRootPath := GetSrvProfString ("ROOTPATH","") cLocal := cRootPath+"\solpa\" ENDIF IF lAuto == .T. FileName := "PA"+ZBK->ZBK_FILIAL+_cNumSol+".PD" oPrinter := FWMSPrinter():New(FileName, 6, lAdjustToLegacy,cLocal, lDisableSetup, , , , , , .F., ) oPrinter:lInJob := .T. oPrinter:cPathPDF:= cLocal //oPrinter:cPathPrint := cLocal ELSE FileName := "PA"+ZBK->ZBKFILIAL+_cNumSol+".PD" oPrinter := FWMSPrinter():New(FileName, IMP_PDF, lAdjustToLegacy,cLocal, lDisableSetup, , , , , , .F., ) oPrinter:cPathPDF:= cLocal ENDIF

ai quando ele vai executar a função oPrinter := FWMSPrinter():New(FileName, 6, lAdjustToLegacy,cLocal, lDisableSetup, , , , , , .F., ) que ele mostra a mensagem que não esta no RootPath.

Se eu executo via menu entrando no sistema selecionando a empresa e fazendo o processo via menu funciona corretamente. Porem fazendo via Job não consegui descobrir o pq.

compartilhar
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do TOTVS DevForum!

1 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags fwmsprinter ou faça a sua própria pergunta.