FWMsPrinter na cloud

um problema chato com a classe [FWMsPrinter], nao estou conseguindo gerar um pdf no servidor (cloud) ja tentei de todas as formas mas nao rola
o trecho abaixo , quando chego no oDanfe:Print() da a mensagem “the second parameter of function cpys2t must contain the destination driver letter” se eu coloco c:\temp no lugar de \nota_email\ nao da erro, é como se o FWMSPrinter nao estivesse conseguindo gerar no cloud. mas os parametros da FWMSPrinter parecem estar ok para gerar no server

    cPasta := "\nota_email\"
    oDanfe    := FWMSPrinter():New(cArquivo, IMP_PDF, .F., , .T.)


	//Propriedades da DANFE
	oDanfe:SetResolution(78)
	oDanfe:SetPortrait()
	oDanfe:SetPaperSize(DMPAPER_A4)
	oDanfe:SetMargin(60, 60, 60, 60)


	//Força a impressão em PDF
	oDanfe:nDevice  := 6
	oDanfe:cPathPDF := cPasta
	//oDanfe:cPathPDF := "c:\temp\"
	oDanfe:lServer  := .t.
	oDanfe:lViewPDF := lImpTela

	//Variáveis obrigatórias da DANFE (pode colocar outras abaixo)
	PixelX    := oDanfe:nLogPixelX()
	PixelY    := oDanfe:nLogPixelY()
	nConsNeg  := 0.4
	nConsTex  := 0.5
	oRetNF    := Nil
	nColAux   := 0
	_nTpFiltro := 0


	//Chamando a impressão da danfe no RDMAKE
	//RPTStatus( {|lEnd| U_DANFEProc(@oDanfe, @lEnd, cIDEnt, Nil, Nil, , )}, "Gerando DANFE..." )
	U_DANFEProc(@oDanfe, @lEnd, cIDEnt, Nil, Nil, , )

	If lImpTela
		oDanfe:Preview()//Visualiza antes de imprimir
	Else			
		oDanfe:Print()
	
	EndIf

EndIf

RestArea(aArea)

Return

3 curtidas

Testa se existe o Printe.exe no servidor, usando o comando PrinterVersion():fromServer() ele deve retornar a versão do Printer.exe, se retornar 0.0.0 significa que o arquivo não existe então ele não vai conseguir gerar no servidor porque esse binário está ausente.

3 curtidas

existe, lembrando que isso é totvscloud()

PrinterVersion():fromServer()
“2.2.4”

é um misterio…

2 curtidas

Nao leva a mau nao mas ficou muito tipo texto de ChatGPT

descobri o problema, na verdade voce tem que usar os parametros cPathInServer e cPathPDF com o mesmo diretorio
cPathInServer := ‘notas_email’

oPrinter:= FWMsPrinter(): New ( < cFilePrintert >, [ nDevice], [ lAdjustToLegacy], [ cPathInServer],…)

e tambem oPrinter:cPathPDF := ‘notas_email’

3 curtidas