anunes Posted February 13, 2009 Author Share Posted February 13, 2009 Please read the comments about Vista in the helpfile for _IECreate() - there are suggested workarounds for trouble caused by the UAC security measures instituted in Vista.DaleThanks Dale, i'll read this as soon as possible... Link to comment Share on other sites More sharing options...
lzamora Posted December 10, 2009 Share Posted December 10, 2009 (edited) expandcollapse popup#include <IE.au3> ;============================================================================================== ; ** --- CONEXÃO COM A BASE DE DADOS ---*** ;============================================================================================== $dbname="db.mdb" $adoCon = ObjCreate ("ADODB.Connection") $adoCon.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Comercial_QA\DataBase_COMERCIAL\BD_Cambio.mdb;Persist Security Info=False") $adoRs = ObjCreate ("ADODB.Recordset") $adoRs.CursorType = 1 $adoRs.LockType = 3 $adoRs.Open ("Select * from TB_Cambio_GeraBoleto", $adoCon) ;============================================================================================== ; ** --- Declaração das VARIAVEIS Usadas ---*** ;============================================================================================== With $adoRs If $adoRs.RecordCount <> 0 Then While Not $adoRs.EOF Dim $Nome_Cliente= $adoRs.Fields ("CMB_Nome").Value $ComboTipo= $adoRs.Fields ("CMB_Tipo").Value $ComboDivisao= $adoRs.Fields ("CMB_Divisao").Value ; $BuscaDivisao= $adoRs.Fields ("CMB_BuscaDivisao").Value $ValorCampoME= $adoRs.Fields ("CMB_ValorME").Value $ValorCampoMoeda= $adoRs.Fields ("CMB_Moeda").Value $ValorCampoMoedaDespesa= $adoRs.Fields ("CMB_Despesa").Value $ValorCampoDespesaLocal= $adoRs.Fields ("CMB_MoedaDespesa").Value $ValorTaxaCliente= $adoRs.Fields ("CMB_TXCliente").Value $ValorTaxaClienteTIR= $adoRs.Fields ("CMB_TXClienteTIR").Value $ValorTaxaJuros= $adoRs.Fields ("CMB_JurosTX").Value $ValorTIRJuros= $adoRs.Fields ("CMB_JurosTIR").Value $ValorTXRemunera= $adoRs.Fields ("CMB_JurosTXRemuneracao").Value $ValorTIRRemunera= $adoRs.Fields ("CMB_JurosTIRRemuneracao").Value $ValorDTMN= $adoRs.Fields ("CMB_DTLiquidaMN").Value $ValorDTME= $adoRs.Fields ("CMB_DTLiquidaME").Value $ValorFormaLiq= $adoRs.Fields ("CMB_FormaLiquidaME").Value $ValorContatoAssociado=$adoRs.Fields ("CMB_ContatoAssociado").Value ;============================================================================================== ; ** --- ATIVAR BROWSER INTERNET EXPLORER & COMERCIAL ---*** ;============================================================================================== ;Chamar pagina Comercial $IE = _IECreate ("http://comercialqa.bvnet.bv") Sleep(1000) ;MAximiza WinSetState("Grupo Votorantim", "", @SW_MAXIMIZE) ;============================================================================================== ; #### LOGIN COMERCIAL #### ;============================================================================================== ;Pega o form $Form = _IEFormGetObjByName ($IE, "flogin") ;Usuario $usuario = _IEFormElementGetObjByName ($Form, "usuario") _IEFormElementSetValue ($usuario, "talentpro.tyamamoto") ;Senha $senha = _IEFormElementGetObjByName ($Form, "senha") _IEFormElementSetValue ($senha, "protheus00") _IEImgClick ($IE , "bt_enviar.gif", "src") ;Executa o login ;_IEFormSubmit ($Form) ;============================================================================================== ; ; #### BUSCA CLIENTE #### ;============================================================================================== ;_IENavigate($IE, "http://comercialqa.bvnet.bv/busca/index.com?bean=busca.BuscaBean&acao=inicio") $SubIE=_IENavigate($IE, "http://comercialqa.bvnet.bv/busca/index.com?bean=busca.BuscaBean&acao=inicio") ;Form da tela Clientes - Busca $Form_Busca_Cliente = _IEFormGetObjByName ($IE, "fpesquisa") ;Radio _IEFormElementRadioSelect ($Form_Busca_Cliente, 2, "tipo", 1, "byValue") ;Depois trocar o nome pela variável que leu o valor do banco Send ($Nome_Cliente) Sleep(1000) ;Botão Pesquisar _IEImgClick ($IE, "bt_pesquisar.gif", "src") $Cont=0 Do Inclui_Boleto() $Cont= $Cont + 1 Until $Cont= 5 ;========================================================================================================================= ; ---- Segunda parte do script *** NAVEGAÇÃO E PREENCHIMENTO DOS CAMPOS DE IMPORTAÇÃO *** ---- ;========================================================================================================================= Func Inclui_Boleto() WinSetState("Grupo Votorantim","",@SW_ENABLE) Sleep (5000) MouseClick ("Left",150,475) Sleep(40000) ControlGetText ($IE,"","Edit1") WinActivate($Nome_Cliente, "") WinSetState($Nome_Cliente, "", @SW_SHOW) WinSetState($Nome_Cliente, "", @SW_MAXIMIZE) $IE = _IEAttach($Nome_Cliente) ControlGetText ($IE,"","Edit1") Sleep(15000) ;========================================================================================================================= ; Clica no Menu e Sub-Menu. TOMAR CUIDADO, PODE MUDAR DE POSIÇÃO ;========================================================================================================================= MouseClick("Left", 600,110) MouseClick("Left", 600,130) Sleep(15000) ;========================================================================================================================= ; Pega o form ;========================================================================================================================= $Form = _IEFormGetObjByName ($IE, "importacaoForm") Sleep(1000) ;========================================================================================================================= ; Seleciona o ComboBox Tipo ;========================================================================================================================= $Tipo = _IEFormElementGetObjByName ($Form, "produto.cdProduto") _IEFormElementOptionselect ($Tipo, $ComboTipo, 1, "byText") Sleep(2000) ;========================================================================================================================= ; Seleciona o ComboBox Divisão ;========================================================================================================================= $DivisaoCombo = _IEFormElementGetObjByName ($Form, "tpDivisaoComercial") _IEFormElementOptionselect ($DivisaoCombo, $ComboDivisao, 1, "byText") Sleep(1000) ;========================================================================================================================= ; Seleciona Busca Divisão ;========================================================================================================================= MouseClick("Left", 595,292) ;WinActivate("Busca de Divisões Comerciais", "") sleep(4000) WinSetState("Busca de Divisões Comerciais -- Webpage Dialog","",@SW_ENABLE) MouseClick("Left",492,367) Sleep(2000) ;========================================================================================================================= ; ValorMe ;========================================================================================================================= $ValorMe = _IEFormElementGetObjByName ($Form, "frmVrOperacaoME") _IEFormElementSetValue ($ValorMe, $ValorCampoME) Sleep(2000) ;========================================================================================================================= ; Seleciona o ComboBox Moeda ;========================================================================================================================= $Moeda = _IEFormElementGetObjByName ($Form, "moedaVenda.cdMoeda") _IEFormElementOptionselect ($Moeda, $ValorCampoMoeda, 1, "byText") Sleep(2000) ;========================================================================================================================= ; Seleciona o ComboBox Moeda Despesa ;========================================================================================================================= $MoedaDespesas = _IEFormElementGetObjByName ($Form, "moedaDespesaLocal.cdMoeda") _IEFormElementOptionselect ($MoedaDespesas, $ValorCampoMoedaDespesa, 1, "byText") Sleep(2000) ;========================================================================================================================= ; Despesa Local ;========================================================================================================================= $Despesa_Local = _IEFormElementGetObjByName ($Form, "frmVrDespesaLocal") _IEFormElementSetValue ($Despesa_Local, $ValorCampoDespesaLocal) Sleep(2000) ;========================================================================================================================= ; Taxa Cliente ;========================================================================================================================= ;$TxCliente = _IEFormElementGetObjByName ($Form, "frmTxOperacao") ;_IEFormElementSetValue ($TxCliente, "700,00000000") MouseClick("Left", 131,426) Send($ValorTaxaCliente) Send("{ENTER}") ;Send("{TAB}") ;Send ("030") ;========================================================================================================================= ; Taxa TIR ;========================================================================================================================= $TxClienteTIR = _IEFormElementGetObjByName ($Form, "frmTxTirOperacao") _IEFormElementSetValue ($TxClienteTIR, $ValorTaxaClienteTIR) Sleep(1000) ;========================================================================================================================= ; Taxa Juros ;========================================================================================================================= $TxJuros = _IEFormElementGetObjByName ($Form, "frmPcTxJuros") _IEFormElementSetValue ($TxJuros, $ValorTaxaJuros) Sleep(1000) ;========================================================================================================================= ; Tir Juros ;========================================================================================================================= $TirJuros = _IEFormElementGetObjByName ($Form, "frmPcTirTxJuros") _IEFormElementSetValue ($TirJuros, $ValorTIRJuros) Sleep(2000) ;========================================================================================================================= ; Taxa Renumeração ;========================================================================================================================= $TxRemunera = _IEFormElementGetObjByName ($Form, "frmPcRemuneracao") _IEFormElementSetValue ($TxRemunera, $ValorTXRemunera) Sleep(1000) ;========================================================================================================================= ; Tir Juros ;========================================================================================================================= $TirRemunera = _IEFormElementGetObjByName ($Form, "frmPcTirRemuneracao") _IEFormElementSetValue ($TirRemunera, $ValorTIRRemunera) Sleep(1000) ;========================================================================================================================= ; Data Liquidação MN ;========================================================================================================================= $DT_Liquida_MN = _IEFormElementGetObjByName ($Form, "valorDtLiquidMN") _IEFormElementSetValue ($DT_Liquida_MN, $ValorDTMN) Sleep(2000) MouseClick("Left", 572,426) Sleep(2000) MouseClick("Left", 596,426) ;========================================================================================================================= ; Data Liquidação ME ;========================================================================================================================= $DT_Liquida_ME = _IEFormElementGetObjByName ($Form, "valorDtLiquidME") _IEFormElementSetValue ($DT_Liquida_ME, $ValorDTME) MouseClick("Left", 575,448) Sleep(2000) MouseClick("Left", 595,448) send("{ENTER}") ;========================================================================================================================= ; Forma Liquidação MN ;========================================================================================================================= $FormaLiq = _IEFormElementGetObjByName ($Form, "tpFormaLiquidacaoMN") _IEFormElementOptionselect ($FormaLiq, $ValorFormaLiq, 1, "byText") Sleep(1000) ;========================================================================================================================= ; Contato - Associado a ;========================================================================================================================= $Contato_associado = _IEFormElementGetObjByName ($Form, "contatoForm.frmTpContato") _IEFormElementOptionselect ($Contato_associado, $ValorContatoAssociado, 1, "byText") Sleep(2000) ;========================================================================================================================= ;Seleciona Nome Contato ;========================================================================================================================= WinSetState("Busca de Contatos -- Webpage Dialog","",@SW_ENABLE) MouseClick("Left", 505, 675) Sleep (4000) MouseClick("Left", 392, 312) Sleep (2000) ;========================================================================================================================= ;Seleciona telefone Contato ;========================================================================================================================= WinSetState("Busca de Telefones -- Webpage Dialog","",@SW_ENABLE) MouseClick("Left", 728, 672) Sleep (4000) MouseClick("Left", 451,360) Sleep (3000) ;========================================================================================================================= ; Clicar Confirma Operação ;========================================================================================================================= ;$ConfirmaOperacao = _IEFormElementGetObjByName ($Form, "Src=/images/bt_confirma_operacao.gif") ;_IEImgClick ($IE, "bt_gravar.gif") MouseClick("Left", 1011,684) Sleep (3000) MouseClick("Left", 846,660) ;========================================================================================================================= ; Clicar Botão OK ;========================================================================================================================= WinSetState ("Windows Internet Explorer","",@SW_SHOW) WinActive ("Windows Internet Explorer") WinSetState ("Windows Internet Explorer","",@SW_ENABLE) Sleep(10000) MouseClick("Left", 514,426) ;========================================================================================================================= ; Fechar tela Cambio ;========================================================================================================================= sleep(3000) WinActivate($Nome_Cliente, "") WinSetState($Nome_Cliente, "", @SW_SHOW) WinSetState($Nome_Cliente,"",@SW_ENABLE) sleep(20000) MouseClick("Left", 745,58) sleep(10000) $Form = _IEFormGetObjByName ($IE, "importacaoForm") $oText = _IEFormElementGetObjByName ($Form, "cdOperacao") $IEcodigo= _IEFormElementGetValue ($oText) $NameText = _IEFormElementGetObjByName ($Form, "clienteRisco.nmPessoa") $IEnome= _IEFormElementGetValue ($NameText) ; $Result = "NOK" ; ; If $IEcodigo <> 0 Then ; $Result = "OK" ; ElseIf ; $Result = "NOK" ; Endif $dbname="db.mdb" $adoConn = ObjCreate("ADODB.Connection") $adoConn.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Comercial_QA\DataBase_COMERCIAL\BD_Cambio.mdb;Persist Security Info=False") $sql_insert = "insert into TB_Cambio_ConfirmaBoleto (codigo,nome) values('" & $IEcodigo & "','" & $IEnome & "')" $adoConn.Execute($sql_insert) $adoConn.Close EndFunc $adoRS.MoveNext WEnd EndIf EndWithHi Folks!I was looking to solve my problem that is the same as Anunes, but my code is a little bit more complex.I would like to know what does it mean...and if you guys know how to fix that.It looks like AutoIt Bug..Help me up...Error:"Line 1247 (File "C:\Arquivos\AutoIt3\Beta\Include\IE.au3"):$o_col = $o_object.document.forms.item($s_Name)$o_col = $o_object.document^ERRORMy code below: Edited December 10, 2009 by lzamora Link to comment Share on other sites More sharing options...
PsaltyDS Posted December 10, 2009 Share Posted December 10, 2009 I would like to know what does it mean...and if you guys know how to fix that.It looks like AutoIt Bug..Help me up...Error:"Line 1247 (File "C:\Arquivos\AutoIt3\Beta\Include\IE.au3"):$o_col = $o_object.document.forms.item($s_Name)$o_col = $o_object.document^ERRORThat line is in _IEFormGetObjByName(). You use that function several times. Do you know which of those instances failed on?Add _IEErrorHandlerRegister() to the top of your script and run it in SciTE to see the detailed error messages. Valuater's AutoIt 1-2-3, Class... Is now in Session!For those who want somebody to write the script for them: RentACoder"Any technology distinguishable from magic is insufficiently advanced." -- Geek's corollary to Clarke's law Link to comment Share on other sites More sharing options...
lzamora Posted December 14, 2009 Share Posted December 14, 2009 Thanks man. It realy works! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now