ViniciusJau Postado Dezembro 7, 2004 Denunciar Share Postado Dezembro 7, 2004 eu tenho um campo de numero no meu banco de dados do acess dai eu tenho um formulário que tem o nome da pessoa e um campo de numerocomo eu faço pra inserir dados em um formulário do acess que o campo é numero.. inserir o numero eu até consegui , eu queria era somar os valores que fossem adicionados posteriormente...será qu edeu pra entender o que eu quis dizer ?? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Deividy Postado Dezembro 7, 2004 Denunciar Share Postado Dezembro 7, 2004 como assim somar posterior mente você diz somar o resultado disso?numa outra tela? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ViniciusJau Postado Dezembro 7, 2004 Autor Denunciar Share Postado Dezembro 7, 2004 somar, por exmplo eu já tenho um valor lá cadastrado 20 por exemplodai a pessoa va lá e coloca 10 dai ele soma, fica com 30 por exemplo !! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Deividy Postado Dezembro 7, 2004 Denunciar Share Postado Dezembro 7, 2004 faz assim Select SUN(tabela) From banco_de_dados Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ViniciusJau Postado Dezembro 7, 2004 Autor Denunciar Share Postado Dezembro 7, 2004 então eu teria que fazer assim por exemplo:codigo antigoComandoSQL = "SELECT * FROM operadora WHERE Central='Apae Jaú'" inserindo os dados ComandoSQL = "SELECT SUN FROM operadora WHERE Central='Apae Jaú'" ComandoSQL = "INSERT INTO operadora (Quantidade_ope, Valor)"não funciona Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 dark0 Postado Dezembro 7, 2004 Denunciar Share Postado Dezembro 7, 2004 Uma referencia:http://www.techonthenet.com/sql/sum.htmUm exemplo:SQL = "Select SUM(campo) as total from tabela where campo=valor"set RS = Conexao.Execute(SQL)Total: <%=rs("total")%> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 [ GuTo ] Postado Dezembro 7, 2004 Denunciar Share Postado Dezembro 7, 2004 Veja aki uma boa explicação que dei estes dias.http://scriptbrasil.com.br/forum/index.php...ndpost&p=214249 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ViniciusJau Postado Dezembro 7, 2004 Autor Denunciar Share Postado Dezembro 7, 2004 vixe boiei grandão.... vou mostrar meu codigo...tenho esse arquivo alterar.asp<html><head><title>Amar</title></head><body><center><font face="Arial" size="2"><b>Operadoras</b></font></center><%If IsEmpty( Request.Form("submit") ) ThenSet Conexao = Server.CreateObject("ADODB.Connection")Constr = "provider=microsoft.jet.oledb.4.0; data source=" & server.mappath("banco_day.mdb")Conexao.Open ConstrComandoSQL = "SELECT * FROM operadora WHERE Central='Apae Jaú'"Set bd = Server.CreateObject("ADODB.Recordset")bd.CursorLocation = 2bd.CursorType = 0bd.LockType = 3bd.Open ComandoSQL, conexao,,, &H0001If Not bd.EOF Then bd.Move Request.QueryString("n")%><form method=post action="<%=Request.ServerVariables("script_name")%>"><input type=hidden name="ComandoSQL" value="<%=ComandoSQL%>"><input type=hidden name="Conexao" value="<%=Constr%>"><table border=0 width="80%" align=center> <tr> <td align=right valign=top><font face="Arial" size="2">Operadora:</font></td> <td align=left valign=top> <font face="Arial" size="2"> <b><%=bd("Operadora")%></b> </td> </tr> <tr> <td align=right valign=top><font face="Arial" size="2">Quantidade de Fichas:</font></td> <td align=left valign=top> <font face="Arial" size="2"> <input type=text name="Quantidade_ope" value="<%=bd("Quantidade_ope")%>" size=15 maxlength=50 style="{<font-family:Arial; font-size:12}"> </td> </tr> <tr> <td align=right valign=top><font face="Arial" size="2">Maior Valor de Doação:</font></td> <td align=left valign=top> <font face="Arial" size="2"> <input type=text name="Valor" value="<%=bd("Valor")%>" size=15 maxlength=50 style="{<font-family:Arial; font-size:12}"> </td> </tr> </font></table><center> <input type=submit name=submit value=Ok style="{<font-family:Arial; font-size:12}"> </center><input type="hidden" name="n" value="<%if Not IsEmpty(Request.QueryString("n"))then : Response.Write Request.QueryString("n") Else : Response.Write "0" : End If%>"></form><center><%If Request.QueryString("n") > 0 then Response.Write "<a href=" & Request.ServerVariables("SCRIPT_NAME") & "?n=" & Request.QueryString("n") - 1 & "><< Operadora Anterior</a> "End If bd.MoveNext If Not bd.EOF then Response.Write " <a href=" & Request.ServerVariables("SCRIPT_NAME") & "?n=" & Request.QueryString("n") + 1 & ">Próxima Operadora >></a>" End IfConexao.CloseSet bd = NothingSet Conexao = Nothing%></center><% End IfElse If Not IsEmpty(Request.Form("submit")) AND Trim(Request.Form("Operadora")) <> "" AND Trim(Request.Form("Quantidade_ope")) <> "" AND Trim(Request.Form("Valor")) <> "" Then Set Conexao = Server.CreateObject("ADODB.Connection") Conexao.Open Request.Form("Conexao") ComandoSQL = Request.Form("ComandoSQL") Set bd = Server.CreateObject("ADODB.Recordset") bd.CursorLocation = 2 bd.CursorType = 0 bd.LockType = 3 bd.Open ComandoSQL, Conexao,,, &H0001 bd.Move Request.Form("n") bd("Operadora") = Server.HTMLEncode(Request.Form("Operadora")) bd("Quantidade_ope") = Server.HTMLEncode(Request.Form("Quantidade_ope")) bd("Valor") = Server.HTMLEncode(Request.Form("Valor")) bd.UpdateBatch bd.Requery%> <font face="Arial" size="2"> <center><br>Os dados foram enviados com sucesso ! <br><a href="enviado.htm"><b>Clique aqui</b></a> para continuar</font></center><% Else%> <font face="Arial" size="2"> <center><br>Alguns dados necessários não foram preenchidos corretamente <br><a href="javascript:history.go(-1)"><b>Clique aqui</b></a> para voltar</font></center><% End IfEnd If%></body></html>eu tentei mudar p/ SQL = "Select SUM(valor, quantidade_ope) as total from operadora where central='Apae Jaú'"set RS = Conexao.Execute(SQL)eu tenho uqe colocar dois campos porque são dois campos que pode se alterar..mais e esse <%=rs("total")%> como eu vou usar ele ?? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 dark0 Postado Dezembro 7, 2004 Denunciar Share Postado Dezembro 7, 2004 você ta dizendo pra selecionar os valores e dar o resultado do calculo em TOTAL (pode ver que você colocou AS TOTAL)então, para ver o resultado da soma, você usa rs("total")onde rs é o objeto que executa o sqlMas...não sei se o SUM aceita 2 campos.. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 cyberalexxx Postado Dezembro 7, 2004 Denunciar Share Postado Dezembro 7, 2004 Acredito que não seja possivel essa construção: SQL = "Select SUM(valor, quantidade_ope) as total from operadora where central='Apae Jaú'" tenta assim:SQL = "Select SUM(valor) as somavalor, SUM(quantidade_ope) as somaquant from operadora where central='Apae Jaú'" feito isso voce pode pode realizar as operações que quiser com os os dois campos: Rs.Fields("somavalor") e Rs.Fields("somaquant"). Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ViniciusJau Postado Dezembro 8, 2004 Autor Denunciar Share Postado Dezembro 8, 2004 ahn tá, agora tudo faz sentido !!!! só que acho que vou ter que mudar alguma outra coisa,porque deu erro nessa linha:<b><%=bd("Operadora")%></b>que é a linha uq mostra qual cadastro eu estou alterando.... pelo erro q deu, eu acho que ele não reconhece o campo no meu banco ADODB.Recordset error '800a0cc1' Item cannot be found in the collection corresponding to the requested name or ordinal. /teste/altera_ope1.asp, line 32 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 cyberalexxx Postado Dezembro 8, 2004 Denunciar Share Postado Dezembro 8, 2004 (editado) Voce tem que incluir o campo operadora no select:SQL = "Select Operadora, SUM(valor) as somavalor, SUM(quantidade_ope) as somaquant from operadora where central='Apae Jaú'"OBS: Nunca misturei um campo normal, com a soma de outros campos, testa ai e v o q dá!!! qualquer coisa pensamos em outra saida. Editado Dezembro 8, 2004 por cyberalexxx Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ViniciusJau Postado Dezembro 8, 2004 Autor Denunciar Share Postado Dezembro 8, 2004 eu consegui fazer o script, só que ao invés dele somar ele está alterando os dados, ele exibe a quantidade atual e a pessoa apaga ela e insere a nova quantidade...só que quando ele altera os valores ele está mudando de todos os registros do banco, como eu posso fazer para ele alterar somente o registro que é exibido pelo codigo <%=bd("nome")%> estou postando o codigo como ele ficou<html> <head> <title>Amar</title> </head> <body> <center><font face="Arial" size="2"><b>Operadoras</b></font></center> <% If IsEmpty( Request.Form("submit") ) Then Set Conexao = Server.CreateObject("ADODB.Connection") Constr = "provider=microsoft.jet.oledb.4.0; data source=" & server.mappath("banco_day.mdb") Conexao.Open Constr ComandoSQL = "SELECT * FROM Operadora WHERE Central='Apae Jaú'" Set bd = Server.CreateObject("ADODB.Recordset") bd.CursorLocation = 2 bd.CursorType = 0 bd.LockType = 3 bd.Open ComandoSQL, conexao,,, &H0001 If Not bd.EOF Then bd.Move Request.QueryString("n") %> <form method=post action="<%=Request.ServerVariables("script_name")%>"> <input type=hidden name="ComandoSQL" value="<%=ComandoSQL%>"> <input type=hidden name="Conexao" value="<%=Constr%>"> <table border=0 width="80%" align=center> <tr> <td align=right valign=top><font face="Arial" size="2">Operadora:</font></td> <td align=left valign=top> <font face="Arial" size="2"> <b></b><%=bd("Nome")%></b> </td> </tr> <tr> <td align=right valign=top><font face="Arial" size="2">Quantidade de Fichas:</font></td> <td align=left valign=top> <font face="Arial" size="2"> <input type=text name="Quantidade_ope" value="<%=bd("Quantidade_ope")%>" size=15 maxlength=50 style="{<font-family:Arial; font-size:12}"> </td> </tr> <tr> <td align=right valign=top><font face="Arial" size="2">Maior Valor de Doação:</font></td> <td align=left valign=top> <font face="Arial" size="2"> <input type=text name="Valor" value="<%=bd("Valor")%>" size=15 maxlength=50 style="{<font-family:Arial; font-size:12}"> </td> </tr> </font> </table> <center> <input type=submit name=submit value=Ok style="{<font-family:Arial; font-size:12}"> </center> <input type="hidden" name="n" value="<%if Not IsEmpty(Request.QueryString("n"))then : Response.Write Request.QueryString("n") Else : Response.Write "0" : End If%>"> </form> <center> <% If Request.QueryString("n") > 0 then Response.Write "<a href=" & Request.ServerVariables("SCRIPT_NAME") & "?n=" & Request.QueryString("n") - 1 & "><< Operadora Anterior</a> " End If bd.MoveNext If Not bd.EOF then Response.Write " <a href=" & Request.ServerVariables("SCRIPT_NAME") & "?n=" & Request.QueryString("n") + 1 & ">Próxima Operadora >></a>" End If Conexao.Close Set bd = Nothing Set Conexao = Nothing %> </center> <% End If Else If Not IsEmpty(Request.Form("submit")) AND Trim(Request.Form("valor")) <> "" AND Trim(Request.Form("Valor")) <> "" AND Trim(Request.Form("Quantidade_ope")) <> "" Then set conn = createobject("adodb.connection") conn.open "provider=microsoft.jet.oledb.4.0; data source=" & server.mappath("banco_day.mdb") conn.Execute("UPDATE operadora SET valor="&Request.Form("Valor")&", quantidade_ope="&Request.Form("Quantidade_ope")&" WHERE Central='Apae Jaú'" ) %> <font face="Arial" size="2"> <center><br>Os dados foram enviados com sucesso ! <br><a href="enviado.htm"><b>Clique aqui</b></a> para continuar</font></center> <% Else %> <font face="Arial" size="2"> <center><br>Alguns dados necessários não foram preenchidos corretamente <br><a href="javascript:history.go(-1)"><b>Clique aqui</b></a> para voltar</font></center> <% End If End If %> </body> </html> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Deividy Postado Dezembro 8, 2004 Denunciar Share Postado Dezembro 8, 2004 nesse caso você tem que mandar tambem para a outra página tipo um id caso tenha no seu banco de dados ou algo se sejá unico em todos os registro para que ele possa fazer uma comparação gravar na ordem certa Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ViniciusJau Postado Dezembro 8, 2004 Autor Denunciar Share Postado Dezembro 8, 2004 eu não tenho nehum ID no meu banco... mais o nome que ele exibe , é ele que deveria ser alterado:<%=bd("Nome")%>ele está alterando todos os registros que são desse campoconn.Execute("UPDATE operadora SET valor="&Request.Form("Valor")&", quantidade_ope="&Request.Form("Quantidade_ope")&" WHERE Central='Apae Jaú'" )eu tentei colocar <%=bd("Nome")%> ali onde está em vermelho, mais não deu certo, não sei se meu raciocinio estava certo.. masi num funciona tbmmm Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Deividy Postado Dezembro 8, 2004 Denunciar Share Postado Dezembro 8, 2004 isso que esta em vermelho é unico no banco de dados? digo tem ele só desse registro? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ViniciusJau Postado Dezembro 8, 2004 Autor Denunciar Share Postado Dezembro 8, 2004 não na verdade meu banco está mais ou menos assimNome Central Valor Quantidade_opeMaria Apae Jau 20 15Renata Apae SBC 5 20Jessica Apae Jau 33 15Priscila Apae Jau 10 25Fernanda Apae Rondonia 19 15Jessica Apae Rondonia 33 15Priscila Apae Jau 10 25Fernanda Apae Rondonia 19 15na verdade meu codigo exibe um nome que está na coluna nome e eu queria alterar só esse campo.... mais qunado eu altero, ele altera o campo de todos os nomes que são da Apae Jaú Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ViniciusJau Postado Dezembro 8, 2004 Autor Denunciar Share Postado Dezembro 8, 2004 se eu colocar assim por exemplo:conn.Execute("UPDATE operadora SET valor="&Request.Form("Valor")&", quantidade_ope="&Request.Form("Quantidade_ope")&" WHERE Nome='Maria'" )dai sim ele altera só os valores do campos, que está esse nome... dai qunado eu vou pro proximo nome ele altera o nome da maria... indepednete do nome que está sendo exibido.... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 dark0 Postado Dezembro 10, 2004 Denunciar Share Postado Dezembro 10, 2004 então.. você precisa colocar no where a variavel que guarda o nome .. pois é dinamico, não? Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
ViniciusJau
eu tenho um campo de numero no meu banco de dados do acess
dai eu tenho um formulário que tem o nome da pessoa e um campo de numero
como eu faço pra inserir dados em um formulário do acess que o campo é numero..
inserir o numero eu até consegui ,
eu queria era somar os valores que fossem adicionados posteriormente...
será qu edeu pra entender o que eu quis dizer ??
Link para o comentário
Compartilhar em outros sites
18 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.