none
error '80020009' RRS feed

  • Pergunta

  • <%

    strQuery = "SELECT * FROM levantamento where TB_macaddress = '" &Request.Form("TB_macaddress")& "'"

    set rsVerifica = objConn.execute(strQuery)
       
            if Request.Form("TB_macaddress") = rsVerifica("TB_macaddress") then
           
                Response.Write("OK!")
                   
            else
           
                Response.Write("Erro!")
           
            end if
           
    %>


    error '80020009'

    Me ajudem.

    Quando o valor passado pelo formulário é igual ao cadastrado no banco de dados ele retorna o OK normalmente.

    Quando o valor passado é diferente ou não existente no banco ele retorna o erro 80020009 e não executa o else.

    Vocês fazem ideia do que pode estar acontecendo?


    Desde já agradeço. Obrigado

    terça-feira, 29 de julho de 2008 21:27

Respostas

  • Luiz, antes de vc fazer a comparacao verifique se ha resultados retornados.

    Pode ser que nao tenha nada no DB e ele esta tentando comparar, tente algo como isso:

     

    Code Snippet

    <%

    strQuery = "SELECT * FROM levantamento where TB_macaddress = '" &Request.Form("TB_macaddress")& "'"
    set rsVerifica = objConn.execute(strQuery)

     

    if not rsVerifica.EOF Then


            if Request.Form("TB_macaddress") = rsVerifica("TB_macaddress") then
           
                Response.Write("OK!")
                   
            else
           
                Response.Write("Erro!")
           
            end if

    else

           Response.Write("Erro!")

    end if


    %>

     

     

    [ ]s.
    quarta-feira, 30 de julho de 2008 12:33
  • Luiz Agora tente com o código abaixo, sem o Response.End

     

    <%
    strQuery = "SELECT * FROM levantamento where TB_macaddress = '" &Request.Form("TB_macaddress")& "'"
    set rsVerifica = objConn.execute(strQuery)

     

    if not rsVerifica.EOF Then

            Response.Write("Form - > TB_macaddress: " & Request.Form("TB_macaddress") )

            Response.Write("RS -> TB_macaddress: " & rsVerifica("TB_macaddress") )

            Response.Write("Teste bool: " & (Request.Form("TB_macaddress") = rsVerifica("TB_macaddress") ) )

            if Request.Form("TB_macaddress") = rsVerifica("TB_macaddress") then
                Response.Write("OK!")
            else
                Response.Write("Erro!")
            end if

    else

           Response.Write("Erro!")

    end if
    %>

     

    Abraços

     

    Estevam

    quarta-feira, 30 de julho de 2008 18:09

Todas as Respostas

  • Luiz, antes de vc fazer a comparacao verifique se ha resultados retornados.

    Pode ser que nao tenha nada no DB e ele esta tentando comparar, tente algo como isso:

     

    Code Snippet

    <%

    strQuery = "SELECT * FROM levantamento where TB_macaddress = '" &Request.Form("TB_macaddress")& "'"
    set rsVerifica = objConn.execute(strQuery)

     

    if not rsVerifica.EOF Then


            if Request.Form("TB_macaddress") = rsVerifica("TB_macaddress") then
           
                Response.Write("OK!")
                   
            else
           
                Response.Write("Erro!")
           
            end if

    else

           Response.Write("Erro!")

    end if


    %>

     

     

    [ ]s.
    quarta-feira, 30 de julho de 2008 12:33
  • Thiagão,

    já havia tentado isso anteriormente, porém, sem sucesso. O banco de dados que estou usando para testes é o access, será que o problema está ai?

    Obrigado

    quarta-feira, 30 de julho de 2008 12:38
  • A linha que o depurador aponta como erro é o if onde eu comparo os valores.
    quarta-feira, 30 de julho de 2008 13:00
  • Luuiz voce testou com o código que o Thiago passou? Deu algum erro? o que acontece com o código do Thiago?

     

    Abraços

     

    Estevam

    quarta-feira, 30 de julho de 2008 14:59
  • Luiz, Justamente isso que eu gostaria de saber tb.
    Deu alguma mensagem diferente no codigo que eu havia postado?

     

    [ ]s.

    quarta-feira, 30 de julho de 2008 15:03
  • Não funcionou. A mensagem de erro é a mesma.

    Eu já havia tentado daquela forma anteriormente.
    quarta-feira, 30 de julho de 2008 16:16
  • Luiz coloque o código abaixo descreva o que aparece na tela:

     

    <%
    strQuery = "SELECT * FROM levantamento where TB_macaddress = '" &Request.Form("TB_macaddress")& "'"
    set rsVerifica = objConn.execute(strQuery)

     

    if not rsVerifica.EOF Then

            Response.Write("Form - > TB_macaddress: " & Request.Form("TB_macaddress") )

            Response.Write("RS -> TB_macaddress: " & rsVerifica("TB_macaddress") )

            Response.Write("Teste bool: " & (Request.Form("TB_macaddress") = rsVerifica("TB_macaddress") ) )

            Response.End

            if Request.Form("TB_macaddress") = rsVerifica("TB_macaddress") then
                Response.Write("OK!")
            else
                Response.Write("Erro!")
            end if

    else

           Response.Write("Erro!")

    end if
    %>

     

    Abraços

     

    Estevam

    quarta-feira, 30 de julho de 2008 16:58
  • Retorna a seguinte mensagem quando encontrado no banco:

    Form - > TB_macaddress: 00-26-54-16-8C-24
    RS -> TB_macaddress: 00-26-54-16-8C-24
    Teste bool: True

    E Erro! quando não existe.
    quarta-feira, 30 de julho de 2008 17:56
  • Luiz Agora tente com o código abaixo, sem o Response.End

     

    <%
    strQuery = "SELECT * FROM levantamento where TB_macaddress = '" &Request.Form("TB_macaddress")& "'"
    set rsVerifica = objConn.execute(strQuery)

     

    if not rsVerifica.EOF Then

            Response.Write("Form - > TB_macaddress: " & Request.Form("TB_macaddress") )

            Response.Write("RS -> TB_macaddress: " & rsVerifica("TB_macaddress") )

            Response.Write("Teste bool: " & (Request.Form("TB_macaddress") = rsVerifica("TB_macaddress") ) )

            if Request.Form("TB_macaddress") = rsVerifica("TB_macaddress") then
                Response.Write("OK!")
            else
                Response.Write("Erro!")
            end if

    else

           Response.Write("Erro!")

    end if
    %>

     

    Abraços

     

    Estevam

    quarta-feira, 30 de julho de 2008 18:09
  • <%

    strQuery = "SELECT * FROM levantamento where TB_macaddress = '" &Request.Form("TB_macaddress")& "'"

    set rsVerifica = objConn.execute(strQuery)

    if not rsVerifica.eof then
       
            if Request.Form("TB_macaddress") = rsVerifica("TB_macaddress") then
           
                            Response.Write     "<script>" & _
                                "self.alert('" & ("Erro. Máquina já Existente.") & "');" & _
                                "self.location.href = ""update_maquina.asp"";</script>"
           
            end if
           
    else

        strQuery = "INSERT INTO levantamento (TB_nome, TB_placamae, TB_processador, TB_memoria, TB_hd, TB_macaddress, TB_leitor, TB_fabricante, TB_monitor, TB_usuario, TB_permissao, TB_setor, TB_unidade, TB_situacao, TB_software, TB_historico) VALUES ('"&Request.Form("TB_nome")&"','"&Request.Form("TB_placamae")&"','"&Request.Form("TB_processador")&"','"&Request.Form("TB_memoria")&"','"&Request.Form("TB_hd")&"','"&Request.Form("TB_macaddress")&"','"&Request.Form("TB_leitor")&"','"&Request.Form("TB_fabricante")&"','"&Request.Form("TB_monitor")&"','"&Request.Form("TB_usuario")&"','"&Request.Form("TB_permissao")&"','"&Request.Form("TB_setor")&"','"&Request.Form("TB_unidade")&"','"&Request.Form("TB_situacao")&"','"&Request.Form("TB_software")&"','"&Request.Form("TB_hitorico")&"')"

        set objRs = objConn.execute(strQuery)
               
        Response.Write     "<script>" & _
                        "self.alert('" & ("Máquina Cadastrada com Sucesso.") & "');" & _
                        "self.location.href = ""default.asp"";</SCRIPT>"
                       
    end if
           
    %>

    O código funcionou assim. Obrigado Luiz e Thiago pela ajuda.
    quarta-feira, 30 de julho de 2008 18:11