Jump to content

Recommended Posts

Posted

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...

  • 9 months later...
Posted (edited)

#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
Posted

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

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
  • Recently Browsing   0 members

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