FoxPro/Visual FoxPro - buscar en carpetas

 
Vista:

buscar en carpetas

Publicado por sebastian (244 intervenciones) el 17/12/2010 19:13:51
Hola programadores tengo varias dbf guardadas en diferentes carpetas de este modo.

carpeta 1 contiene las siguientes carpetas 2007,2008,2009 el dbf que tiene cada carpeta se llama por ejmplo sebastian.dbf

Ingreso la fecha actual de busqueda por ejemplo 01/04/2010 al 15/04/2010 luego en un combo elijo el año de comparacion por ejemplo 2008

Este programita debe buscar todas las tablas que se llamen 2008 de acuerdo a la seleccion del combo y luego leer el archivo sebastian.dbf y contar los registros que tiene de acuerdo a la fecha ingresada lineas arriba. el año es diferente ya que en la tabla 2008 tendria que buscar esta fecha 01/04/2008 al 15/04/2008 como veran lo que cambia es el año porque el dia y mes viene hacer los mismo.

wini = thisform.text1.value
wfin = thisform.text2.value

x = thisform.combo2.value

SELEC fecha, count(fecha)as total from C:\Informes\historicos\ ;
where between(fecha,ctod('01/01/2008'),ctod(padl(day(wfin),2,'0')+"/"+padl(month(wfin),2,'0')+"/2008"))
brow

Este codigo me envia la informacion que necesito pero cada vez que requiero cambiar el año tengo que ingresar a la codificacion esto necesito hacerlo en un formulario. gracias de antemano
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 en carpetas

Publicado por Paquito1967 (1 intervención) el 22/12/2010 10:29:59
Sebastian,

solo tienes que cambiar el año del SELECT por el valor de la Combo,
si el valor es númerico quedaría algo asi...

wini = thisform.text1.value
wfin = thisform.text2.value

x = thisform.combo2.value

SELEC fecha, count(fecha) as total from C:\Informes\historicos\ ;
where between(fecha,ctod('01/01/'+alltrim(str(x))),ctod(padl(day(wfin),2,'0')+"/"+padl(month(wfin),2,'0')+"/"+alltrim(str(x))))
brow

...si el año de la combo es caracter entonces seria algo asi...

wini = thisform.text1.value
wfin = thisform.text2.value

x = thisform.combo2.value

SELEC fecha, count(fecha) as total from C:\Informes\historicos\ ;
where between(fecha,ctod('01/01/'+alltrim(x)),ctod(padl(day(wfin),2,'0')+"/"+padl(month(wfin),2,'0')+"/"+alltrim(x)))
brow

espero que te ayude...

Saludos

Paco Calvente
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:buscar en carpetas

Publicado por sebastian (2 intervenciones) el 27/12/2010 17:37:54
ok amigo gracias ahora si todo ok
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