Visual Basic - Problemas con Like

Life is soft - evento anual de software empresarial
 
Vista:

Problemas con Like

Publicado por dani (78 intervenciones) el 06/04/2007 21:35:31
Hola Gente, tengo una grilla conectada a un adodc de manera correcta y el adodc con su connection string perfecto, el tema es q cuando quiero buscar registros q empiecen con una determinada letra utilizando el operador like, en la grilla no me muestra nada, depuro el codigo y en éste si me encuentra de manera correcta los registros, es decir q los procesa correctamnte, pero a la hora de llevarlos a la grilla nada.
Hice un refresh a todo, x codigo borre los connectionstring y los volvi a reestablecer, pero nada. Agradezco su intervencion.
Uso vb6.0 sp6.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problemas con Like

Publicado por laojhjj9 (5 intervenciones) el 06/04/2007 22:58:13
bien, usas vb6 sp6 ¿logíco no?, si no fuera asi no hubieras puesto aqui el post.
pero lo importante es que nos pongas que tipo de bd estas utilizando y ademas el codigo que pones para que muestre los registros.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas con Like

Publicado por dani (78 intervenciones) el 07/04/2007 00:57:23
Ok, base de datos access, y el codigo es el sig:
en Rut guardo el directorio donde esta la BD
Datpac es el Adodc
Grdbusca el la grilla
TXTbuscaape busco x apellido (Like)
TXTbuscadoc busco x documento (Este me funciona perfecto)
------------------------------------------------------------
Sub busca_pac()

sql = ""
sqlfinal = ""
sql = "select * from pacientes where"

Set base = OpenDatabase(Rut)
If TXTbuscadoc.Text <> "" Then
sqlfinal = sql & " dni_pac=" & TXTbuscadoc.Text
Set pac = base.OpenRecordset(sqlfinal)
If pac.EOF Then
MsgBox "Paciente Inexistente.", vbCritical, "Registro no encontrado"
TXTbuscadoc.SetFocus
Exit Sub
End If
DATpac.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=D:\Dani\DD_SISTEMAS\SEC_TBC\Tuberculosis.mdb;Persist Security
Info=False"
DATpac.RecordSource = (sqlfinal)
DATpac.Refresh
GRDbusca.Refresh
ElseIf FRMbusca_pac.TXTbuscaape.Text <> "" Then
sqlfinal = sql & " apellidos_pac like " & "'" & TXTbuscaape.Text & "*'"
Set pac = base.OpenRecordset(sqlfinal)
If pac.EOF Then
MsgBox "Paciente Inexistente.", vbCritical, "Registro no encontrado"
FRMbusca_pac.TXTbuscaape.SetFocus
Exit Sub
end if
DATpac.ConnectionString = ""
DATpac.RecordSource = ""
DATpac.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=D:\Dani\DD_SISTEMAS\SEC_TBC\Tuberculosis.mdb;Persist Security
Info=False"
DATpac.RecordSource = (sqlfinal)
DATpac.Refresh
GRDbusca.Refresh
end if
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas con Like

Publicado por laojhjj9 (5 intervenciones) el 09/04/2007 19:56:24
Demasiado codigo (y muy embrollado), unas veces usas conexiones DAO y otras ADO. Para buscar segun vas escribiendo pon esto:
Nota: La conexion la tienes abierta ya y enlazada al adodc, no necesitas repetirla cada vez.


Private Sub Text1_Change()
With Adodc1
.RecordSource = "SELECT * FROM [LaTabla] WHERE [Campo] LIKE '" & Text1.Text & "%'"
.Refresh
If .Recordset.EOF Then
MsgBox "No hay registros coincidentes"
Exit Sub
End If
End With
Set DataGrid1.DataSource = Adodc1
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar