Jump to content
Fivewin Brasil

baixar xml com CHROME, FIREFOX


dorneles

Recommended Posts

Eu utilizo essa função para baixar o xml pelo INTERNET EXPLORE, tem como utilizar outro navegador?

STATIC FUNCTION BaixarXml(f_cChave)
////////////////////////////////////////////////////////////////////////////////
local oOle, oOleDoc := Array(2)
                         
Default f_cChave := ""

MsgWait( "Conectando ao Portal da SEFAZ...", ;
            "Aguarde... ", 2.0 )

TRY                                                   
    oOle:= CreateObject("InternetExplorer.Application")
    oOle:Visible   := .t. // Apresenta o Browser
    oOle:ToolBar   := .f. // Desativa a barra de ferramentas
    oOle:StatusBar := .F. // Desativa a barra de status
    oOle:MenuBar   := .f. // desativa a barra de menu
    
    oOle:Navigate2("http://www.nfe.fazenda.gov.br/portal/consulta.aspx?tipoConsulta=completa&tipoConteudo=XbSeqxE8pl8=")
    
    hWnd:= FindWindow(0,"Windows Internet Explorer")
    BringWindowToTop(hWnd)
    ShowWindow(hWnd, 3)
    
    WHILE oOle:Busy
    syswait(.5)
    END

CATCH

END

TRY
    oOle := oOle:Document()
    oOle:All:Item("ctl00$ContentPlaceHolder1$txtChaveAcessoCompleta",0):Value := AllTrim(f_cChave)
    oOle:All:Item("ctl00$ContentPlaceHolder1$txtCaptcha",0):Focus() 
CATCH

END
                               
oOle:=Nil

SysRefresh()

RETURN .T.

Link to comment
Share on other sites

  • 1 year later...

manifestando tenho o problema é q demora a sincronização no site do governo ou seja, manifesta como confirmação da operação e pra liberar o download demora de 30 segundos até uns 3 min e o cliente quer tudo na hora.

Tem sites como o FSIST q vc informa a chave e escolhe com certificado ai pede o certificado e já baixa o XML, queria algo assim.

Alguém sabe como proceder?

Link to comment
Share on other sites

  • 1 year later...

Tenta essa que eu adaptei e uso a muito tempo com sucesso: (perdão, agora que vi que vc precisa atualizar parametros, então não vai servir, essa só baixa se vc passar tudo via link, vou deixar apenas pra histórico pois pode ajudar alguem)

 

Function Emt_GetHtml(cLink)
Local oOle
Local cHtml := ""
 
Try
   oOle := CreateObject"Microsoft.XMLHTTP" )
   oOle:Open"GET", cLink, .f. )
   oOle:Send()
   cHtml := oOle:ResponseBody
   oOle := nil
Catch
End
 
Return cHtml
Link to comment
Share on other sites

Pessoal, bom dia

no exemplo, acima do dorneles, com as devidas correções, é possível exibir a página contendo, as informações do xml.

Abaixo, podemos ver isso, agora só falta os comandos para poder pegar o texto da página, logo após a digitação do recaptcha.

 

 

 

#include "fivewin.ch"

FUNCTION MAIN()

A:=BaixarXml("cole aqui o chave da nfe a ser baixada")

RETURN .T.


STATIC FUNCTION BaixarXml(f_cChave)
////////////////////////////////////////////////////////////////////////////////
local oOle, oOleDoc := Array(2)
                        
Default f_cChave := ""


MsgWait( "Conectando ao Portal da SEFAZ...", ;
            "Aguarde... ", 2.0 )

TRY                                                  
    oOle:= CreateObject("InternetExplorer.Application")
    oOle:Visible   := .t. // Apresenta o Browser
    oOle:ToolBar   := .f. // Desativa a barra de ferramentas
    oOle:StatusBar := .F. // Desativa a barra de status
    oOle:MenuBar   := .f. // desativa a barra de menu
   
    oOle:Navigate2("http://www.nfe.fazenda.gov.br/portal/consultaResumo.aspx?tipoConteudo=d09fwabTnLk=")
   
    hWnd:= FindWindow(0,"Windows Internet Explorer")
    BringWindowToTop(hWnd)
    ShowWindow(hWnd, 3)
   
    WHILE oOle:Busy
    syswait(.5)
    END

CATCH

END

TRY
    oOle := oOle:Document()
    oOle:All:Item("ctl00$ContentPlaceHolder1$txtChaveAcessoResumo",0):Value:= f_cchave
    oOle:All:Item("ctl00$ContentPlaceHolder1$txtCaptcha",0):Focus()
CATCH
END
                              
oOle:=Nil

SysRefresh()

***

*** aqui deve entrar a rotina para ler a página com as informações do XML

***


RETURN .T.

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...