baixar PDF

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

baixar PDF

Mensagem por JoséQuintas »

Utilizo win_OleCreateObject( "MXSML2.ServerXMLHTTP" ).
Funciona pra muita coisa, mas não funciona pra baixar PDF do meu servidor.
Meu servidor é acessado por http://servidor:3380/endereco/arquivopdf

Já tentei com hbtip e nada.
Se digitar o endereço no explorer abre normalmente.

Lembro de duas outras opções, mas que não tenho mais os fontes:
- win_OleCreateObject( "InternetExplorer.Application" )
- API do windows de download

Alguém tem por aí?
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

baixar PDF

Mensagem por JoséQuintas »

Resolvido: achei meu erro e a api também.
Apesar de usar oSoap:Open(), não se deve usar oSoap:Close()

e pela API ficou assim:

Código: Selecionar todos

FUNCTION wapi_UrlDownloadToFile( cUrlFile, cLocalFile )
   LOCAL nErrorCode
   nErrorCode := CallDll32( "URLDownloadToFileA", "urlmon.dll", 0, cUrlFile, cLocalFile, 0, 0 )
   RETURN nErrorCode == 0
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
malcarli
Usuário Nível 3
Usuário Nível 3
Mensagens: 239
Registrado em: 20 Ago 2015 18:14
Localização: marilia/sp

baixar PDF

Mensagem por malcarli »

Bom dia Mestre, preciso baixar pdf de nfse. Como conseguiu fazer isso?


o endereço de onde estou tentando é esse:

https://marilia.sigiss.com.br/nfe_ver.p ... amp;nfe=14


Marcelo A. L. Carli
Marília/SP
Capital Nacional do Alimento ®
https://malc-informatica.ueniweb.com
Insta: @malcarli25
Email / Skype: malcarli@life.com.br
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

baixar PDF

Mensagem por JoséQuintas »

Nem sei se isso é possível.
NFSE não é igual NFE, acho que é livre.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

baixar PDF

Mensagem por sygecom »

JoséQuintas escreveu:Resolvido: achei meu erro e a api também.
Apesar de usar oSoap:Open(), não se deve usar oSoap:Close()

e pela API ficou assim:

Código: Selecionar todos

FUNCTION wapi_UrlDownloadToFile( cUrlFile, cLocalFile )
   LOCAL nErrorCode
   nErrorCode := CallDll32( "URLDownloadToFileA", "urlmon.dll", 0, cUrlFile, cLocalFile, 0, 0 )
   RETURN nErrorCode == 0
Bom isso, será que tem como colocar uma barra de progresso usando essa DLL ?
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

baixar PDF

Mensagem por JoséQuintas »

API windows pra baixar arquivo não é muito bom, pode gerar problemas quando o windows decide aproveitar cache.

Mas a resposta pra pergunta ficou aqui:

https://pctoledo.org/forum/viewto ... 43&t=26878

Nota: a pergunta do pdf foi colocada em dois posts, o outro já estava com resposta.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
malcarli
Usuário Nível 3
Usuário Nível 3
Mensagens: 239
Registrado em: 20 Ago 2015 18:14
Localização: marilia/sp

baixar PDF

Mensagem por malcarli »

Bom dia mestre, não baixou o pdf, com esta rotina

O link do pdf:

Código: Selecionar todos

              DownloadTexto([https://marilia.sigiss.com.br/marilia/contribuinte/nfe/nfe_base.php?id=28227693&hash=VQ2DQQCN&nota=126&ccm=52267])
 
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

baixar PDF

Mensagem por JoséQuintas »

Lógico, parece PDF mas não é PDF.

baixou isto:
pref.png
fiz um chute..... usando esse outro endereço.... deu certo....

Código: Selecionar todos


PROCEDURE Main

   LOCAL cValue

   SetMode(25,80)
   CLS
   cValue := DownloadTexto([https://marilia.sigiss.com.br/marilia/contribuinte/nfe/nfe_ver.php?id=28227693&hash=VQ2DQQCN¬a=126&ccm=52267])
   hb_MemoWrit( "arquivo.pdf", cValue )

   RETURN

FUNCTION DownloadTexto( cUrl )

   LOCAL oSoap, cRetorno

   cRetorno := ""
   BEGIN SEQUENCE WITH __BreakBlock()
      oSoap := Win_OleCreateObject( "MSXML2.ServerXMLHTTP" )
      oSoap:Open( "GET", cUrl, .F.)
      oSoap:Send()
      cRetorno := oSoap:ResponseBody()
   END SEQUENCE

   RETURN cRetorno
nota.png
Coloquei no paint e apaguei dados particulares.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

baixar PDF

Mensagem por JoséQuintas »

Só comentário:

Site é igual computador pessoal, funciona a base de PATHs.

chamando nfe_ver.php, significa que isso está no PATH atual, que é o mesmo da URL.
Por isso repeti a URL, trocando só a última parte.

E não é que o chute funcionou, é essa parte que retorna o PDF pra ser mostrado como página, e baixando direto é o PDF.

Troquei nfe_base.php por nfe_ver.php

o resto da linha tem a ver com configurações para o iframe, uma espécie de janela dentro da página.
Não sei mexer com essas coisas, só conheço esse básico mesmo.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
malcarli
Usuário Nível 3
Usuário Nível 3
Mensagens: 239
Registrado em: 20 Ago 2015 18:14
Localização: marilia/sp

baixar PDF

Mensagem por malcarli »

Show mestre, funcionou perfeitamente. Nunca ia consegui sem sua ajuda. Obg
Responder