Ir para conteúdo

Arquivado

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

Thiago Caires

Fazer uma Pesquisa no VB

Recommended Posts

Claudio eu preciso fazer outra pesquisa.....

preciso fazer ele me trazer o resultado se o preso é

primario ou reincidente.

 

parece ser simples.....

mas na base de dados do Access ele grava assim...

 

TEM A COLUNA "PRIMARIO"

se o preso for primario vai estar o valor SIM

se o preso for reincidente vai estar o valor NÃO

se o preso for primario vai estar o valor SIM

se o preso for reincidente vai estar o valor NÃO

 

 

 

E assim por diante....

agora me ajuda a pensar como eu posso fazer essa pesquisa

ele trazendo o resultado no "list"

 

exemplo : 50 primarios

90 reincidentes

 

 

To tentando pensar aqui...

mas ta dificil....

 

 

Agradeço muito a ajuda!

Compartilhar este post


Link para o post
Compartilhar em outros sites

OLha eu já montei uma programação....

mas ele esta me repetindo o resultado na lista um monte de vezes.... sai um lista grande

sendo que era para sair apenas

 

Existem "valor" Reeducandos primarios

Existem "valor" Reeducandos reincidentes

 

 

 

OLha o código:

 

Private Sub cmdpesquisar_Click()

 

estado.RecordSource = "select * from qualificativa"

estado.Refresh

 

List1.Clear

 

Dim rel As String

Dim Sim As Currency

Sim = 0

Dim Não As Currency

Não = 0

Dim stotal As String

stotal = 0

 

While Not estado.Recordset.EOF

 

rel = estado.Recordset.Fields("primario") & ""

 

qualificativa.RecordSource = "select * from qualificativa where esta='SIM'"

qualificativa.Refresh

 

Dim relig As String

 

While Not qualificativa.Recordset.EOF

relig = qualificativa.Recordset.Fields("primario") & ""

 

If relig = rel Then

Sim = Sim + 1

Não = Não + 1

End If

 

qualificativa.Recordset.MoveNext

Wend

 

List1.AddItem "Existem: " & Format(Sim, "00") & " Reeducandos primarios " & rel

stotal = stotal + Sim

Sim = 0

 

List1.AddItem "Existem: " & Format(Não, "00") & " Reeducandos Reincidentes " & rel

stotal = stotal + Não

Não = 0

 

estado.Recordset.MoveNext

Wend

 

End Sub

 

Private Sub Data_Validate(Action As Integer, Save As Integer)

 

End Sub

 

Private Sub Form_Load()

 

var0b = Conexao(estado, caminho_bd, "qpalzmMZN", False)

var0b = Conexao(qualificativa, caminho_bd, "qpalzmMZN", False)

 

End Sub

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse valor SIM e NÃO significa

 

se o preso é primario é = SIM

se o preso for reincidente é =NÃO

 

 

na tabela do access tem uma coluna "PRIMARIO"

ai quando o preso é primario o valor é SIM

agora quando for reincidente é NÃO....

 

eu quero que ele me de a quantidade de quando

Reeducandos esta com esse valor ="SIM"

e quanto estão com o valor = "NÃO"

 

eu programei.... esse código acima....

mas ele sta me gerando um relátorio gigante.....

repetindo os valores.....

 

era sóh para me dar 2 resposta

 

exemplo:

 

100 Reeducando primarios

50 Reeducandos reicidentes

 

Intendeu??

 

Se puder me ajudar a encontrar onde eu estou errando eu lhe agradeço....

 

 

 

Thiago Caires

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma forma seria + ou - assim:

 

Private Sub cmdpesquisar_Click()
estado.RecordSource = "select * from qualificativa"
estado.Refresh

List1.Clear

While Not estado.Recordset.EOF

	relig = estado.Recordset.Fields("primario")
	
	If relig = "SIM" Then
	   v_SIM = v_SIM + 1
	Else
	   v_NAO = v_NAO + 1
	End If
	
	estado.Recordset.MoveNext
Wend

List1.AddItem "Existem: " & Format(v_SIM, "00") & " Reeducandos primarios "
List1.AddItem "Existem: " & Format(v_NAO, "00") & " Reeducandos Reincidentes "

End Sub

Outra forma seria fazer um select count e trazaer os totais diretamente. Mas tente fazer do jeito acima (com as devidas adaptações) e veja se pode resolver.

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

OLha eu consegui resolver o problema....

mas não usei essa programação que você deixou acima...

mas tirei base dela... obrigado.....

 

mas agora tem outro problema...

eu preciso que me de a relação de quantos são reincidentes e quantos são primários... da data atual do dia....

e não de todos que já passaram na unidade...

ele está me dando o resultando total de todos que passaram na unidade.....

 

Agradeço de ajuda"

Compartilhar este post


Link para o post
Compartilhar em outros sites

que campo usa para separar quem esta de quem ja saiu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se entendi direito você só precisa contar o número de SIM e de NÃO, então através da select você consegue desta forma:

 

 

SELECT COUNT(qualificativa) FROM suatabela WHERE qualificativa = "sim" GROUP BY qualificativa

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.