Como buscar en una tabla por el numero de documento

Hola Sr. Experto:
mi pregunta es la siguiente, tengo las tablas con los datos creados, pero necesito buscar entre esos datos por documento, el proceso que llevo es este:
with thisform
if empty(.text1.value)
=messagebox("debe documento.", 48, "error")
.text1.setfocus()
return
endif
endwith
use t_movimientos
index on nit_ben to nit.idx
local lcnit
with thisform
lcnit = .text1.value
endwith
with thisform
for tama = 440 to 1015
thisform.width = tama
thisform.refresh
thisform.visible = .t.
endfor
for tama = 260 to 600
thisform.height = tama
thisform.refresh
thisform.visible = .t.
endfor
browse field nit_ben, fecha, cheque, detalle, valor, orden_pago
for tama = 1015 to 440
thisform.width = tama
thisform.refresh
thisform.visible = .t.
endfor
for tama = 600 to 260
thisform.height = tama
thisform.refresh
thisform.visible = .t.
thisform.refresh()
endfor
endwith
thisform.refresh()
el problema es que al momento de buscar, me da resultado, pero no me muestra solo los que necesito, sino que me muestra toda la tabla
de antemano muchas gracias
Respuesta
si entiendo, pero que parte visualizas los datos, por que si es con el Browse fiel... no tiene ninguna condicion, ejemplo
browse field nit_ben, fecha, cheque, detalle, valor, orden_pago for tama>=200 and tama<=300
Si me podes indicar el lugar donde queres mostrar los datos que queres
mira la parte del tama, es para cambiar el tamaño de la ventana para que quede tamaño completo en la pantalla, con el browse es que quiero buscar, pero con una variable que se llama lcDOC, la cual necesito que me muestre en el browse, solo los datos que pertenezcan a ese documento.
la parte de:
with thisform 
for tama = 440 to 1015 
thisform.width = tama 
thisform.refresh 
thisform.visible = .t. 
endfor 
for tama = 260 to 600 
thisform.height = tama 
thisform.refresh 
thisform.visible = .t. 
endfor
for tama = 1015 to 440 
thisform.width = tama 
thisform.refresh 
thisform.visible = .t. 
endfor 
for tama = 600 to 260 
thisform.height = tama 
thisform.refresh 
thisform.visible = .t. 
thisform.refresh() 
endfor 
endwith
es la que te comento que es para ambio de tamaño de ventana, si me pudieras ayudar en que al mandar el browse, me lo muestre en pantalla completa, pero que al volver al formualrio este del mismo tamaño te lo agradeceria mucho.
de antemano muchas gracias
OK, para forzarle a fox que muestre un browse maximizado puedes hacer el sigte. Truco.
Sele tabla
keyboard('{CTRL+F10}')
Brow normal field campo1, campo2
ok, ese problema del tamaño ya esta solucionado, pero te repidto la pregunta, como hago para hacer un filtro, por un solo numero de documento, ya que me da el browse, pero solo me muestra el resultado solo con el numero 0, y/o con todos los numeros, este es el procedimiento que tengo, pero no me da el resultado que quiero:
with thisform
if empty(.text1.value)
=messagebox("debe ingresar el nit.", 48, "error")
.text1.setfocus()
return
endif
endwith
use t_movimientos
index on nit_ben to nit.idx
local lcnit
with thisform
lcnit = val(.text1.value)
lcnit = nit_ben
endwith
with thisform
*ancho del formulario
thisform.width = 1015
thisform.left = 0
thisform.refresh
thisform.visible = .t.
*alto del formualrio
thisform.height = 600
thisform.top = 0
thisform.refresh
thisform.visible = .t.
set filter to at.text1.value
browse field nit_ben, fecha, tip_trans , cheque, detalle, valor, orden_pago
*browse all for (lcnit) field nit_ben, fecha, tip_trans , cheque, detalle, valor, orden_pago
*key str(nit_ben) = lcnit
endwith
thisform.width = 440
thisform.left = 280
thisform.height = 239
thisform.top = 145
thisform.refresh()
en la linea, que esta resaltada, me parece que esta el error, pero no c como cambiarla
Ok, pero tu browse no tiene ninguna condicion, le podes agregarle un for, ejemplo
sele tabla
keyboard('{CTRL+F10}')
Brow normal field campo1, campo2 for campo1=1
puedes ponerle and u or a tus condiciones, no se si te sirve
saludos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas