Visualizzazione dei risultati da 1 a 6 su 6

Discussione: problema Set objRS

  1. #1
    Utente di HTML.it L'avatar di Lino80
    Registrato dal
    Oct 2005
    Messaggi
    1,560

    problema Set objRS

    Microsoft JET Database Engine error '80004005'

    Operation must use an updateable query.

    /totalecommerce/exibe_detalhes_produtos.asp, line 5



    line 5: Set objRS = objCon.Execute(strQ)

  2. #2
    Cerca sul forum come impostare i permessi in MODIFICA all'Internet Guest Account sulla cartella del database.

  3. #3
    Utente di HTML.it L'avatar di Lino80
    Registrato dal
    Oct 2005
    Messaggi
    1,560
    sono dei file in spagnolo.. non riesco a trovare in quale file sta il percorso del database .mdb
    ho trovato nel file funcoes.asp:


    '************************************************* *******************
    ' Bases de dados do sistema
    '************************************************* *******************

    Application("te_conexao") = "Data Source=" & endereco_fisico & "\mdb-database\te_database.mdb;Provider=Microsoft.Jet.OL EDB.4.0;"
    Application("te_conexao_cep") = "Data Source=" & endereco_fisico & "\mdb-database\te_cep.mdb;Provider=Microsoft.Jet.OLEDB.4 .0;"
    Application("te_banners") = "Data Source=" & endereco_fisico & "\mdb-database\te_banners.mdb;Provider=Microsoft.Jet.OLE DB.4.0;"


    mi da sempre errore quando vado per aggiungere al carrello..

    Microsoft JET Database Engine error '80004005'

    Operation must use an updateable query.

    /totalecommerce/cesta.asp, line 138



    cesta.asp:


    codice:
    <html>
    <head>
    <title><%=Application("te_titulo_browser")%></title>
    <link href="estilos/index.css" rel="stylesheet" type="text/css">
    <script language="JavaScript">
    <!--
    function verifica_cep(form){
    if (document[form].cep1.value == ""){
    document[form].cep1.focus();
    alert('Informe corretamente o cep');
    }
    else if (document[form].cep2.value == ""){
    document[form].cep2.focus();
    alert('Informe corretamente o cep');
    }
    else{
    document[form].target="iframe_cep";
    document[form].action="cesta_cep.asp";
    document[form].submit();
    }
    }
    //-->
    </script>
    </head>
    <body leftmargin="0" rightmargin="0" topmargin="0" bottommargin="0">
    <table border="0" align="center" cellpadding="0" cellspacing="0" class="pagina">
      <tr>
        <td></td>
      </tr>
    
    <%
    recalcula_cep = False
    If Application("te_alinhamento_secoes") = 2 Then
      Set objCon = Server.CreateObject("ADODB.Connection")
      objCon.Open Application("te_conexao")
    %>
      <tr>
        <td colspan="3">
    <table border="0" align="center" cellpadding="0" cellspacing="0" width="100%">
      <tr> 
        <td width="1%">[img]imagens/antes_secoes.gif[/img]</td>
        <td class="menu_secoes" style="width:100%"></td>
        <td width="1%">[img]imagens/depois_secoes.gif[/img]</td>
      </tr>
    </table>
    	</td>
      </tr>
    <%
      objCon.Close
      Set objCon = Nothing
    End If
    If Application("te_exibe_busca") = 1 Then
    %>
      <tr>
        <td colspan="3"></td>
      </tr>
    <%
    End If
    %>
    
      <tr>
          <td>
    
    <%
    '# Declara as variaveis do objeto XML
    Dim XMLDoc, XMLItems
    Dim produtos, total
    
    '# Executa rotina para criar o objeto XML e recuperar os produtos da cesta
    Set XMLItems = VerificaXML()
    
    '# Se for clicado no botão comprar do catálogo de compras
    If Request.Form("id") <> "" Then
    
      '# Executa rotina para incluir o produto na cesta
      IncluirItemXML
      
    End If
    
    
    '# Rotina para incluir um produto na cesta
    SUB IncluirItemXML
    
      Set objCon = Server.CreateObject("ADODB.Connection")
      objCon.Open Application("te_conexao")
    
      Set objRS_produtos = Server.CreateObject("ADODB.Recordset")
      objRS_produtos.CursorLocation = 3
      objRS_produtos.CursorType = 0
      objRS_produtos.LockType = 3
      ComandoSQL = "SELECT * FROM produtos WHERE id = " & Request("id")
      objRS_produtos.Open ComandoSQL, objCon, , , &H0001
    
      Dim Procura 'Declara as variaveis
      Set XMLDoc = XMLItems.ownerDocument
    
      Dim nome_produto
      '# Captura as especificações do produto para adicionar na cesta
      If Request.Form("especificacao") <> "" Then
        ComandoSQL = " SELECT * FROM produtos_especificacoes_detalhes WHERE id_especificacao = " & Request.Form("especificacao")
        Set objRS_especificacoes = Server.CreateObject("ADODB.Recordset")
        objRS_especificacoes.CursorLocation = 2
        objRS_especificacoes.CursorType = 1
        objRS_especificacoes.LockType = 1
        objRS_especificacoes.Open ComandoSQL, objCon,,, &H0001
        If Not objRS_especificacoes.EOF Then
          strQ = "SELECT valor_acrescimo FROM produtos_especificacoes WHERE id=" & Request.Form("especificacao")
          Set objRS_valor_acrescimo = objCon.Execute(strQ)
    	  If objRS_valor_acrescimo("valor_acrescimo") > 0 Then
    	    valor_acrescimo = objRS_valor_acrescimo("valor_acrescimo")
    	  Else
    	    valor_acrescimo = 0
    	  End If
    	  Set objRS_valor_acrescimo = Nothing
    	  especificacoes = ""
    	  While Not objRS_especificacoes.EOF
    	    especificacoes = especificacoes & objRS_especificacoes("titulo") & ": " & objRS_especificacoes("valor") & "; "
    	    objRS_especificacoes.MoveNext
    	  Wend
    	End If
    	objRS_especificacoes.Close
    	Set objRS_especificacoes = Nothing
    	Set ComandoSQL = Nothing
        nome_produto = objRS_produtos("produto") & "
    " & especificacoes & ""
    	Set especificacoes = Nothing
      Else
        nome_produto = objRS_produtos("produto")
    	valor_acrescimo = 0
      End If
    
      '# Realiza uma busca no objeto XML para verificar se o produto já contém na cesta
      Set Procura = XMLItems.selectNodes("produto[@nome=""" & Replace(nome_produto,"""","") & """]")
    
      '# Se o produto não contér na cesta
      If Not Procura.length > 0 Then
    
        strQ = "UPDATE produtos SET num_cesta=num_cesta+1 WHERE id=" & Request.Form("id")
        Set objRS = objCon.Execute(strQ)
    
        '# Cria um novo elemento no objeto XML para incluir o produto
        Set produto = XMLDoc.createElement("produto")
    
        Set id = XMLDoc.createAttribute("id")
        id.Text = Request.Form("id")
        produto.attributes.setNamedItem(id)
    
        Set referencia = XMLDoc.createAttribute("referencia")
        referencia.Text = Request.Form("referencia")
        produto.attributes.setNamedItem(referencia)
    
        Set nome = XMLDoc.createAttribute("nome")
        nome.Text = nome_produto
        produto.attributes.setNamedItem(nome)
    
        Set especificacao = XMLDoc.createAttribute("especificacao")
        especificacao.Text = Request.Form("especificacao")
        produto.attributes.setNamedItem(especificacao)
    
        Set valor = XMLDoc.createAttribute("valor")
        If objRS_produtos("promocao_inicio") <= Date() AND objRS_produtos("promocao_final") >= Date() Then
          var_valor = ccur(objRS_produtos("promocao_valor")) + ccur(valor_acrescimo)
          valor.Text = var_valor
        Else
          var_valor = ccur(objRS_produtos("valor_venda")) + ccur(valor_acrescimo)
          valor.Text = var_valor
        End If
        produto.attributes.setNamedItem(valor)
    
        Set entregas_disponiveis = XMLDoc.createAttribute("entregas_disponiveis")
    	If Trim(objRS_produtos("entregas_disponiveis")) <> "" Then
          entregas_disponiveis.Text = objRS_produtos("entregas_disponiveis")
    	Else
          entregas_disponiveis.Text = ""
    	End If
        produto.attributes.setNamedItem(entregas_disponiveis)
        
        Set peso = XMLDoc.createAttribute("peso")
        var_valor = FormatNumber(objRS_produtos("peso"))
        peso.Text = var_valor
        produto.attributes.setNamedItem(peso)
    
        Set isento_frete = XMLDoc.createAttribute("isento_frete")
        If objRS_produtos("isento_frete") = True Then isento_frete.Text = "isento" Else isento_frete.Text = ""
        produto.attributes.setNamedItem(isento_frete)
    
        Set isento_frete_qtd = XMLDoc.createAttribute("isento_frete_qtd")
        isento_frete_qtd.Text = objRS_produtos("isento_frete_qtd")
        produto.attributes.setNamedItem(isento_frete_qtd)
    
        Set VISA_iniciojuros = XMLDoc.createAttribute("VISA_iniciojuros")
        VISA_iniciojuros.Text = objRS_produtos("VISA_iniciojuros")
        produto.attributes.setNamedItem(VISA_iniciojuros)
    
        Set MASTERCARD_iniciojuros = XMLDoc.createAttribute("MASTERCARD_iniciojuros")
        MASTERCARD_iniciojuros.Text = objRS_produtos("MASTERCARD_iniciojuros")
        produto.attributes.setNamedItem(MASTERCARD_iniciojuros)
    
        Set DINERS_iniciojuros = XMLDoc.createAttribute("DINERS_iniciojuros")
        DINERS_iniciojuros.Text = objRS_produtos("DINERS_iniciojuros")
        produto.attributes.setNamedItem(DINERS_iniciojuros)
    
        Set AMERICAN_iniciojuros = XMLDoc.createAttribute("AMERICAN_iniciojuros")
        AMERICAN_iniciojuros.Text = objRS_produtos("AMERICAN_iniciojuros")
        produto.attributes.setNamedItem(AMERICAN_iniciojuros)
    
        produto.Text = 1
    
        '# Atualiza o objeto XML com o produto já incluido
        XMLItems.AppendChild(produto)
    
        recalcula_cep = True
    
      End If
    
      '# Fecha a conexão com o banco de dados após incluir o produto na cesta
      objCon.Close
      
      '# Libera variaveis da memória
      Set objRS_produtos = Nothing
      Set objCon = Nothing
      Set ComandoSQL = Nothing
      Set Procura = Nothing
    
    END SUB
    
    
    '# Função que captura os produtos da cesta caso existam
    FUNCTION VerificaXML()
    
      '# Cria um objeto XML
      Set XMLDoc = Server.CreateObject("Microsoft.XMLDOM")
    
      '# Se a variável de sessão contendo os produtos da cesta exitir
      If Not IsEmpty(Session("cesta")) And Session("cesta") <> "" Then
    
        '# Atribui os produtos da variável de sessão para o objeto XML criado
        XMLDoc.loadXML CStr(Session("cesta"))
        Set XMLItems = XMLDoc.documentElement
    
      '# E se a variável de sessão contendo os produtos da cesta ainda não exitir
      Else
    
        '# Cria um elemento em branco para o objeto XML caso não existam produtos na cesta
        Set XMLItems = XMLDoc.createElement("cesta")
        Set XMLDoc.documentElement = XMLItems
    
      End If
    
      '# Retorna para onde foi chamada a função com o conteudo do XML capturado
      Set VerificaXML = XMLItems
    
    END FUNCTION
    
    If Not IsEmpty(Request.Form("qtd_1")) Then
      n = 0
      For Each item in XMLItems.childNodes
        n = n + 1
        '# Recupera a quantidade do produto enviada pelo formulário
        qtd = Request.Form("qtd_" & n)
        If qtd = "" Then qtd = 0
        If item.attributes.getNamedItem("isento_frete").text <> "" AND Int(item.attributes.getNamedItem("isento_frete_qtd").text) > 0 Then
    	  If Int(qtd) > Int(item.attributes.getNamedItem("isento_frete_qtd").text) Then
    	    qtd = item.attributes.getNamedItem("isento_frete_qtd").text
    	    Response.Write "
    <span class='texto'>[img]admin/imagens/unchecked.gif[/img] Disponível somente " & item.attributes.getNamedItem("isento_frete_qtd").text & " unidade(s) por cliente para o produto com frete grátis:
    <font color=red>" & item.attributes.getNamedItem("nome").text & "</font></span>
    "
    	  End If
    	End If
        '# Se o a quantidade do produto for diferente de zero e for um valor numérico
        If qtd > 0 Then
          '# Grava a quantidade do produto no objeto XML
          item.text = qtd
        Else
          '# Elimina o produto do objeto XML
          XMLItems.removeChild item
          recalcula_cep = True
        End If
      Next
      Set qtde = Nothing
      Set item = Nothing
    End If
    
    '# Se existirem produtos dentro do objeto XML
    If XMLItems.hasChildNodes Then
    
    If Not IsEmpty(Request.Form("cep")) Then
      Set objCon = Server.CreateObject("ADODB.Connection")
      objCon.Open Application("te_conexao")
    %>
    
    
    
    <%
      objCon.Close
      Set objCon = Nothing
    End If
    %>
    
            
    
          <table width="95%" border="0" align="center" cellpadding="0" cellspacing="0" background="IMAGENS/passos_fundo.gif" class="texto">
            <tr align="center"> 
              <td width="20%" class=textb>[img]IMAGENS/passo1_selected.gif[/img]</td>
              <td width="20%" class=textb>[img]IMAGENS/passo2.gif[/img]</td>
              <td width="20%" class=textb>[img]IMAGENS/passo3.gif[/img]</td>
              <td width="20%" class=textb>[img]IMAGENS/passo4.gif[/img]</td>
              <td width="20%" class=textb>[img]IMAGENS/passo5.gif[/img]</td>
            </tr>
          </table>
            
          <table width="95%" border="0" cellspacing="0" cellpadding="4" class="texto" align="center">
            <form name="cesta_produtos" method="post" action="cesta.asp">
              <tr align="right" bgcolor="whitesmoke"> 
                <td colspan="6"></td>
              </tr>
              <tr> 
                <td colspan="2" bgcolor="gainsboro">DESCRI&Ccedil;&Atilde;O</td>
                <td align="center" bgcolor="gainsboro">QUANTIDADE</td>
                <td align="center" bgcolor="gainsboro">REMOVER</td>
                <td width="1%" align="center" nowrap bgcolor="gainsboro">PRE&Ccedil;O(<%=Application("te_moeda_sigla")%>)</td>
                <td width="1%" align="center" nowrap bgcolor="gainsboro">TOTAL(<%=Application("te_moeda_sigla")%>)</td>
              </tr>

  4. #4
    Utente di HTML.it L'avatar di Lino80
    Registrato dal
    Oct 2005
    Messaggi
    1,560
    codice:
    <%
    n = 0
    peso_produtos = 0
    total = 0
    Resultado = True
    formas_pagamento = ""
    For Each item in XMLItems.childNodes
      sub_total = ccur(item.attributes.getNamedItem("valor").text) * ccur(item.text)
      total = total + sub_total
      n = n + 1
    %>
              <tr> 
                <td width="2%"> 
                  <%
        Set ObjFS = Server.CreateObject("Scripting.FileSystemObject")
        strFolder = endereco_fisico & "imagens/produtos/" & item.attributes.getNamedItem("id").text
        If objFS.FolderExists(strFolder) Then
          Set objFolder = ObjFS.GetFolder( strFolder )
          x = 0
          For Each File in objFolder.files
            If lcase(Right(File, 3)) = "gif" Or lcase(Right(File, 3)) = "jpg" Then
    	      x = x + 1
            End If
          Next
    	  If x <> 0 Then
    	    If Application("te_randomize_fotos") = 1 Then
              Randomize()
              peso = Int(x*Rnd) + 1
    	      x = 1
              For Each File in objFolder.files
                If lcase(Right(File, 3)) = "gif" Or lcase(Right(File, 3)) = "jpg" Then
    	          If peso = x Then
    		        Response.Write "[img]imagens/produtos/" & item.attributes.getNamedItem("id").text & "/" & File.name & "[/img]
    " & vbcrlf
                    Exit For
    		      End If
    	          x = x + 1
                End If
              Next
    	    Else
              For Each File in objFolder.files
    	        If lcase(Right(File, 3)) = "gif" Or lcase(Right(File, 3)) = "jpg" Then
    		      Response.Write "[img]imagens/produtos/" & item.attributes.getNamedItem("id").text & "/" & File.name & "[/img]
    " & vbcrlf
    		      Exit For
    		    End If
              Next
    	    End If
          End if
        End if
        Set objFolder = Nothing
        Set Folder = Nothing
    %>
                </td>
                <td> 
                  <%
        Response.Write item.attributes.getNamedItem("nome").text
        If item.attributes.getNamedItem("isento_frete").text <> "" Then
          Response.Write "[img]imagens/destacar_fretegratis.gif[/img]"
        End If
    %>
                </td>
                <td align="center" width="5%" nowrap><input name="qtd_<%=n%>" value="<%=item.text%>" size="3" maxlength="3" class="texto"></td>
                <td align="center" width="5%" nowrap>[img]imagens/cesta_remover.gif[/img].value='';document.cesta_produtos.submit();"></td>
                <td width="1%" align="right" nowrap><%=FormataValor(item.attributes.getNamedItem("valor").text*Application("te_moeda_cotacao"))%></td>
                <td width="1%" align="right" nowrap bgcolor="whitesmoke"><%=FormataValor(sub_total*Application("te_moeda_cotacao"))%></td>
              </tr>
              <%
      If item.attributes.getNamedItem("isento_frete").text = "" Then
        Resultado = False
        peso_produtos = ccur(peso_produtos) + (ccur(item.attributes.getNamedItem("peso").text) * ccur(item.text))
      End If
      formas_pagamento = formas_pagamento & item.attributes.getNamedItem("entregas_disponiveis").text
    
    Next
    Session("frete_gratis") = Resultado
    Session("formas_pagamento") = formas_pagamento
    Set formas_pagamento = Nothing
    %>
              <tr> 
                <td colspan="2" bgcolor="whitesmoke"> 
                  <%If Session("frete_cep") <> "" Then Response.Write "Valor do frete calculado para:
    
    "%>
                  Digite o CEP do endere&ccedil;o de entrega para calcular o valor 
                  do frete [img]IMAGENS/procurar_cep.gif[/img]</td>
                <td colspan="3" align="right" nowrap bgcolor="whitesmoke"> 
                  <%If Session("frete_cep") <> "" Then Response.Write Session("frete_localidade") & "
    
    "%>
                  CEP: <input type="Text" size="6" id="cep1" name="cep1" maxlength="5" style="FONT-SIZE: 10px; FONT-FAMILY: verdana" onKeyPress="if(event.keyCode == 13)event.returnValue=false;" value="<%If Session("frete_cep") <> "" Then Response.Write Left(Session("frete_cep"),5)%>">
                  - 
                  
                <input type="Text" size="3" id="cep2" name="cep2" maxlength="3" style="FONT-SIZE: 10px; FONT-FAMILY: verdana"  onKeyPress="if(event.keyCode == 13)event.returnValue=false;" value="<%If Session("frete_cep") <> "" Then Response.Write Right(Session("frete_cep"),3)%>"> 
                  [img]imagens/calcular_frete.gif[/img]
     
                </td>
                <td width="1%" align="right" valign="top" bgcolor="whitesmoke"> 
                  <%
    If Session("frete_cep") <> "" Then
      If Session("frete_gratis") = True Then
        frete_total = 0
      Else
        If Session("frete_margem_peso") <> "" Then
          If (FormatNumber(peso_produtos)) - FormatNumber(Session("frete_margem_peso")) <= 0 Then
            frete_total = Session("frete_valor_fixo")
          Else
    	    frete_total = Ccur(peso_produtos) / Ccur(Session("frete_margem_peso"))
    		frete_total = frete_total * Ccur(Session("frete_valor_adicional"))
    		frete_total = frete_total + Ccur(Session("frete_valor_fixo"))
          End If
        Else
          frete_total = 0
        End If
      End If
    Else
      frete_total = 0
    End If
    If Trim(frete_total) = "" Then frete_total = 0
    Response.Write FormataValor(frete_total*Application("te_moeda_cotacao"))
    Session("peso_produtos") = FormatNumber(peso_produtos)
    Set peso_produtos = Nothing
    Session("total") = (ccur(total)+ccur(frete_total))*Application("te_moeda_cotacao")
    %>
                </td>
              </tr>
              <tr> 
                <td colspan="2" bgcolor="gainsboro"><font size="2">TOTAL</font></td>
                <td bgcolor="gainsboro"></td>
                <td bgcolor="gainsboro"></td>
                <td bgcolor="gainsboro"></td>
                <td width="1%" align="right" bgcolor="gainsboro"><font size="2"><%=Application("te_moeda_sigla") & FormataValor(Session("total"))%></font></td>
              </tr>
              <tr align="right"> 
                <td colspan="6"></td>
              </tr>
              <tr align="right"> 
                <td colspan="6"><input type="image" src="imagens/recalcular.gif"></td>
              </tr>
              <tr align="right"> 
                <td colspan="6">[img]imagens/continuar_comprando.gif[/img][img]imagens/fechar_pedido.gif[/img]</td>
              </tr>
            </form>
          </table>
    
    <%
    '# E se não existirem produtos dentro do objeto XML
    Else
      recalcula_cep = False
    %>
    
    
    <center>
          <font color="#CC0000" face="Arial, Helvetica, sans-serif">Seu carrinho 
          est&aacute; vazio.</font><font color="#CC0000" size="4" face="Arial, Helvetica, sans-serif"> 
          </font> 
    
          
    
      [img]imagens/voltar_loja.gif[/img] 
    
    </center>
    
    
    
    <%
    End If
    
    '# Grava o objeto XML contendo os produtos da cesta em uma variável de sessão
    Session("cesta") = XMLItems.XML
    
    '# Libera variaveis da memória
    Set frete_total = Nothing
    Set XMLDoc = Nothing
    Set XMLItems = Nothing
    Set Item = Nothing
    Set ValorUnit = Nothing
    Set ValorSubTot = Nothing
    Set total = Nothing
    Set produtos = Nothing
    %>
    
    		<iframe name="iframe_cep" frameborder="0" style="width:1px;height:1px"></iframe>
        </td>
      </tr>
      <tr>
        <td></td>
      </tr>
    </table>
    
    <%
    If Session("frete_cep") <> "" AND recalcula_cep = True Then
      Response.Write "<script language='JavaScript'>verifica_cep('cesta_produtos')</script>"
    End If
    Set recalcula_cep = Nothing
    %>
    
    </body>
    </html>

  5. #5
    Utente di HTML.it L'avatar di Lino80
    Registrato dal
    Oct 2005
    Messaggi
    1,560
    non è un problema di cartella dove risiedono i file .mdb... è la cartella database di aruba... e funziona perfettamente..

  6. #6
    Originariamente inviato da Lino80
    non è un problema di cartella dove risiedono i file .mdb... è la cartella database di aruba... e funziona perfettamente..
    se il problema è il settaggio in spagnolo: http://www.google.it/language_tools?hl=it
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.