CONSULTA SQL COM CAMPO SIM/NAO BANCO ACCESS!

SOUZA 10/02/2014 17:06:27
#434504
Ola pessoal, tenho um campo na minha tabela que é um campo verificador SIM/NAO OU 0/1.

Eu preciso que ele busque os dados que sejam apenas verdadeiros (1) na tabela, lembrando que eu não sei qual vai ser o campo verificador pois eu tenho 20 campos que representam a profissão da pessoa e que quando ele clicar no botao com a profissao ele vai jogar para um textbox o nome do campo na tabela. Faço a busca da seguinte forma para o relatorio no dbgrid.

Dim db As Database
Dim query As String
Dim dyn As Recordset

Set db = OpenDatabase([Ô]c:\Sistema\Cadastro.Mdb[Ô], False, False, [Ô];PWD=senha[Ô])
query = [Ô]SELECT * FROM Tabela order by nome[Ô]
Set dyn = db.OpenRecordset(query, dbOpenDynaset)
While Not dyn.EOF

If dyn([Ô]CIDADE[Ô]) = CIDADE Then

DYN1.AddNew
DYN1([Ô]CODIGO[Ô]) = dyn([Ô]CODIGO[Ô])
DYN1([Ô]EMPRESA[Ô]) = dyn([Ô]EMPRESA[Ô])
DYN1([Ô]CIDADE[Ô]) = dyn([Ô]CIDADE[Ô])

DYN1.Update
End If
dyn.MoveNext
Wend
db.Close
Data1.Refresh

MARCELO.TREZE 10/02/2014 18:33:18
#434511
Resposta escolhida
não entendi tente ser mais especifico
LLAIA 10/02/2014 18:37:45
#434512
Acho que o que vc precisa é:

query = [Ô]SELECT  * FROM Tabela order by nome where NomeDoSeuCampo=true[Ô]


Se true não der certo, coloque 1.
SOUZA 10/02/2014 18:46:39
#434513
Obrigado pela tentativa llia!

Vou tentar explicar amais facil no meu campo cadastro tenho 10 checkbox para descrever que uma pessoa pode ter mais de uma profissao ok.

Entao eu vou ter um botao com o nome da profissao para pessoa clicar e entao vai para uma tela que gera um relatorio com os nomes das pessoas que possuem aquela profissao.

O campo que seleciono a profissao no cadastro é checkbox, entao a busca tem que pegar se o checkbox esta como 1 que significa que ele tem a profissao selecionada e entao jogar para tela no meu dbgrid.
SOUZA 10/02/2014 19:17:14
#434516
LLAIA teste melhor e funcionou sim a busca um problema resolvido más tem mais um coisa se eu colocar na busca sql que profissao1=true ele busca todos os cadastros que estao ticados no checkbox profissao1. So que eu esqueci que eu não sei qual profissão ele pode escolher para pesquisar tipo profissao1 - profissao2 - profissao3 etc.

então a busca teria que ter um variavel que recebesse esta informação para colocar na linha de busca do sql tipo:

query = [Ô]SELECT * FROM Tabela where Variavel=true[Ô]

a variavel é a que receberia a profissao que ele escolher.
SOUZA 10/02/2014 19:58:38
#434517
Pessoal olha colocando assim ele funciona olha!

If Profissao = [Ô]Profissao1[Ô] Then
query = [Ô]SELECT * FROM lojista where Profissao1=true[Ô]
ElseIf Profissao = [Ô]Profissao2[Ô] Then
query = [Ô]SELECT * FROM lojista where Profissao2=true[Ô]
End If

assim ele funciona mais ai vou ter que colocar todos os 10 IF e se aumentar amanha as profissoes vou ter que almentar os IF tb. Porisso quera uma forma de colocar isso dentro da busca como uma condição dele receber o nome do campo que foi selecionado.
MARCELO.TREZE 10/02/2014 20:10:42
#434520
assim colega

coloque as profissões no combo e proceda desta maneira

query = [Ô]SELECT * FROM lojista where [Ô] & ComboProfissao.List(ComboProfissao.ListIndex) & [Ô] = true[Ô]

ai basta que você selecione a profissao no combo e ela sera buscada

SOUZA 10/02/2014 20:22:10
#434521
Marcelo e LLaia muito obrigado por mais esta ajuda valeu por compartilhar seus conhecimentos com nos iniciantes ob.
Tópico encerrado , respostas não são mais permitidas