Jump to content

_IE troubles


anunes
 Share

Recommended Posts

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.

Dale

Thanks Dale, i'll read this as soon as possible...

Link to comment
Share on other sites

  • 9 months later...

#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
EndWith
Hi 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^ERROR

My code below:

Edited by lzamora
Link to comment
Share on other sites

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^ERROR

That 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

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...