Ir para conteúdo
  • Cadastre-se

dev botao

Recuperar XML junto ao SEFAZ


amaurileme
  • Este tópico foi criado há 3669 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

a unica coisa que uso é 

não lembro qual esta funcionando. testa ai:
function DownloadFile(Source, Dest: string): Boolean;
begin
  try
  Result:= UrlDownloadToFile(nil, PChar(source),PChar(Dest), 0, nil) = 0;
  except
  Result:= False;
  end;
end;
function TfrmPrincipal.DownloadFile(SourceFile, DestFile: string): Boolean;
const BufferSize = 1024;
var
  hSession, hURL: HInternet;
  Buffer: array[1..BufferSize] of Byte;
  BufferLen: DWORD;
  f: File;
  sAppName: string;
begin
 sAppName := ExtractFileName(Application.ExeName);
 hSession := InternetOpen(PChar(sAppName),INTERNET_OPEN_TYPE_PRECONFIG,nil, nil, 0);
 try
   hURL := InternetOpenURL(hSession,PChar(SourceFile),nil,0,0,0);
   try
     AssignFile(f, DestFile);
     Rewrite(f,1);
     repeat
       InternetReadFile(hURL, @Buffer,SizeOf(Buffer), BufferLen);
       BlockWrite(f, Buffer, BufferLen)
     until BufferLen = 0;
     CloseFile(f);
     Result := True;
   finally
     InternetCloseHandle(hURL)
   end
 finally
   InternetCloseHandle(hSession)
 end;
end;

no evento OnFileDownload do TEmbeddedWB

 

function TfrmPrincipal.WebBrowser1FileDownload(pmk: IMoniker;
  pbc: IBindCtx; dwBindVerb, grfBINDF: Cardinal; pBindInfo: PBindInfo;
  pszHeaders, pszRedir: PWideChar; uiCP: Cardinal): HRESULT;
begin
if DownloadFile (pszRedir,'C:\teste.xml') then
 Begin
 ShowMessage('Download Concluído.');
 End;
end;
 
pelo menos na minha aplicação não pergunta onde vai salvar.
Editado por datilas
Link para o comentário
Compartilhar em outros sites

 

a unica coisa que uso é 

não lembro qual esta funcionando. testa ai:
function DownloadFile(Source, Dest: string): Boolean;
begin
  try
  Result:= UrlDownloadToFile(nil, PChar(source),PChar(Dest), 0, nil) = 0;
  except
  Result:= False;
  end;
end;
function TfrmPrincipal.DownloadFile(SourceFile, DestFile: string): Boolean;
const BufferSize = 1024;
var
  hSession, hURL: HInternet;
  Buffer: array[1..BufferSize] of Byte;
  BufferLen: DWORD;
  f: File;
  sAppName: string;
begin
 sAppName := ExtractFileName(Application.ExeName);
 hSession := InternetOpen(PChar(sAppName),INTERNET_OPEN_TYPE_PRECONFIG,nil, nil, 0);
 try
   hURL := InternetOpenURL(hSession,PChar(SourceFile),nil,0,0,0);
   try
     AssignFile(f, DestFile);
     Rewrite(f,1);
     repeat
       InternetReadFile(hURL, @Buffer,SizeOf(Buffer), BufferLen);
       BlockWrite(f, Buffer, BufferLen)
     until BufferLen = 0;
     CloseFile(f);
     Result := True;
   finally
     InternetCloseHandle(hURL)
   end
 finally
   InternetCloseHandle(hSession)
 end;
end;

no evento OnFileDownload do TEmbeddedWB

 

function TfrmPrincipal.WebBrowser1FileDownload(pmk: IMoniker;
  pbc: IBindCtx; dwBindVerb, grfBINDF: Cardinal; pBindInfo: PBindInfo;
  pszHeaders, pszRedir: PWideChar; uiCP: Cardinal): HRESULT;
begin
if DownloadFile (pszRedir,'C:\teste.xml') then
 Begin
 ShowMessage('Download Concluído.');
 End;
end;
 
pelo menos na minha aplicação não pergunta onde vai salvar.

 

não abre a caixa de mensagem se quer salvar ou abrir ou cancelar ? aquela antiga do internet explorer 

Link para o comentário
Compartilhar em outros sites

 

a unica coisa que uso é 

não lembro qual esta funcionando. testa ai:
function DownloadFile(Source, Dest: string): Boolean;
begin
  try
  Result:= UrlDownloadToFile(nil, PChar(source),PChar(Dest), 0, nil) = 0;
  except
  Result:= False;
  end;
end;
function TfrmPrincipal.DownloadFile(SourceFile, DestFile: string): Boolean;
const BufferSize = 1024;
var
  hSession, hURL: HInternet;
  Buffer: array[1..BufferSize] of Byte;
  BufferLen: DWORD;
  f: File;
  sAppName: string;
begin
 sAppName := ExtractFileName(Application.ExeName);
 hSession := InternetOpen(PChar(sAppName),INTERNET_OPEN_TYPE_PRECONFIG,nil, nil, 0);
 try
   hURL := InternetOpenURL(hSession,PChar(SourceFile),nil,0,0,0);
   try
     AssignFile(f, DestFile);
     Rewrite(f,1);
     repeat
       InternetReadFile(hURL, @Buffer,SizeOf(Buffer), BufferLen);
       BlockWrite(f, Buffer, BufferLen)
     until BufferLen = 0;
     CloseFile(f);
     Result := True;
   finally
     InternetCloseHandle(hURL)
   end
 finally
   InternetCloseHandle(hSession)
 end;
end;

no evento OnFileDownload do TEmbeddedWB

 

function TfrmPrincipal.WebBrowser1FileDownload(pmk: IMoniker;
  pbc: IBindCtx; dwBindVerb, grfBINDF: Cardinal; pBindInfo: PBindInfo;
  pszHeaders, pszRedir: PWideChar; uiCP: Cardinal): HRESULT;
begin
if DownloadFile (pszRedir,'C:\teste.xml') then
 Begin
 ShowMessage('Download Concluído.');
 End;
end;
 
pelo menos na minha aplicação não pergunta onde vai salvar.

 

cara to usando o seu código e to recebendo esse ero 

 

---------------------------
Debugger Exception Notification
---------------------------
Project Project1.exe raised exception class EInOutError with message 'File access denied'.
---------------------------
Break   Continue   Help   
---------------------------
Link para o comentário
Compartilhar em outros sites

 

cara to usando o seu código e to recebendo esse ero 

 

---------------------------
Debugger Exception Notification
---------------------------
Project Project1.exe raised exception class EInOutError with message 'File access denied'.
---------------------------
Break   Continue   Help   
---------------------------

 

qual delphi vc ta usando?

Link para o comentário
Compartilhar em outros sites

eu to usando o delphi xe2 

e tipo no meu aparece aquela mensagem ali que precisa ter um certificado de cliente depois ainda aparece a tela de escolher o certificado e depois pra conceder permissão e só depois da o erro 

eu acho que o erro deve ser de permisão no windows,

eu uso o delphi 7 na minha aplicação esta rodando normal,

sinto muito mais não tenho como testar no xe2

Editado por datilas
Link para o comentário
Compartilhar em outros sites

eu acho que o erro deve ser de permisão no windows,

eu uso o delphi 7 na minha aplicação esta rodando normal,

sinto muito mais não tenho como testar no xe2

magina sem problemas vou fazer alguns testes aqui, pq o meu usuario é limitado pode ser por isso tbm apesar de eu ja ter alterado o caminho do arquivo que vai ser salvo, mais vamos ver se eu achar uma solução eu posto aqui pra galera curtir

Link para o comentário
Compartilhar em outros sites

eu acho que o erro deve ser de permisão no windows,

eu uso o delphi 7 na minha aplicação esta rodando normal,

sinto muito mais não tenho como testar no xe2

blz era aquilo mesmo que vc falou na verdade era eu quem tava errando uma coisinha ali adaptativa vlw, mais agora eu queria saber sobre o certificado ele continua aparecendo pra escolher, na sua maquina só tem um certificado instalado ? 

Link para o comentário
Compartilhar em outros sites

blz era aquilo mesmo que vc falou na verdade era eu quem tava errando uma coisinha ali adaptativa vlw, mais agora eu queria saber sobre o certificado ele continua aparecendo pra escolher, na sua maquina só tem um certificado instalado ? 

sim a messagem do certificado vai sempre aparecer, não consegui passar por cima dela,

se vc conseguir posta ai pra gente

Link para o comentário
Compartilhar em outros sites

  • 3 meses depois ...
  • Consultores

Bom dia Yan,

 

Primeiramente, por favor não escreva tudo em caixa alta, da impressão que você esta gritando.

 

Segundo, no Portal Nacional da NF-e existe uma opção para que você possa realizar o Download do XML.

 

Terceiro, o componente ACBrNFe, possui uma funcionalidade para realizar o Download via WebServices, neste caso realize pesquisas aqui no fórum para obter mais informações e é claro procure sempre ter em mãos os Manuais e Notas Técnicas disponibilizadas no Portal Nacional da NF-e.

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

BOM DIA!!

 

GOSTARIA DE SABER ONDE POSSO ACHA

RECUPERA XML COLOCANDO CHAVE DE ACESSO?

caso vc queira fazer o download via WebBrowser leia os posts anteriores, faça o download do via svn : svn://svn.code.sf.net/p/acbr/code e na pasta

"tag\projetos" esta o RecuperaXml, mas leia os post anteriores pois vc vai ter que modificar algumas coisas.

Editado por datilas
Link para o comentário
Compartilhar em outros sites

  • 2 meses depois ...

Pois é, não estou conseguindo também, 

não estou mais achando no ACBR a pasta RecuperXML alguém sabe me falar se foi descontinuado ou mudou a forma de fazer o Download ?

 

Grato

o recuperaxml foi descontinua a muito tempo, os usuários estão usando por sua conta e risco, mas se vc ler os post anteriores, tem como baixar o xml usando o certificado (eu uso assim e ainda esta funcionando), mas lembrando que o projeto foi descontinuado

Link para o comentário
Compartilhar em outros sites

vou postar aqui o arquivo com algumas alterações pelo menos ja está funcionando sem loops, ainda falta corrigir a parte onde capta os dados do protocolo, no restante tudo normal.

 

att. Solivan

ACBrHTMLtoXML.pas

Editado por Solivan

Sistema de Automação Comercial para diversos segmentos
NF-e, NFC-e, SPED Fiscal - www.arenasoft.com.br

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 3669 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.