FoxPro/Visual FoxPro - No puedo Filtrar por Fechas.

   
Vista:

No puedo Filtrar por Fechas.

Publicado por Freddy Meza (8 intervenciones) el 11/01/2013 22:42:45
Hola, de antemano gracias por la atención, tengo una tabla que contiene una Columna llamada Fecha_p, en la cual están organizadas las fechas por mm/dd/yyyy, y necesito filtrar las fechas para que me muestre entre 01/25/2006 y el 12/31/2012, he tratado de que me muestre aunque sea solo los datos de un día especifico con la función: set filter to Fecha_p = "12/07/2012", pero me sale: Incompatibilidad entre el tipo de operador y el tipo de operando. Gracias por la pronta ayuda .
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
Imágen de perfil de Mauricio

No puedo Filtrar por Fechas.

Publicado por Mauricio (1368 intervenciones) el 11/01/2013 22:54:48
SET DATE TO DMY
SET CENT ON
Para un dia especifico: SET FILTER TO fecha_p = CTOD("12/07/2012")
Para que no te incompatibilidad de datos en este caso de tipo fecha, debes convertir el formato de caracter a fomato de fecha.
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

No puedo Filtrar por Fechas.

Publicado por Saul (676 intervenciones) el 11/01/2013 23:13:34
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
fFechaIni   = CTOD("01/25/2006")
fFechaFin  = CTOD("12/31/2012")
 
**En SQL
 
SET DATE TO YMD
 
	*-----------------Script para bancos -------------------------------------------------------
	 lcSQLcommand = ""
	  TEXT TO lcSQLcommand NOSHOW
			select *	From TuTabla
			Where fecha_p Between ?fFechaIni And ?fFechaFin
	  ENDTEXT
 
	 *-Conecta MySql
	 =SQLEXEC(CnxSde,lcSQLcommand,"cuLisC")
  	 *--------------------------------------------------FIN SCRIPT ----------------------------------------
 
SET DATE TO BRITISH
 
 
 
**En FOX
 
SET DATE TO YMD
 
			select *	From TuTabla
			Where Between(fecha_p ,fFechaIni,fFechaFin )
                        INTO CURSOR cuLisC
 
SET DATE TO BRITISH


Suerte.

Saludos
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

No puedo Filtrar por Fechas.

Publicado por Freddy Meza (8 intervenciones) el 11/01/2013 23:53:58
Hola Saul, mil gracias por tu oportuna respuesta, estoy colocando los siguientes comandos en FOX segun las instrucciones que me das:

SET DATE TO YMD
select * From Mant_cab Where Between(fecha_p ,2006/09/25,2008/11/13) y me sale lo siguiente: Incompatibilidad entre el tipo de operador y el tipo de operando, no se si he digitado algo mal. Nota: Mant_cab es el nombre de mi tabla. Gracias
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
Imágen de perfil de Mauricio

No puedo Filtrar por Fechas.

Publicado por Mauricio (1368 intervenciones) el 12/01/2013 01:37:27
Puedes intentarlo con esto:
select * From Mant_cab Where Between(fecha_p ,CTOD("2006/09/25"),CTOD("2008/11/13"))
Me parece que quieres seguir comparando un campo tipo fecha contra campos tipo caracter.....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

No puedo Filtrar por Fechas.

Publicado por Freddy Meza (8 intervenciones) el 12/01/2013 02:58:50
Mauricio, Ya me funciono Mil gracias eres realmente un Maestro, gracias dedicar el tiempo para ayudar a este aprendiz.
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

No puedo Filtrar por Fechas.

Publicado por Freddy Meza (8 intervenciones) el 12/01/2013 03:50:49
Mauricio que pena molestarte, pero tengo un problema, efectivamente el filtro que me ayudaste me sirvió, pero cuando quiero cambiar un dato no de deja, tengo que darle ESC pero entonces el filtro se pierde, o si quiero cambiar varios datos a la vez despues de hacoer la instruccion que me diste con REPLACE me sale: No se puede Actualizar el Objeto Cursor. Que puedo hacer?
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
Imágen de perfil de Mauricio

No puedo Filtrar por Fechas.

Publicado por Mauricio (1368 intervenciones) el 12/01/2013 14:21:39
Me parece que estas trabajando con vfp6.0 la cual no deja modificar el browse, pero si lo puedes modificar con la version vfp7.0 en adelante:
select * From Mant_cab Where Between(fecha_p ,CTOD("2006/09/25"),CTOD("2008/11/13")) READ/WRITE
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

No puedo Filtrar por Fechas.

Publicado por Freddy Meza (8 intervenciones) el 13/01/2013 19:36:17
Hola Mauricio y a todos los de la web, como van. Ya descargue la version 9 de FOX y me pasa lo mismo, yo creo que el problema es por que cuando ejecuta esta instrucción, me sale una pantalla adicional llamada CONSULTA sobre la cual como te digo, no se puede hacer cambios, estoy utilizando la siguiente orden: SET FILTER TO fecha_p = CTOD("10/01/2013") y con esta si puedo ver una fecha especifica y modificar, pero he hecho cualquier cantidad de Modificaciones a este comando, pero nada que puedo ver fechas entre un rango especifico. Gracias por tu Ayuda
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

No puedo Filtrar por Fechas.

Publicado por Dario Vega (3 intervenciones) el 14/04/2016 23:43:28
Sos un maestro ídolo.
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

necesito filtrar los saldos cero cual seria el comando

Publicado por eli (1 intervención) el 06/09/2013 16:49:35
nesesito saber como puedo filtrar los saldos cero de un sistema de la tabla de cobros q comando podria utilizar grasias por su atencion
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

No puedo Filtrar por Fechas.

Publicado por Freddy Meza (8 intervenciones) el 11/01/2013 23:25:58
Hola Mauricio, muchísimas gracias por tu apoyo y pronta respuesta, Si me funciono como me indicaste ya puedo ver por días, pero si no es molestia, me puedes decir ahora como filtrar para que solo aparezcan los datos entre una fecha y otra?
Gracias de Antemano.
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

No puedo Filtrar por Fechas.

Publicado por neo (1601 intervenciones) el 12/01/2013 00:56:59
Para un filtro de un intervalo de fechas...

1
2
3
4
5
6
7
local fecha_inicial, fecha_final
fecha_inicial=ctod("01/25/2006")
fecha_final=ctod("12/31/2012")
 
SET FILTER TO fecha_p = >fecha_inicial and fecha_p=<fecha_final
 
thisform.refresh


Pero yo recomiendo mejor una consulta SQL

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
set date mdy
set century on
 
local fecha_inicial, fecha_final
fecha_inicial=ctod("01/25/2006")
fecha_final=ctod("12/31/2012")
 
select mi_tabla
set order to fecha_p
select *from mi_tabla where fecha_p=>fecha_inicial and fecha_p=<fecha_final into cursor cConsulta
If reccount()>0
select cConsulta
browse
else
wait window "No existe la fecha, intente de nuevo."
endif


Suerte!
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

No puedo Filtrar por Fechas.

Publicado por Freddy Meza (8 intervenciones) el 12/01/2013 03:01:55
Hola Neo. mil gracias por tu tiempo y por contestarme, voy a probar con lo que me dices a ver si me funciona.
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

No puedo Filtrar por Fechas.

Publicado por Saul (676 intervenciones) el 12/01/2013 05:52:05
Yo te aconsejo que no te acostumbres a usar SET FILTER

use el SELECT SQL

Porque el SET FILTER se torna muy lento..

Saludos
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

No puedo Filtrar por Fechas.

Publicado por neo (1601 intervenciones) el 05/02/2013 18:52:27
Estoy totalmente de acuerdo contigo... por eso recomiendo la segunda opcion.


Saludos!
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