CONTAR REGISTROS

FFECHER 11/06/2013 16:35:31
#424604
Prezados:
Como posso contar registros ativos dentro de uma tabela produtos constante em um banco de dados banco.mdb
tentei da forma abaixo e deu erro. Obrigado
Julio

Dim Banco As Database
Dim rst As Recordset
VcBd = [Ô]custos.mdb[Ô]
Set Banco = DBEngine.Workspaces(0).OpenDatabase(VcBd, False, False, [Ô][Ô])
Set rst = Banco.OpenRecordset([Ô]Select Count(*) as intRecordCount From produtos where st_ativo=1[Ô])
Variable_Count = rst.Fields([Ô]intRecordCount[Ô])



KERPLUNK 11/06/2013 16:48:58
#424605
Resposta escolhida
Parece estar correto, qual o erro, o que acontece?
FFECHER 11/06/2013 22:26:24
#424616
Caro Amigo:
Gostaria de um exemplo que já foi testado por você... O exemplo que apresentei não informa o número de registros contados.
Obrigado.
Julio
FILMAN 11/06/2013 23:21:06
#424618
Cara, não sou muito fã de DAO eu utilizo o ADO

Mas aparentemente esta certo o problema é porque não mostra o resultado?!!

Tente fazer assim

Set Banco = OpenDatabase(App.Path & [Ô]\[Ô] & VcBd)
Set rst = Banco.OpenRecordset([Ô]SELECT Count(*) As Qtde FROM produtos WHERE st_ativo=1[Ô], dbOpenDynamic)
Variable_Count = rst([Ô]Qtde[Ô])


verifique no banco se existe produtos com o campo st_ativo = 1
FFECHER 18/06/2013 15:44:17
#424940
Caro Filman:
Obrigado pela atenção...
Não funcionou;
O lance é o seguinte:
Preciso contar os produtos que constam com determinada marcação, fiz uma rotina passando item a item (not while data1.recordset.eof ... wend)
só que demora muito. Você tem alguma ideia usando ADO?
Tabela:produtos
campo -> st_ativo=[Ô]S[Ô]
Obrigado mais uma vez
Julio
ALANTB 18/06/2013 16:00:42
#424942
Tenho algo parecido...
Código:
---------------------------------------------------
Dim ComandoSQL As String
Dim Total As Long, rs As New ADODB.Recordset

If rs.State = adStateOpen Then
rs.Close
Set rs = Nothing
End If


ComandoSQL = [Ô]SELECT COUNT(codViagem)AS Total FROM tbLista WHERE tblista.codViagem = [Ô] & txtCodViagem.Text
rs.Open ComandoSQL, conn, adOpenStatic

If Not rs.BOF And Not rs.EOF Then
Total = rs.RecordCount
Total = rs!Total
End If

Me.lblLotacao.Caption = Total [ô] exibe o total aqui
MARCELO.TREZE 18/06/2013 16:23:34
#424946
bom eu vou indicar que selecione um campo a contar, exemplo

Dim Banco As Database
Dim rst As Recordset
VcBd = [Ô]custos.mdb[Ô]
Set Banco = DBEngine.Workspaces(0).OpenDatabase(VcBd, False, False, [Ô][Ô])
Set rst = Banco.OpenRecordset([Ô]Select Count(st_ativo) as intRecordCount From produtos where st_ativo=1[Ô])
Variable_Count = rst.Fields([Ô]intRecordCount[Ô])
Tópico encerrado , respostas não são mais permitidas