Estou com problema ao filtrar no VB6, vou passar o código e explicarei o que NÃO ocorre como eu planejava...
segue o código:
__________________________________________________ _______________
Dim Criterio As String
Dim Data As String
Dim consql As ADODB.Connection
Dim rec As Recordset
Public Sub Conexão()
Set consql = New ADODB.Connection
Set rec = New ADODB.Recordset
consql.Open "Provider=SQLOLEDB.1;" & _
"Password=(SENHA);" & _
"Integrated Security=SSPI;" & _
"Persist Security Info=False;" & _
"User ID=(USUARIO);" & _
"Initial Catalog=(BASEDADOS);" & _
"Data Source=(SERVIDOR)"
End Sub
Public Sub Mostrardados()
Conexão
Data = "SELECT (CAMPO) FROM (TABELA) WHERE (CAMPO)>0"
rec.Open Data, consql
Set Me.MSHFlexGrid1.DataSource = rec
End Sub
Private Sub cmdFiltrar_Click()
With MSHFlexGrid1
Criterio = txt1.Text
If Criterio <> "" Then
rec.Close
Data = "SELECT (CAMPO) FROM (TABELA) WHERE (CAMPO) LIKE '& Criterio &'"
rec.Open Data
Set .DataSource = rec
Else
cmdFiltrar.Caption = "Retirar Filtro"
rec.Close
Data = "SELECT (CAMPO) FROM (TABELA) WHERE (CAMPO)>0"
rec.Open
Set .DataSource = rec
End If
End With
End Sub
Private Sub Form_Load()
Mostrardados
End Sub
__________________________________________________ _______________
Então, é o seguinte... o filtro roda como planejado, mais quando um valor no txt1 é inserido para testar o filtro, os campos são 'zerados' e aparece apenas o nome do campo.

Entrar
Cadastre-se

Este tópico está fechado
Voltar para o topo










