Búsqueda de un text a un grid en fox

Quiero hacer una búsqueda en que escribiendo en un textbox el parámetro de búsqueda y me presente el registro que solicito en un grid.
Tengo problemas en hacer esa búsqueda este es el código del botón buscar me podrían ayudar a decirme en que estoy mal por que me da error, y las lineas que señala como error de sintaxsis son las de la sentencia where y la del curso.
CREATE CURSOR busqueda
txtbuscar=ALLTRIM(thisform.txtbuscar.Value)
IF thisform.optiongroup1.Value=1 THEN
SELECT ccodcli, cnomcli FROM cliente
where cnomcli= 'txtbuscar'
into cursor busqueda
ELSE
SELECT ccodcli,cnomcli FROM cliente
where ccodcli='txtbuscar'
into cursor busqueda
ENDIF
IF !EMPTY(txtbuscar) THEN
WITH thisform.buscli && Crea el grid
.columncount=2&&indica el numero de columnas
.height=193&&alto de la grilla
.width=289&&ancho
.readonly=.T.&&solo lectura
.allowheadersizing=.f.
.allowrowsizing=.f.
*.recordsource="cliente"
*.ChildOrder = "itemclie"
.Left = 5 && Ajustar posicion de la Grid
.Visible = .T. && Grid control visible
.FontSize = 8 && Tamaño de la Fuente para el texto
.Forecolor = RGB(0,0,0) && Texto en Negro
.GridLineColor = RGB(0,0,0) && Color de las lineas que separan las celdas
.GridLines = 3 && Especifica si el control grid se muestra en lineas horizontales y verticales
.Highlight = .T. && La celda aparece selecionada
.HighlightBackColor = RGB(0,64,128) && Color de la Fila Selecionada
.HighlightRowLineWidth = 2 && El ancho del resaltado de la fila selecionada
.HighlightStyle = 2 && Si la fila esta resaltada, permanece resaltada cuando el usuario cambia el enfoque a otro control del formulario
.Name = 'grdcliente'
.Panel = 1
.RecordSourceType = 1
.RowHeight = 18 && El alto de las filas de la grid
.Tabindex = 1 && Orden de la tabulacion
.View = 0 && Tipo de Vista
.column1.header1.caption="Codigo"
.column2.header1.caption="Nombres"
.column3.header1.Caption = "Apellidos"
FOR grdNegrit=1 TO 3
ncol="column"+ALLTRIM(STR(grdNegrit))+"."
.&ncol.header1.FontBold=.T.
.&ncol.header1.Alignment=0
ENDFOR
.grdcliente= busqueda
.allowcellselection=.f.
. Setfocus
.Refresh
ENDWITH
ELSE
Messagebox("Ingrese texto a Buscar",0+64,"Buscar")
thisform.xBuscar.SetFocus
Endif
Los parámetros para buscar son nombre o código y solo deseo que esos dos campos sean presentados en el grid. Si también me podrían ayudar en como hacer que cuando le de click a registro en el grid me abra un formulario con la informacionn del registro para modificarlo.
Por favor ayudenme ya tengo rato en esto y no se que hacer. Gracias de ante mano.

1 Respuesta

Respuesta
1
Creo que el error que tienes es que te falta ";" prueba esto:
SELECT ccodcli, cnomcli FROM cliente;
where cnomcli= 'txtbuscar';
into cursor busqueda
Muchas gracias por eso, me corrigió el error pero ahora me dice que no reconoce la variable búsqueda y tuve que quitar el 'create cursor búsqueda' por que también me daba error. Gracias por su tiempo.
Si quieres crear el cursor prueba así:
CREATE CURSOR Busqueda;
(Numero c(5), Nombres C(40), Apellidos C(40))
Cualquier duda preguntas
**Suerte**
Lo intentare gracias por su ayuda
Ok y cualquier duda preguntas.
**Suerte**
¿La repuesta fue Factible?
Si fue así.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas