Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Adilson_Web_2007

[Resolvido]  para construir uma busca dinamica

Recommended Posts

Olá pessoal, estou com uma dúvida. Eu tenho um formulario com 8 campo, para ser digiatado para a busca. Ate aqui beleza. O meu probblema é como fazer para identificar quantos campos estão sendo passados, ai eu usei a propriedade do ASP o objeto Request.Form.Count mas ele traz todo os valores dos campos. Eu goataria , por exemplo, o usuario digitou apenas num campo então quero pesquisar só com essa informação. Eu tentei compara com outra propriedade do ASP, o objeto o Request.Form.Item(x), para saber quantos campos foram selecionado, mas não funciona. Alguém pode me dar uma ajuda por favor. Desde já eu agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu faço assim com nuscas veja:

 

strSql = "Select * From Tb_Cliente"if NOME <> "" Then   strSql = strSql & " Where Nome=' "& txtNome &" ' "end ifconexao.execute (strSql)

e assim por diante, assim se o nome do seu form for diferente de vazio quer dizer que ele foi preenchido, assim concatena sua Query com a clausula where, caso tenha mais de uma validação você faz com "AND" e tal, fica facil assim

 

Agora caso o Nome do form nao for preenchido entao ele nao entra no Where e exibe tudo no caso acima

 

acho qeu da pra ter uma ideia masi ou menos né

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou testar , valeu a ajuda. Me tira uma duvida desse modo se os oitos campos estiverem peenchidos eles irão ficar na clausa where?

 

-----------------------------------------------------------------------------------

Post Mesclado

-----------------------------------------------------------------------------------

 

Não deu certo ou eu não soube fazer eu fiz assim:

sqlContrato = "Select codigo_contrato, contratante, contratada,anuente, interviniente, situacao_contrato, titulo_contrato,exibir From cad_contrato" if trim(request.form("numero")) <> "" thensqlContrato = sqlContrato & " Where codigo_contrato like '%"& trim(request.form("numero")) &"%' and  exibir ='SIM' "end ifif trim(request.form("titulo_contrato")) <> ""  thensqlContrato = sqlContrato & " Where titulo_contrato like '%"& trim(request.form("titulo_contrato")) &"%' and  exibir ='SIM' "end ifif trim(request.form("contratante")) <> "" thensqlContrato = sqlContrato & " Where contratante like '%"& trim(request.form("contratante")) &"%' and exibir ='SIM' "end ifif trim(request.form("contratada")) <> ""  thensqlContrato = sqlContrato & " Where contratada like '%"& trim(request.form("contratada")) &"%' and   exibir ='SIM' "end ifif trim(request.form("sit")) <> ""  thensqlContrato = sqlContrato & " Where situacao_contrato like '%"& trim(request.form("sit")) &"%' and   exibir ='SIM' "end ifif trim(request.form("interviniente")) <> "" thensqlContrato = sqlContrato & " Where interviniente like '%"& trim(request.form("interviniente")) &"%' and  exibir ='SIM' "end ifif trim(request.form("tipo_contrato")) <> "" thensqlContrato = sqlContrato & " Where tipo_contrato like '%"& trim(request.form("tipo_contrato")) &"%' and  exibir ='SIM' "end ifif trim(request.form("anuente")) <> "" thensqlContrato = sqlContrato & " Where anuente '%"& trim(request.form("anuente")) &"%' and  exibir ='SIM' "end ifset rsPesquisa = conexaoDataBase.execute(sqlContrato)

Ele também não concatenou, eu preciso que seja concatenado com quantos campos foram selecionado com o operador and também. Obrigado

 

-----------------------------------------------------------------------------------

Post Mesclado

-----------------------------------------------------------------------------------

 

Consegui eu fiz assim e deu certo: Vou postar o código quem sabe ajuda alguém.

sqlContrato = "Select codigo_contrato, contratante, contratada,anuente, interviniente, situacao_contrato, titulo_contrato,exibir From cad_contrato where exibir='SIM'" if trim(request.form("numero")) <> "" thensqlContrato = sqlContrato & " and codigo_contrato like '%"& trim(request.form("numero")) &"%'  "end ifif trim(request.form("titulo")) <> ""  thensqlContrato = sqlContrato & " and titulo_contrato like '%"& trim(request.form("titulo")) &"%'  "end ifif trim(request.form("contratante")) <> "" thensqlContrato = sqlContrato & " and contratante like '%"& trim(request.form("contratante")) &"%'  "end ifif trim(request.form("contratada")) <> ""  thensqlContrato = sqlContrato & " and contratada like '%"& trim(request.form("contratada")) &"%'  "end ifif trim(request.form("sit")) <> ""  thensqlContrato = sqlContrato & " and situacao_contrato like '%"& trim(request.form("sit")) &"%'  "end ifif trim(request.form("interviniente")) <> "" thensqlContrato = sqlContrato & "and interviniente like '%"& trim(request.form("interviniente")) &"%'  "end ifif trim(request.form("tipo_contrato")) <> "" thensqlContrato = sqlContrato & " and tipo_contrato like '%"& trim(request.form("tipo_contrato")) &"%'  "end ifif trim(request.form("anuente")) <> "" thensqlContrato = sqlContrato & " and anuente like '%"& trim(request.form("anuente")) &"%'  "end ifset rsPesquisa = conexaoDataBase.execute(sqlContrato)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.