Clipper/FiveWin - Buscar por fecha en Dbedit??

 
Vista:

Buscar por fecha en Dbedit??

Publicado por Raul Andrade (14 intervenciones) el 29/04/2010 19:29:40
Hola a todos los programadores queria pedirles una ayuda tengo un programa en el cual me permite visualizar el contenido de mi base de datos a traves de un DBEDIT pero normalmente lo tengo con busqueda por letra o apellido, pero mi inquietud es q en vez de hacerme la busqueda por letra o apellido me haga la busqueda por fecha ya q en el dbedit q tengo se guarda automaticamente la fecha del sistema y la visualiza..

DBEDIT queda asi:

Fecha: -----> Aquí quiero q busque x Fecha y no por apellido
______________________________________
Fecha Puesto Apellido P F A HE HS
______________________________________
28-04-2010 CHARLY ANDRADE
10-04-2010 OSCAR PIGUAY

A continuación les dejo la codificación:

USE INGRESO
*
* Se crea indice V_APNO al abrir la base INGRESO.DBF por apellido y nombre
*
INDEX ON APELLIDO+NOMBRE TO V_APNO

SET COLOR TO W*/N
@ 19,10 SAY "Escriba la Fecha que desea buscar..."
SET COLOR TO W/N

@ 5,2,18,76 BOX caja2

@ 4,35 say "Fecha: "

campos:={"Fecha","Puesto","Apellido","P","F","A","HE","HS","HEX","REE","OBS"}

bus=""
index on apellido to apel
dbedit(6,3,17,75,campos,"editar") // Consulta de Bitacora
use ingreso
RETURN

function editar(estado,puntero)
tecla:=lastkey()

if tecla=27
DO MENU-------> No me funciona el Return ya que quiero regresar al menu no Salir al DOS
endif

if tecla=13
seek bus
endif

if tecla=8 // identifica tecla backspace
@4,35 say Space(len(bus)+10)// borro cadena de pantalla
bus=left(bus,len(bus)-1)
@4,35 say "Fecha: " + bus
else
if tecla >64 .and. tecla < 91 .OR. tecla >96 .and. tecla < 123
bus=bus+Upper(chr(tecla))
@4,35 say "Fecha: " + bus
endif
endif
return(1)

Gracias
Saludos Cordiales
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:Buscar por fecha en Dbedit??

Publicado por marcelo (1 intervención) el 29/04/2010 22:17:23
a tu archivo tenes que crear otro archivo de indice, indexando por fecha.

luego en la funcion editar, poner en el do case

case tecla=-8 (p.ej. si pulsa F9)
@ 24,0 get Fecha
read

seek Fecha
return 1

espero te sirva.
Marcelo
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:gracias

Publicado por Raul Andrade (14 intervenciones) el 30/04/2010 15:59:56
Q tal marcelo te agradezco por tu ayuda inmensa ya q alfin puedo hacer la busqueda x fecha pero tengo un error al ingresar la fecha q se encuentra registrada en la base me la busca excelentemente, pero al poner una fecha q no existe me la reemplaza por la fecha q ya esta guardada en la base y no encuentro el motivo de por que aqui te envio nuevamente la codificacion con tu ayuda


USE INGRESO
*
* Se crea indice V_APNO al abrir la base INGRESO.DBF por apellido y nombre
*

INDEX ON FECHA TO DIA

SET COLOR TO W*/N
@ 19,10 SAY "Escriba la Fecha que desea buscar..."
SET COLOR TO W/N

@ 5,2,18,76 BOX caja2

@ 4,35 say "Fecha: "

campos:={"Fecha","Puesto","Apellido","P","F","A","HE","HS","HEX","REE","OBS"}

bus=""

index on fecha to dia

dbedit(6,3,17,75,campos,"editar") // Consulta de Bitacora
use ingreso
RETURN

function editar(estado,puntero)
tecla:=lastkey()

DO CASE
case tecla=-8 //si pulsa F9
@4,35 get fecha
read
ENDCASE

if tecla=27
DO MENU
endif

if tecla=13
seek fecha
endif

if tecla=8 // identifica tecla backspace
@4,35 say Space(len(bus)+10)// borro cadena de pantalla
fecha=left(bus,len(bus)-1)
else
if tecla >64 .and. tecla < 91 .OR. tecla >96 .and. tecla < 123
bus=bus+Upper(chr(tecla))
endif
endif
return(1)

Saludos Cordiales
Gracias
Marcelo
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:gracias

Publicado por marcelo (29 intervenciones) el 30/04/2010 18:47:45
hola!
cuando vos pusiste GET FECHA, ahi es donde lo reemplaza.
eso es pq la variable que usas tiene el mismo nombre que el campo, cambiale el nombre a la variable y listo.

Marcelo
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

Saludos Marcelo

Publicado por Raul Andrade (14 intervenciones) el 10/05/2010 16:10:24
Q tal marcelo disculpa q t moleste me podrias ayudar con tu correo necesito una mano tuya sobre el problema q tube d la busqueda x fecha en un dbedit
Gracias
Saludos Cordiales
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:Saludos Marcelo

Publicado por marcelo (1 intervención) el 10/05/2010 20:47:45
enviame el email a [email protected]
en las notas completo el casillero correo con cualquier cosa, enviame la consulta a esa casilla.
saludos.
marcelo
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