Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Ola amigos. Ja procurei neste forum e tambem ja vasculhei na net e nao consegui achar uma saida. Sou meio fraco em APS, mas ja faço algumas coisas.
Tenho uma tabela com o item GEX (empresas) e os municipios onde tem essas empresas. Quero fazer uma pesquisa, selecionando a empresa num combo e o outro combo me coloca as cidades onde tem essa empresa selecionada. No primeiro eu consegui selecionar as empresas, mas nao consigo mostrar as cidades no segundo. O BD é Access e utilizo o ASP. Se alguem puder ajudar, eu vou ficar muito feliz. Segue o codigo abaixo:
// GEX - Nome da Empresa
// APS - Cidade da Empresa, ambos na mesma tabela do BD Dados.mdb
// A funcao go() abriria uma pagina com os dados selecionados quando se clicar no botao Exibir. Se tivesse somente o primeiro combo a funcao go eu tinha feito abaixo e tava funcionando ok.
<script language="Javascript">
function go() {
var Opc=document.abcd.ComboGEX.options[document.abcd.ComboGEX.selectedIndex].value;
if (Opc==""){
alert("Por favor, Escolha a Empresa");
return(false);}
document.location = document.abcd.a.options[document.abcd.a.selectedIndex].value
}
</script>
<script language="JavaScript">
<%
Dim mDataBaseDir
mDataBaseDir = "Dados.mdb"
' Abre DSNless coneccao com Cartorios.mdb '
set connGlobal = server.createobject("ADODB.Connection")
connGlobal.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ= " & server.mappath(mDataBaseDir)
' montando SQL para pegar os dados '
mSQL = "SELECT * FROM Dados ORDER BY GEX"
'* Executa a sequencia SQL *'
set rsGlobal = connGlobal.execute(mSQL)
Dim Gerencia(50), Gex1, Gex2, n
Gex1 = rsGlobal("GEX")
Gerencia(0) = rsGlobal("GEX")
// Variavel utilizada pra contar a quantidade pra cada GEX (Empresa)
n = 0
while not rsGlobal.eof
if ( rsGlobal("GEX") <> Gex1 ) then
Gex1 = rsGlobal("GEX")
n = n + 1
Gerencia(n) = rsGlobal("GEX")
end if
// movendo para o próximo registro
rsGlobal.movenext
wend
'* Fechando o arquivo e a conexao *'
rsGlobal.close
set rsGlobal = nothing
connGlobal.close
set connGlobal = nothing
%>
<form name="abcd">
<p style="margin-left: 10px" align="left">
<select name="ComboGEX" size="1" style="font-family: Tahoma; font-size: 10px">
<option selected>.:. Escolha a Gerência .:.</option>
<% for p=0 to n %>
<% Dim Link %>
<% Link = "javascript:AbreJanela('win','MostraGerencia.asp?Unidade" & Gerencia(p) & "',10,20,700,500,0,0,0,1,1)" %>
<Option value = "<% =Gerencia(p) %>"><% =Gerencia(p) %></Option>
<% next %>
</select>
// [b]ate aqui ta tudo ok, pois o combo é preenchido com todas as empresas (GEX)[/b]
<% Dim NomeGEX
// pegando o valor do primeiro combo
NomeGEX = Request.QueryString("ComboGEX")
// Aqui eu mandei escrever só pra ver se ele mostra o resultado do primeiro combo selecionado, mas é mostrado apenas o Texto Empresa
// e se tivesse funcionando mostraria "Empresa: " + o valor selecionado no primeiro combo
response.write "Empresa: " & NomeGEX & "<br>"
mBD = "Dados.mdb"
' * Abre conexao com o mdb *'
set connGlobal = server.createobject("ADODB.Connection")
connGlobal.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ= " & server.mappath(mBD)
'* montando SQL para pegar os dados *'
mSQL = "SELECT * FROM Dados Where GEX = '" & NomeGex & "'"
'* Executa a sequencia SQL *'
set rsGlobal = connGlobal.execute(mSQL)
%>
<select name="ComboUnidade" size="1" style="font-family: Tahoma; font-size: 10px">
<option selected>.:. Escolha a Unidade .:.</option>
<% while not rsGlobal.eof %>
<Option value = "<% =RsGlobal("APS") %>"><% =rsGlobal("APS") %></Option>
<% rsGlobal.movenext %>
<% wend %>
</select>
<%
' Fechando o arquivo e a conexao '
rsGlobal.close
set rsGlobal = nothing
connGlobal.close
set connGlobal = nothing
%>
<input type="button" value="Exibir" onClick="go()" style="font-family: Tahoma; font-size: 10px">
</p>
</form>
// fim
Carregando comentários...