CONTAR REGISTROS DATA.RECORDSET.RECORDCOUNT

XXXANGELSXXX 01/12/2009 19:30:53
#328956
Caros amigos, muito obrigado por terem me ajudado no topico anterior, agora estou com uma coisa aqui, que vcs voa me achar doido de perguntar.. rs rs.. mas vamos la, vejam bem, eu criei dois labels no meu form, um se chama lblclientesativos e lblclientesinativos, em cima da primeira solicitaçao, eu fiz a marcacao dos meus clientes ativos e inativos, atraves de um campo do sistema tipo texto, ou seja, se o cliente esta como ativo ele vai no campo Clisituacao e preenche como [Ô]1-Ativo[Ô] se estiver inativo ele marca como [Ô]2-Inativo[Ô], so que agora estou com problema na contagem disso para ele jogar os valores nos meus labels, ou seja, olhem o codigo que estou usando..


SUB CONTARREGISTROS()

WITH DATA1
.RECORDSOURCE=([Ô]SELECT * FROM CADCLIENTES WHERE CLISITUACAO=[ô][Ô] & [Ô]1-Ativo[Ô] [Ô][ô][Ô])
.REFRESH
LBLCLIENTESATIVOS.CAPTION = .RECORDSET.RECORDCOUNT

.RecordSource = ([Ô]select * from cadclientes where clisituacao=[ô][Ô] & [Ô]2-Inativo[Ô] & [Ô][ô][Ô])
.Refresh

lblinativo = Data1.Recordset.RecordCount
lblInativo.Caption = Contar
end with

end sub

Ai eu chamo a funçao no meu load, so que ta acontecendo o seguinte, o sistema esta contando a maior loucura, os contadores nao batem, em vez deles contarem os registros e jogaram no caption dos labels, ele ta jogando o numero de clientes ativos =10, e nao sao apenas 10, a minha duvida é a seguinte, para mim fazer o contador de registros usando campos do tipo texto eu preciso mudar a linha de programacao como acima?

brigaduuuuuuuuuuuuu

MARCOSLING 01/12/2009 22:45:29
#328959
Você está gravando [Ô]1-Ativo[Ô] e [Ô]2-Inativo[Ô] no campo CLISITUACAO?!?
Você pode estar brincando né?
XXXANGELSXXX 02/12/2009 00:29:48
#328960
Citação:

MARCOSLING escreveu:
Você está gravando [Ô]1-Ativo[Ô] e [Ô]2-Inativo[Ô] no campo CLISITUACAO?!?
Você pode estar brincando né?

Amigo, não entendi o porque brincando.. ???? eu disse que o campo é tipo varchar(10), necessito que seje gravado no campo 1-Ativo e 2-Inativo, mas acho que isso nao vem ao caso.. so necessito contar esses registros!!!.
RCMRO 02/12/2009 07:58:39
#328962
Resposta escolhida
Alguma coisa assim mas, ao invez de usar um DATACONTROL, eu usaria um RECORDSET normal, instanciando e liberando ele no final.... Fica mais mais rápido o acesso...

SUB CONTARREGISTROS()

WITH DATA1
.RECORDSOURCE=([Ô]SELECT COUNT(*) FROM CADCLIENTES WHERE CLISITUACAO=[ô][Ô] & [Ô]1-Ativo[Ô] [Ô][ô][Ô])
.REFRESH
LBLCLIENTESATIVOS.CAPTION = .Data1.Recordset.fields(0)

.RecordSource = ([Ô]select COUNT(*) from cadclientes where clisituacao=[ô][Ô] & [Ô]2-Inativo[Ô] & [Ô][ô][Ô])
.Refresh
lblinativo.caption = Data1.Recordset.fields(0)
end with

end sub
Tópico encerrado , respostas não são mais permitidas