Tenho 3 páginas, incluir_proposta.asp , select_prod.asp e teste1.asp . Estou na página incluir_proposta e quando escolho um produto ou um serviço, ele abre a select_prod onde tem todos os produtos / ou todos os serviços , quando eu escolho um produto ou um serviço ele volta para a incluir_proposta, mas agora com o produto ou o serviços escolhido e exibindo na tela, podendo ser mais de um produto e mais de um serviço respectivamente. Em seguida eu clico em avançar na página incluir_proposta e vai para a página teste1.asp que é onde eu tenho que exibir os produtos e os serviços escolhidos, e os dados adicionais de cada um deles contidos na tabela.
Mas eu só estou conseguindo passar o código da proposta para a página teste1.asp o codigo dos produtos não, e eu preciso disso porque é com esse código que eu vou fazer uma consulta na tabela e buscar os dados adicionais de cada um deles nela.
segue as páginas:
incluir_proposta:
' Verifica permissao do usuario
Set conn = Server.CreateObject("ADODB.Connection") conn.Open strDB
Set rec_direitos = Server.CreateObject("ADODB.Recordset") rec_direitos.Open "SELECT * from tbDireitosUsuarios where usuario=" & Session("Codigo"),conn,1
if not rec_direitos("propostas") Then response.redirect "proibido.asp" End If
if request("op") = "delprod" then codigoProduto=request.querystring("codigoProduto") conn.Execute "DELETE From tbProdutosPropostas WHERE Proposta='" & proposta & "' AND Produtos = " & codigoProduto
elseif request("op") = "addprod" then codigo_produtos=""'inicia a variavel com vazio for each item in Request.Form if left(item,3)="chk" then
'aqui você preenche uma string com os valores dos campos que foram clicados 'o que ele faz aqui é o seguinte 'todo o campo de produto tem um nome chk+codigodoproduto 'entaum ele pegava cortava as tres primeiras letras e pegava o restante que é o codigo do produto que você precisa codigo_produtos=codigo_produtos&";"&right(item,len(item)-3)'essa string vai ter todos os código dos produtos marcados 'na sua página teste você cria uma função pra quebrar essa string e tal... 'porque ela vai no formata ;valor1;valor2;valor3 entendeu?? 'depois você passa essa variavel pelo link e tal lá em baixo eu vi que tem o response.wrtie e tal vai lá ver...
sql = "SELECT tbProdutosPropostas.Proposta, tbProdutosPropostas.Produtos from tbProdutosPropostas where tbProdutosPropostas.Proposta='" & Proposta & "' and tbProdutosPropostas.Produtos=" & right(item,len(item)-3) Set rs = Server.CreateObject("ADODB.RecordSet") rs.Open sql, conn, 1 'verifica se produto já não está incluido na tabela ProdutosPropostas if rs.bof and rs.eof then sql = "INSERT INTO tbProdutosPropostas (Proposta, Produtos, Quantidade) VALUES ('" & Proposta & "'," & right(item,len(item)-3) & ",1)" conn.Execute sql end if end if
next elseif request("op") = "addproposta" then
dataEnvio = request("dataEnvio") dataFechamento = request("dataFechamento") status = request("status")
msgErro = ""
if dataEnvio = "" then msgErro = msgErro + "Data de Envio inválida.<br>" end if
if msgErro = "" then if dataFechamento <> "" then strSql = "UPDATE tbPropostas set dataEnvio =" & CQData(dataEnvio) &", dataFechamento =" & CQData(dataFechamento) & ", status ='" & status & "' where numero ='" & proposta & "'" else strSql = "UPDATE tbPropostas set dataEnvio =" & CQData(dataEnvio) &", status ='" & status & "' where numero ='" & proposta & "'" end if conn.Execute strSql end if end if
if proposta <> "" then Set rs = Server.CreateObject("ADODB.Recordset") rs.Open "Select * from tbPropostas WHERE numero='" & proposta & "'", conn, 1 end if
contato = rs("contato")
if contato <> "" then Set rec_empresa = Server.CreateObject("ADODB.Recordset") rec_empresa.Open "Select tbcontatos.codigo as codcontato, tbEmpresas.codigo as codempresa from tbContatos,tbEmpresas WHERE tbContatos.codempresa=tbempresas.codigo and tbContatos.codigo=" & contato, conn, 1 codEmpresa = rec_empresa("codempresa") end if
Set rsEmpresaResp = Server.CreateObject("ADODB.Recordset") rsEmpresaResp.Open "SELECT tbUsuarios.empresa as emp, tbUsuarioDepartamento.Departamento as depto FROM tbUsuarios, tbUsuarioDepartamento where tbUsuarioDepartamento.Usuario = tbUsuarios.codigo and tbUsuarios.codigo =" & rs("responsavel"), conn, 1 codEmpresaResp = rsEmpresaResp("emp") codArea = rsEmpresaResp("depto")
Set rsconfig = Server.CreateObject("ADODB.Recordset") rsconfig.Open "SELECT * from tbPropostasConfiguracao", conn, 1 codproposta = rsconfig("proposta")
objetivo = "Proposta " & proposta
Set rec_produtos = Server.CreateObject("ADODB.Recordset") rec_produtos.Open "SELECT tbProdutosPropostas.quantidade as qtde, tbProdServ.c_nome as nomeProduto from tbProdutosPropostas, tbProdServ Where tbProdutosPropostas.Produtos = tbProdServ.c_numero and tbProdutosPropostas.Proposta ='" & proposta & "'",conn,1 Descricao = "" if not (rec_produtos.eof and rec_produtos.bof) then while not rec_produtos.eof Descricao = Descricao & "<br>" & rec_produtos("qtde") & " " & rec_produtos("nomeProduto") rec_produtos.movenext wend end if if Descricao = "" then Descricao = " " end if
'********************************************************************************* set rs = Server.CreateObject("ADODB.Recordset") sqlstr = "SELECT TOP 1 tbEmpresas.Empresa, tbEmpresas.codigo as codEmpresa, tbCidades.Cidade as Cidade, tbUsuarios.Nome as usuario, tbDepartamentos.Nome as departamento, tbAcoesHistorico.nome as acao, tbContatos.Contato, tbHistComercial.Data, tbHistComercial.Objetivo, tbHistComercial.Descricao, tbHistComercial.CodEmpresa FROM tbHistComercial, tbEmpresas, tbUsuarios, tbAcoesHistorico, tbContatos, tbDepartamentos, tbCidades WHERE tbEmpresas.CodCidade=tbCidades.codigo AND tbHistComercial.CodEmpresa = tbEmpresas.codigo AND tbHistComercial.CodResp = tbUsuarios.codigo AND tbContatos.codigo = tbHistComercial.codcontato AND tbHistComercial.acao = tbAcoesHistorico.codigo AND tbHistComercial.Area = tbDepartamentos.Codigo AND tbHistComercial.CodEmpresa=" & CodEmpresa & " order by tbHistComercial.codigo desc" set rs = conn.Execute(sqlstr)
Set rec_smtp = Server.CreateObject("ADODB.Recordset") rec_smtp.Open "SELECT * from tbEmpresasUsuarias where codigo =" & Session("Empresa"),conn,1
' ' Envia e-mail, comunicando a Acao ' Set Mail = Server.CreateObject("Persits.MailSender") ' Mail.Host = rec_smtp("smtp") 'Especifica um servidor de SMTP valido ' ' Mail.From = rec_smtp("smtpsender") ' Mail.FromName = rec_smtp("smtpnome") ' ' Mail.Username = rec_smtp("smtplogin") ' Mail.Password = rec_smtp("smtppassword") ' ' Set rec_emails = Server.CreateObject("ADODB.Recordset") ' rec_emails.Open "SELECT email from tbUsuarios where tbUsuarios.codigo = " & session("codigo") & " or tbUsuarios.codigo in (select usuario from tbNotificacao where acao=" & codProposta & " and Linha= 17 AND empresa=" & Session("Empresa") & ")",conn,1 ' while not rec_emails.eof ' Mail.AddAddress rec_emails("email") ' rec_emails.movenext ' wend ' rec_emails.close ' set rec_emails=nothing ' ' Mail.Subject = rs("Acao") & " - " & rs("Empresa") ' ' Mensagem = "<font face=Verdana size=2><b>Empresa:</b> <a href='http://192.168.0.1/admin/cadastro/index_frame.asp?URL=destino.asp?URL=consulta_emp.asp?CodEmpresa=" & rs("codEmpresa") & "'>"& rs("Empresa") &"</a><br>" ' ' Mensagem = Mensagem & "<font face=Verdana size=2><b>Cidade:</b> "& rs.fields("Cidade") &"<br>" ' Mensagem = Mensagem & "<font face=Verdana size=2><b>Responsável:</b> "& rs.fields ("Usuario") &"<br>" ' Mensagem = Mensagem & "<font face=Verdana size=2><b>Área de Atuação:</b> "& rs("Departamento") &"<br>" ' Mensagem = Mensagem & "<font face=Verdana size=2><b>Contato:</b> "& rs.fields("Contato") &"<br>" ' Mensagem = Mensagem & "<font face=Verdana size=2><b>Data:</b> "& Date &"<br>" ' Mensagem = Mensagem & "<font face=Verdana size=2><b>Objetivo:</b> "& Objetivo &"<br>" ' Mensagem = Mensagem & "<font face=Verdana size=2><b>Descrição:</b><br>"& Descricao &"</font>" ' ' Mail.Body = Mensagem ' Mail.IsHTML = True ' ' Mail.SendtoQueue ' ' On Error Resume Next ' If Err <> 0 Then ' Response.Write "Error encountered: " & Err.Description ' End If ' on error goto 0 ' ' rec_smtp.close ' set rec_smtp = nothing
<tr bgcolor="<%=Session("Cor1")%>"> <td width="100%" colspan="2"> <font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#FFFFFF"><b>Número: </b> </font> <% msg = "O campo número é gerado pelo sistema para identificação da proposta.<br><br>" msg = msg + "Não é possível preencher o campo manualmente." %> <a href="java script:abrepopup('help.asp?msg=<%=msg%>&campo=Número','janelaconsulta','250','200','yes');" class="branco">?</a>
[codebox]<% 'Verifica permissao do usuario Set rec_direitos = Server.CreateObject("ADODB.Recordset") rec_direitos.Open "SELECT * from tbDireitosUsuarios where usuario=" & Session("Codigo"),conn,1
if not rec_direitos("propostas") Then response.redirect "proibido.asp" End If
if request("op") = "prod" then sql = "select tbProdServ.C_numero as codigoProduto, tbProdServ.C_nome as nomeProduto, tbProdServ.descricao as descricao, tbProdServ.c_fabricante as fabricante,tbProdServ.tipo as tipo from tbProdServ WHERE ativo = 1 and C_Obsoleto = 0 and tipo = 'produto' " else sql = "select tbProdServ.C_numero as codigoProduto, tbProdServ.C_nome as nomeProduto, tbProdServ.descricao as descricao, tbProdServ.c_fabricante as fabricante,tbProdServ.tipo as tipo from tbProdServ WHERE ativo = 1 and C_Obsoleto = 0 and tipo = 'servico' " end if
if request.form("descricao")<>"" then descricao = request.form("descricao") descricao = replace(descricao,"a","[a,á,à,ã,â,ä]") descricao = replace(descricao,"e","[e,é,è,ê,ë]") descricao = replace(descricao,"i","[i,í,ì,î,ï]") descricao = replace(descricao,"o","[o,ó,ò,õ,ô,ö]") descricao = replace(descricao,"u","[u,ú,ù,û,ü]") sql = sql & " and tbProdServ.descricao LIKE '%" & descricao & "%' " end if
if request.form("nome")<>"" then nome = request.form("nome") nome = replace(nome,"a","[a,á,à,ã,â,ä]") nome = replace(nome,"e","[e,é,è,ê,ë]") nome = replace(nome,"i","[i,í,ì,î,ï]") nome = replace(nome,"o","[o,ó,ò,õ,ô,ö]") nome = replace(nome,"u","[u,ú,ù,û,ü]") sql = sql & " and tbProdServ.C_nome LIKE '%" & nome & "%'" end if
if request.form("grupo")<>"" then grupo = request.form("grupo") grupo = replace(grupo,"a","[a,á,à,ã,â,ä]") grupo = replace(grupo,"e","[e,é,è,ê,ë]") grupo = replace(grupo,"i","[i,í,ì,î,ï]") grupo = replace(grupo,"o","[o,ó,ò,õ,ô,ö]") grupo = replace(grupo,"u","[u,ú,ù,û,ü]") sql = sql & " and tbProdServ.C_numero in (select tbGruposxProdutos.produto from tbGruposxProdutos where grupo=" & grupo & ")" end if
if request.form("fabricante")<>"" then sql = sql & " and tbProdServ.C_fabricante LIKE '%" & request.form("fabricante") & "%'" end if %>
<form method="post" action="index.asp?page=<%=request("from")%>&proposta=<%=proposta%>" name="form1"> <table cellpadding="2" cellspacing="2" align="center" border="0"> <tr align="center"> <td colspan="2"> <font face="Verdana, Arial, Helvetica, sans-serif" size="3" color="#000000"> <!-- <% if request.querystring("op") = "prod" then %> <b> Selecionar Produtos a serem adicionados:<br><br> </b> <% else %> --> <b> Selecionar Itens a serem adicionados:<br><br> </b> <!--<% end if %> --> </font> </td> </tr> <tr bgcolor="<%= session("cor1") %>"> <td> <font color = white> <b> Nome </b> </font> </td> <td> <font color = white> <b> Descrição </b> </font> </td> <td> <font color = white> <b> Fabricante </b> </font> </td> </tr>
<% Set rec_produtos = Server.CreateObject("ADODB.Recordset") sql = sql & " order by tbProdServ.C_nome"
e a teste1 que é onde eu quero exibir as variáveis, para depois fazer a consulta:
<html> <head> <title>Marcelo</title>
</head>
<Body>
<% 'aqui você pega a string que foi passada 'lembra que se você quiser outro nome sai mudando em todo lugar hein..... codigo_produtos=request.QueryString("codigo_produtos")
'aqui quebra a string e tal.... usando o separador que eu coloquei lá que é o ; dim codigos_dos_produtos codigos_dos_produtos=Split(codigo_produtos, ";", -1, 1) 'pronto agora você tem um array com o total de produtos selecionados
response.Write("Código dos Produtos Selecionados") for x=0 to ubound(codigo_dos_Produtos)
response.Write(codigos_dos_produtos(x)&"<br />") next
'Verifica permissao do usuario Set rec_direitos = Server.CreateObject("ADODB.Recordset")
sql="SELECT * from tbDireitosUsuarios where usuario="&Session("Codigo")&";" 'response.write(sql) 'response.end()
'aqui você verifica a instrução sql e ve se está certa.......
rec_direitos.Open sql,conn,1
if not rec_direitos("propostas") Then response.redirect "proibido.asp" End If
%>
</Body>
</Html>[/codebox]
desculpa a desformatação do tópico, mas o código está assim =T e eu já andei discutindo com alguns amigos pra ver se resolvia, por isso os comentários no código !
Pergunta
noiss
Bom dia,
Tenho 3 páginas, incluir_proposta.asp , select_prod.asp e teste1.asp . Estou na página incluir_proposta e quando escolho um produto ou um serviço, ele abre a select_prod onde tem todos os produtos / ou todos os serviços , quando eu escolho um produto ou um serviço ele volta para a incluir_proposta, mas agora com o produto ou o serviços escolhido e exibindo na tela, podendo ser mais de um produto e mais de um serviço respectivamente. Em seguida eu clico em avançar na página incluir_proposta e vai para a página teste1.asp que é onde eu tenho que exibir os produtos e os serviços escolhidos, e os dados adicionais de cada um deles contidos na tabela.
Mas eu só estou conseguindo passar o código da proposta para a página teste1.asp o codigo dos produtos não, e eu preciso disso porque é com esse código que eu vou fazer uma consulta na tabela e buscar os dados adicionais de cada um deles nela.
segue as páginas:
incluir_proposta:
select_prod :
'Verifica permissao do usuario
Set rec_direitos = Server.CreateObject("ADODB.Recordset")
rec_direitos.Open "SELECT * from tbDireitosUsuarios where usuario=" & Session("Codigo"),conn,1
if not rec_direitos("propostas") Then
response.redirect "proibido.asp"
End If
proposta = request.querystring("proposta")
'codigo_produtos=resquest.querystring("codigo_produtos")
if request("op") = "prod" then
sql = "select tbProdServ.C_numero as codigoProduto, tbProdServ.C_nome as nomeProduto, tbProdServ.descricao as descricao, tbProdServ.c_fabricante as fabricante,tbProdServ.tipo as tipo from tbProdServ WHERE ativo = 1 and C_Obsoleto = 0 and tipo = 'produto' "
else
sql = "select tbProdServ.C_numero as codigoProduto, tbProdServ.C_nome as nomeProduto, tbProdServ.descricao as descricao, tbProdServ.c_fabricante as fabricante,tbProdServ.tipo as tipo from tbProdServ WHERE ativo = 1 and C_Obsoleto = 0 and tipo = 'servico' "
end if
if request.form("descricao")<>"" then
descricao = request.form("descricao")
descricao = replace(descricao,"a","[a,á,à,ã,â,ä]")
descricao = replace(descricao,"e","[e,é,è,ê,ë]")
descricao = replace(descricao,"i","[i,í,ì,î,ï]")
descricao = replace(descricao,"o","[o,ó,ò,õ,ô,ö]")
descricao = replace(descricao,"u","[u,ú,ù,û,ü]")
sql = sql & " and tbProdServ.descricao LIKE '%" & descricao & "%' "
end if
if request.form("nome")<>"" then
nome = request.form("nome")
nome = replace(nome,"a","[a,á,à,ã,â,ä]")
nome = replace(nome,"e","[e,é,è,ê,ë]")
nome = replace(nome,"i","[i,í,ì,î,ï]")
nome = replace(nome,"o","[o,ó,ò,õ,ô,ö]")
nome = replace(nome,"u","[u,ú,ù,û,ü]")
sql = sql & " and tbProdServ.C_nome LIKE '%" & nome & "%'"
end if
if request.form("grupo")<>"" then
grupo = request.form("grupo")
grupo = replace(grupo,"a","[a,á,à,ã,â,ä]")
grupo = replace(grupo,"e","[e,é,è,ê,ë]")
grupo = replace(grupo,"i","[i,í,ì,î,ï]")
grupo = replace(grupo,"o","[o,ó,ò,õ,ô,ö]")
grupo = replace(grupo,"u","[u,ú,ù,û,ü]")
sql = sql & " and tbProdServ.C_numero in (select tbGruposxProdutos.produto from tbGruposxProdutos where grupo=" & grupo & ")"
end if
if request.form("fabricante")<>"" then
sql = sql & " and tbProdServ.C_fabricante LIKE '%" & request.form("fabricante") & "%'"
end if
%>
<form method="post" action="index.asp?page=<%=request("from")%>&proposta=<%=proposta%>" name="form1">
<table cellpadding="2" cellspacing="2" align="center" border="0">
<tr align="center">
<td colspan="2">
<font face="Verdana, Arial, Helvetica, sans-serif" size="3" color="#000000">
<!-- <% if request.querystring("op") = "prod" then %>
<b> Selecionar Produtos a serem adicionados:<br><br> </b>
<% else %> -->
<b> Selecionar Itens a serem adicionados:<br><br> </b>
<!--<% end if %> -->
</font>
</td>
</tr>
<tr bgcolor="<%= session("cor1") %>">
<td>
<font color = white> <b> Nome </b> </font>
</td>
<td>
<font color = white> <b> Descrição </b> </font>
</td>
<td>
<font color = white> <b> Fabricante </b> </font>
</td>
</tr>
<%
Set rec_produtos = Server.CreateObject("ADODB.Recordset")
sql = sql & " order by tbProdServ.C_nome"
rec_produtos.Open sql, conn, 1
while not rec_produtos.eof
ct=ct+1
if ct/2 = ct\2 then
cor = "#EEEEEE"
else
cor = "#FFFFCC"
end if
%>
<tr>
<td bgcolor="<%= cor %>">
<input type="checkbox" value="<%= rec_produtos("codigoProduto") %>" name="chk<%= rec_produtos("codigoProduto") %>">
<a href="index.asp?page=cadastrar_produtos&opcao=detalhes&c_numero=<%= rec_produtos("codigoProduto") %>" class="ff"> <%= rec_produtos("nomeProduto") %> </a>
</td>
<td bgcolor="<%= cor %>">
<a href="index.asp?page=cadastrar_produtos&opcao=detalhes&c_numero=<%= rec_produtos("codigoProduto") %>" class="ff"> <%= rec_produtos("descricao") %> </a>
</td>
<td bgcolor="<%= cor %>">
<%= rec_produtos("fabricante") %>
</td>
</tr>
<%rec_produtos.movenext
wend
%>
<tr>
<td align="center" colspan="2">
<input type="hidden" name="cod" value="<%session("Codigo_Produtos")%>">
<input type="hidden" name="op" value="addprod">
<input type="submit" name="submeter" value="Adicionar" class="btn">
<input type="button" name="voltar" value="Voltar" class="btn" onClick="location.href='java script:history.go(-1);';">
</td>
</tr>
</table>
</form>
e a teste1 que é onde eu quero exibir as variáveis, para depois fazer a consulta:
desculpa a desformatação do tópico, mas o código está assim =T e eu já andei discutindo com alguns amigos pra ver se resolvia, por isso os comentários no código !
quem tiver a boa vontade de ajudar... agradeço !!
Editado por noissLink para o comentário
Compartilhar em outros sites
8 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.