Jump to content
ukow

Erro de UPDATE "Tipos incompatíveis"

Recommended Posts

Olá!

Estou fazendo um teste para atualizar uma informação em um dos meus itens do banco de dados; porém houve um erro e não consigo decifra-lo. "Tipos incompatíveis"

 

Busco as informações no banco:

 

<%Dim caminho, conexao, rsProduto, seleciona%>
<%
caminho = "D:\web\LocalUser\divinho\banco\db.mdb"
Set conexao = Server.CreateObject("ADODB.Connection")
conexao.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&caminho&";"
%>
<%
Set rsProduto = Server.CreateObject("ADODB.Recordset")
seleciona = "SELECT * from Produtos where Cod_produto = "& request("cod")
rsProduto.Open seleciona, conexao
Dim cod
cod = request("cod")
%>
<FORM name="frmPrincipal" method="post" id="frmPrincipal" action="teste.asp?cod=<%=cod%>">
<input type=text name=codigo value="<%=rsProduto("Cod_produto")%>">
<input type=text name=nome value="<%=rsProduto("Nome")%>">
<input type="Submit" value="Enviar ">
</form>
Realizando o UPDATE
<%Dim caminho, conexao%>
<%
caminho = "D:\web\LocalUser\divinho\banco\db.mdb"
Set conexao = Server.CreateObject("ADODB.Connection")
conexao.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&caminho&";"
%>
<%
Dim sql, nome, cod, executecmd
nome = request.form("nome")
cod = request.form("codigo")
sql = "update Produtos set "
sql = sql & " Nome = '" & nome & "'"
sql = sql & " where Cod_produto = " & cod
call executecmd(sql)
Response.Redirect "teste2.asp"
%>

Podem testar através do link: http://divinho.com.br/teste2.asp?cod=344

 

Agradeço se alguém puder ajudar!

:D

Share this post


Link to post
Share on other sites

Boa tarde. 

Amigos, sou novo no forum. 

Estou com o seguinte problema e precisando de ajuda, se postei a duvida em local errado, me desculpa. 

 

Segue erro:

Erro de tempo de execução do Microsoft VBScript erro '800a000d'

Tipos incompatíveis: '[string: "P"]'

/wireless/sacarF.asp, linha 202

 

imagem: image.png.475c9663b05d6e2d05abf9d7b63527cb.png

 

Deveria montar a tela a seguir, circulado em preto:

image.png.5295ed5aa16111ceff773ad4eb97e93b.png

 

segue codigo fonte abaixo:

 

set rs3 = server.createobject("ADODB.Recordset")
    if left(session("ref"),1)="8" or left(session("ref"),1)="9"  or left(session("ref"),1)="6" then
    '    rs3.open "select requested as requested1,sacado=(select sum(picked) from shpdet a where refdoc1='" & trim(session("doc")) & "' and a.itemnumber='" & trim(session("ref")) & "'),boxes=(select count(*) from shpdet b where refdoc1='" & trim(session("doc")) & "' and b.itemnumber='" & trim(session("ref")) & "') from shphdr where refdoc1='" & trim(session("doc")) & "' and itemnumber='" & trim(session("ref")) & "'",seguridad,VaradOpenKeyset,VaradLockOptimistic
        rs3.open "select sum(requested) as requested1,sum(picked) as sacado,count(*) as contador,sum(boxes) as boxes from shphdr where refdoc1='" & trim(session("doc")) & "' and itemnumber='" & trim(session("ref")) & "'",seguridad,VaradOpenKeyset,VaradLockOptimistic
            
    else
        rs3.open "select sum(requested) as requested1,sum(picked) as sacado,count(*) as contador,sum(boxes) as boxes from shphdr where refdoc1='" & trim(session("doc")) & "' and itemnumber='" & trim(session("ref")) & "'",seguridad,VaradOpenKeyset,VaradLockOptimistic
    end if
    if cdbl(rs3("contador")) > 0 then
        pedido=rs3("requested1")
        if cdbl(cxb)>0 then
            bultosT = cdbl(rs3("requested1"))/cdbl(cxb)
        end if
        sacado=cdbl(rs3("sacado"))
        bultosS=cdbl(rs3("boxes"))
        bultosD=(cdbl(bultosT)-cdbl(bultosS))
        sacadoD = (cdbl(pedido)-cdbl(sacado))
        set rs3 = nothing
    end if 

 

 

Share this post


Link to post
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

  • Similar Content

    • By camisavp
      Boa tarde.
       
      Estou com umas boas dificuldades aqui. Preciso que, em um formulário grande, eu ao digitar o numero do prontuário, caso já exista ele cadastrado, me retorne alguns campos preenchidos automaticamente.
       
      Estou tentando montar um formulário da seguinte maneira:
       
      form:
       
      input 1: - vai buscar a informação no banco de dados. se possível, com um autopreenchimento durante a digitação
       
      input 2: - caso já exista um prontuário, popular o input com os dados retirados do banco de dados
       
      input 3: - será preenchido manualmente
       
      input 4: - caso já exista um prontuário, popular o input com os dados retirados do banco de dados
       
      input 5: - caso já exista um prontuário, popular o input com os dados retirados do banco de dados
       
      input 6: - será preenchido manualmente
       
      input 7: - será preenchido manualmente
       
      ... mais uma série de inputs preenchidos manualmente
       
      /form.
       
      Não sou um estudioso e nem estou na minha área, pois sou engenheiro, haja visto que a aplicação é residencial e ainda em asp clássico com banco de dados access. kkkkkkkkkk
       
      Faço isso como hobby.
       
      Passei duas semanas já tentando achar uma solução, porém sem sucesso.
       
      Agradeço a ajuda de quem puder colaborar.
       
      Grato
       
      Marcelo Camisa
       
    • By marlone
      Preciso fazer uma consulta no banco onde eu pego total gasto por CPF, somando cada row que for do mesmo CPF por exemplo:
       
       
      Cpf    ctro    vlr               vlrtotal
      158   166     1000         5000
      158   156     1000         5000
      158   1644   3000        5000
       
      159   168     2000         6000
      159   154     2000         6000
      159   111     2000         6000
       
      É possível?
    • By RafaGomes
      Boa tarde, seria possível realizar uma consulta da seguinte forma:
      SELECT * FROM CARGA WHERE (CASE WHEN :VARIAVEL = 2 THEN ('2', '7') WHEN :VARIAVEL = 3 THEN ('3', '9', '10') WHEN :VARIAVEL = 4 THEN '4' WHEN :VARIAVEL = 5 THEN '5' WHEN :VARIAVEL = 6 THEN '6' END) IN AD_DIAENTREGA;  
    • By lucascientista
      Boa noite, galera é o seguinte eu estou montando um script que pesquisa no banco de dados e mostrar os resultados em uma página php, bem aí que está o problema eu pesquisei alguns sistemas de paginação e de pesquisa e acabei montando meu script, no meu script a pesquisa aparece na primeira página mas quando passo para a página adiante não me é mostrado resultado nenhum já verifiquei tudo e não consigo encontrar o erro, será que alguém pode me ajudar?
       
      <?php #Incluindo a conexão no banco de dados require_once '../dao/conexao/Conexao.php'; $conexao = Conexao::getInstance(); /***********************************************/ #Aqui começa a parte a paginação e pesquisa /**********************************************/ #Limitando o número máximo de resultados que serão mostrados na tela $maximo = 1; #Armazenando o valor da página atual $pagina = isset($_GET["pagina"])? ($_GET["pagina"]): '1'; #Subtraindo 1, porque os registro começam do zero como em um array $inicio = $pagina - 1; #Multiplicamos a quantidade de registros da pagina pelo valor da pagina atual $inicio = $maximo * $inicio; #Agora chega a parte em que fazemos o SELECT para contar os resultados $sql = "SELECT * FROM centroautomotivo"; $stmt = $conexao->prepare($sql); $stmt->execute(); $contagem = $stmt->fetchAll(PDO::FETCH_ASSOC); $total = 0; if(count($contagem)){ foreach ($contagem as $linhas) { #Armazenando o total de registros da tabela para fazer a paginação $total = count($contagem); } } /******************************************************************* * Aqui vai começar a parte da pesquisa, tornando o script em um só ********************************************************************/ #Recebe o termo da pesquisa se existir $termo = (isset($_GET["termo"])) ? ($_GET["termo"]) : ''; #Executa uma pesquisa com o termo pesquisado como parametro - Este SELECT irá servir também para a paginação if(empty($termo)){ //Nada aqui } else{ $sql = "SELECT * FROM centroautomotivo WHERE nomefantasia LIKE :nomefantasia or email LIKE :email ORDER BY idCentro LIMIT $inicio,$maximo"; $stm = $conexao->prepare($sql); $stm->bindValue(':nomefantasia', '%'.$termo.'%'); $stm->bindValue(':email', '%'.$termo.'%'); $stm->execute(); $autocenters = $stm->fetchAll(PDO::FETCH_ASSOC); } <?php require_once '../includes/header.php'; require_once '../controller/paginacaoPesquisaCentro.php'; ?> <div class="container mb-5"> <h1 class="text text-center">Centros Automotivos</h1> <p class="text text-center">Encontre o centro automotivo que mais se encaixa com você</p> <!--Formulário de pesquisa com paginação--> <form method="GET" action=""> <div class="d-flex flex-column bd-highlight mb-3"> <div class="p-2 bd-highlight"><img src="../img/Logotipo.png" class=" img-fluid rounded mx-auto d-block"></div> <div class="p-2 bd-highlight d-flex justify-content-center" style="margin-top: -10px;"><input type="text" name="termo" class="form-control" style=" width: 60%;" placeholder="Pesquise pelo Centro Automotivo!"/></div> <div class="p-2 bd-highlight d-flex justify-content-center"><button type="submit" class="btn btn-outline-primary"><i class="fas fa-search"></i>&nbsp;Pesquisar</button></div> </div> </form> <!--Fim do formuláio de pesquisa--> <!--Início dos resultados da pesquisa--> <?php if(!empty($autocenters)){?> <?php foreach ($autocenters as $autocenter) { ?> <center> <div class="card mb-3" style="max-width: 540px;"> <div class="row no-gutters"> <div class="col-md-4"> <img src="../controller<?php empty($autocenter["foto"])? 'images/pic.png' : $autocenter["foto"] ?>" class="card-img img-fluid" width="150px" height="150px"> </div> <div class="col-md-8"> <div class="card-body"> <p class="card-text text-justify"><?php $autocenter["nomefantasia"]?></p> <p class="card-text text-justify"><small class="text-muted"><?=$autocenter["email"]?></small></p> </div> </div> </div> </div> </center> <?php }//Fechamento do foreach?> <div id="alignpaginacao"> <?php //determina de quantos em quantos links serão adicionados e removidos $max_links = 6; //dados para os botões $previous = $pagina - 1; $next = $pagina + 1; //usa uma funcção "ceil" para arrendondar o numero pra cima, ex 1,01 será 2 $pgs = ceil($total / $maximo); //se a tabela não for vazia, adiciona os botões if($pgs > 1 ){ echo "<br/>"; //botao anterior if($previous > 0){ echo "<div id='botaoanterior'><a href=".$_SERVER['PHP_SELF']."?termo={$termo}?pagina=$previous><input type='submit' name='bt-enviar' id='bt-enviar' value='Anterior' class='button' /></a></div>"; } else{ echo "<div id='botaoanteriorDis'><a href=".$_SERVER['PHP_SELF']."?pagina=$previous><input type='submit' name='bt-enviar' id='bt-enviar' value='Anterior' class='button' disabled='disabled'/></a></div>"; } echo "<div id='numpaginacao'>"; for($i=$pagina-$max_links; $i <= $pgs-1; $i++) { if ($i <= 0){ //enquanto for negativo, não faz nada }else{ //senão adiciona os links para outra pagina if($i != $pagina){ if($i == $pgs){ //se for o final da pagina, coloca tres pontinhos echo "<a href=".$_SERVER['PHP_SELF']."?pagina=".($i).">$i</a> ..."; }else{ echo "<a href=".$_SERVER['PHP_SELF']."?pagina=".($i).">$i</a>"; } } else{ if($i == $pgs){ //se for o final da pagina, coloca tres pontinhos echo "<span class='current'> ".$i."</span> ..."; }else{ echo "<span class='current'> ".$i."</span>"; } } } } echo "</div>"; //botao proximo if($next <= $pgs){ echo " <div id='botaoprox'><a href=".$_SERVER['PHP_SELF']."?termo={$termo}?pagina=$next><input type='submit' name='bt-enviar' id='bt-enviar' value='Proxima' class='button'/></a></div>"; }else{ echo " <div id='botaoproxDis'><a href=".$_SERVER['PHP_SELF']."?pagina=$next><input type='submit' name='bt-enviar' id='bt-enviar' value='Proxima' class='button' disabled='disabled'/></a></div>"; } } ?> </div> <?php }//Fechamento do if?> <!--Fim dos resultados da pesquisa--> <!--Início da paginação--> <!--Fim da paginação--> </div> <?php require_once '../includes/footer.php'; ?>  
      Bem aí está meu código, fico muito agradecido se puderem me ajudar.
    • By kalth
      Olá

      Então, estou fazendo uns cursos e exercícios de C# com o VS2019, abrindo e criando projetos normalmente, mas depois que meu PC desligou com uma queda de energia não consigo mais criar projetos.

      Sei que não deve ter relação, mas foi curioso. Já restaurei os padrões no Visual Studio Installer mas mesmo assim não consigo criar nada.

      O erro é: "Referência de objeto não definida para uma instância de objeto"

      Já vi vários tópicos sobre esse erro mas sempre o erro já era dentro do VS, alguma coisa no código, o meu nem chega a abrir...

      Aparece essas duas janelas do print, em sequência:


×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.