SAOliveira Posted March 27, 2012 Report Share Posted March 27, 2012 local oOle, oOleDoc := Array(2) Default f_cChave := "" 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=") WHILE oOle:Busy syswait(.5) END oOle := oOle:Document() oOle:All:Item("ctl00$ContentPlaceHolder1$txtChaveAcessoCompleta",0):Value:=f_cChave oOle:All:Item("ctl00$ContentPlaceHolder1$txtCaptcha",0):Focus() oOle:=Nil SysRefresh() return .t.id=code>id=code>Estou testamto a rotina acima retirada aqui do forum,. Funciona e manda a chave, ficando só pra digitar o captcha. Mas o navegador não fica em primeiro plano (focu), insiste em ficar na barra do windows. Dimob / SPED(pis/cofins) ..:: Este post é uma opnião pessoal, NAO DEVE SER ENCARADO COMO VERDADE ABSOLUTA ::.. Editado por - S.A.Oliveira on 27/03/2012 14:55:09 Quote Link to comment Share on other sites More sharing options...
SAOliveira Posted March 27, 2012 Author Report Share Posted March 27, 2012 local oOle, oOleDoc := Array(2) Default f_cChave := "" 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=") WHILE oOle:Busy syswait(.5) END oOle := oOle:Document() oOle:All:Item("ctl00$ContentPlaceHolder1$txtChaveAcessoCompleta",0):Value:=f_cChave oOle:All:Item("ctl00$ContentPlaceHolder1$txtCaptcha",0):Focus() oOle:=Nil SysRefresh() return .t.id=code>id=code>Estou testamto a rotina acima retirada aqui do forum,. Funciona e manda a chave, ficando só pra digitar o captcha. Mas o navegador não fica em primeiro plano (focu), insiste em ficar na barra do windows. Dimob / SPED(pis/cofins) ..:: Este post é uma opnião pessoal, NAO DEVE SER ENCARADO COMO VERDADE ABSOLUTA ::.. Editado por - S.A.Oliveira on 27/03/2012 14:55:09 Quote Link to comment Share on other sites More sharing options...
rubensma Posted March 27, 2012 Report Share Posted March 27, 2012 Olá, bom-dia Essa função traz a calculadora para cima, modifique e tente ai, talvez funcione ********************** function calculadora() ********************** // funcao para abrir a calculadora apenas uma vez local hWnd if (hWnd:=SeekCalculadora()) == 0 WinExec( 'Calc.exe',SW_NORMAL) else BringWindowToTop(hWnd) // aqui traz para cima ShowWindow(hWnd,SW_RESTORE) endif return nil ********************************* static function SeekCalculadora() ********************************* local aCaptions:= {'Calc','Calculator','Calculadora'} local nPos, hWnd for nPos = 1 to len(aCaptions) if (hWnd:= FindWindow(0,aCaptions[nPos])) > 0 return hWnd endif next return hWnd Espero que ajude abraços Rubens Martins rumarti@gmail.com FWH 6.12 + xHARBOUR + Workshop Quote Link to comment Share on other sites More sharing options...
roberio Posted March 27, 2012 Report Share Posted March 27, 2012 juntando uma coisa com a outra, segue o codigo: Function NFe_ChecaPortal(f_cChave,f_nPortal) Local oOle, oOleDoc:=Array(2), hWnd, cUrl Default f_nPortal := 1, f_cChave := "" 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 If f_nPortal == 1 cUrl:="http://www.nfe.fazenda.gov.br/portal/consulta.aspx?tipoConsulta=completa&tipoConteudo=XbSeqxE8pl8=" Else cUrl:="http://nfe.fazenda.sp.gov.br/ConsultaNFe/consulta/publica/ConsultarNFe.aspx" EndIf oOle:Navigate2(cUrl) hWnd:= FindWindow(0,"Windows Internet Explorer") BringWindowToTop(hWnd) ShowWindow(hWnd, 3) WHILE oOle:Busy syswait(.5) END oOle := oOle:Document() If f_nPortal == 1 oOle:All:Item("ctl00$ContentPlaceHolder1$txtChaveAcessoCompleta",0):Value := f_cChave Else oOle:All:Item("ctl00$ContentMain$tbxIdNFe"):Value := f_cChave EndIf Return nil id=code>id=code> Quote Link to comment Share on other sites More sharing options...
toya Posted March 27, 2012 Report Share Posted March 27, 2012 Apenas a titulo de algo mais, podemos alterar: #define SW_RESTORE 9 local hWnd hWnd:=oOle:HWND BringWindowToTop(hWnd) // aqui traz para cima ShowWindow(hWnd, SW_RESTORE) id=code>id=code>toya Ahora en la version 6.0 toyasis@yahoo.com.br http://www.toyanet.com.br FWH 8.05+PellesC+xHarbour.org 1.1.0 Clippeiro por opção, Fivewiner por amor ao Clipper... AcbrMonitor, ACBrNfeMonitor.:. Quote Link to comment Share on other sites More sharing options...
toya Posted March 27, 2012 Report Share Posted March 27, 2012 Lusitanicamente estou utilizando assim: //////////////////////////////////////////////////////////////////////////////// // inserido/alterado por: #toya:27/03/2012:07:35 //////////////////////////////////////////////////////////////////////////////// function LerNFePortal(_cChave, _nPortal) local oWndAux private oOle, oOleDoc:=Array(2) DEFAULT _cChave := "" DEFAULT _nPortal:=1 DEFINE WINDOW oWndAux TITLE "iNFexHB - Consultar NFe Completa" ACTIVATE WINDOW oWndAux MAXIMIZED ON INIT LerNFePortalGet(oWndAux, _cChave, _nPortal) return .t. #define SW_RESTORE 9 //////////////////////////////////////////////////////////////////////////////// // inserido/alterado por: #toya:27/03/2012:10:19 //////////////////////////////////////////////////////////////////////////////// static function LerNFePortalGet(oWndAux, _cChave, _nPortal) local cUrl:="" local oDados, oOleDoc := Array(2) local hWnd 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:top:=GetSysMetrics(06)+GetSysMetrics(04) oOle:left:=GetSysMetrics(5) oOle:Width(oWndAux:nWidth - GetSysMetrics(5)*2) oOle:Height(oWndAux:nHeight - (oOle:top + GetSysMetrics(6)+10)) hWnd:=oOle:HWND BringWindowToTop(hWnd) ShowWindow(hWnd, SW_RESTORE) If _nPortal == 1 cUrl:="http://www.nfe.fazenda.gov.br/portal/consulta.aspx?tipoConsulta=completa&tipoConteudo=XbSeqxE8pl8=" Else cUrl:="http://nfe.fazenda.sp.gov.br/ConsultaNFe/consulta/publica/ConsultarNFe.aspx" // SAO PAULO EndIf oOle:Navigate2(cUrl) WHILE oOle:Busy syswait(.5) END oDados := oOle:Document() if _nPortal == 1 oDados:All:Item("ctl00$ContentPlaceHolder1$txtChaveAcessoCompleta",0):Value := _cChave oDados:All:Item("ctl00$ContentPlaceHolder1$txtCaptcha",0):Focus() else oDados:All:Item("ctl00$ContentMain$tbxIdNFe"):Value := _cChave oDados:All:Item("ctl00$ContentMain$tbxCaptcha",0):Focus() endif oDados:=Nil SysRefresh() return nil id=code>id=code>toya Ahora en la version 6.0 toyasis@yahoo.com.br http://www.toyanet.com.br FWH 8.05+PellesC+xHarbour.org 1.1.0 Clippeiro por opção, Fivewiner por amor ao Clipper... AcbrMonitor, ACBrNfeMonitor.:. Quote Link to comment Share on other sites More sharing options...
SAOliveira Posted March 27, 2012 Author Report Share Posted March 27, 2012 Motivo, muito lento o preechimento da chave. Como a chave já esta digitada, é mais rápido colar. Voltei a rotina que usava anteriormente: **----------------------------------------------------------** STATIC FUNCTION BaixarXml(Arg1) **----------------------------------------------------------** IF(Empty(Arg1)) Arg1:="oDlg" ENDIF IF(!IsInternet()) MsgInfo("Necessário conexão com internet."+CRLF+"Operação cancelada","Informação") RETURN(.f.) ENDIF PRIVATE oDlgIE, oActiveX//, cEvents:="" DEFINE DIALOG oDlgIE FROM 0,0 TO 700,1024 OF &(Arg1) PIXEL TITLE " ..:: Baixar XML Site Receita ::.." oDlgIE:lHelpIcon:=.f. oActiveX:=TActiveX():New( oDlgIE, "Shell.Explorer",0,0,512,350 ) oDlgIE:oClient:=oActiveX ACTIVATE DIALOG oDlgIE CENTER ON INIT(oActiveX:DO( "Navigate", "http://www.nfe.fazenda.gov.br/portal/consulta.aspx?tipoConsulta=completa&tipoConteudo=XbSeqxE8pl8=")) &(Arg1):SetFocus() RETURN(.t.)id=code>id=code>Obrigado a todos. Dimob / SPED(pis/cofins) ..:: Este post é uma opnião pessoal, NAO DEVE SER ENCARADO COMO VERDADE ABSOLUTA ::.. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.