Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Filtrar por campo con TCalendar (https://www.clubdelphi.com/foros/showthread.php?t=74159)

leogobo 02-06-2011 02:00:39

Filtrar por campo con TCalendar
 
Hola,

Lo que pasa es que no he podio filtrar por fecha en un campo de una tabla que se llama "Fecha Recibido". Cuando pongo la instruccion:

Código Delphi [-]
Dbf1.Filter:= 'Fecha Recibido =' + QuotedStr(Calendar1.Date);

El problema esta en que el campo tiene un espacio entre las dos palabras "Fecha Recibido".

Como puedo solucionar esto sin cambiar el nombre del campo??

Gracias

ecfisa 02-06-2011 03:23:17

Hola leogobo.


Cuando tenés nombres de campos con caracteres especiales o con espacios tenés que encerrar el nombre del campo entre corchetes:
Código Delphi [-]
...
begin
  Dbf1.Filtered:= False;
  Dbf1.Filter:= '[Fecha Recibido]='+QuotedStr(DateToStr(MonthCalendar1.Date));
  Dbf1.Filtered:= True;
  ...
end;

Saludos.

leogobo 02-06-2011 03:32:50

Cuando lo pongo entre corchetes como me dijiste me sale el siguiente error:

Index based on unknown field "[".

ecfisa 02-06-2011 03:46:16

Que raro, lo probé y funciona bien...

Tal vez me haya equivocado al pensar que estás usando DB... revisá este artículo de embarcadero: DB.TDataSet.Filter .

¿ Con que componentes estás trabajando ?

Un saludo.

leogobo 02-06-2011 04:04:33

Pues estoy utilizando TCalendar y para el manejo de una tabla de dBase el componente TDbf.

Sera que no funciona porque estoy en lazarus ??

ecfisa 02-06-2011 04:18:02

Cita:

Empezado por leogobo (Mensaje 402286)
para el manejo de una tabla de dBase el componente TDbf.
Sera que no funciona porque estoy en lazarus ??

Mmm podría ser, pero pareciera que es más una restricción de los componentes TDbf. Ahora recuerdo que hablamos de ellos en otro post.

Sé que es justamente lo contrario a lo que buscas, pero si los componentes TDbf o Lazarus no permiten nombres de campos con espacios,
no te va a quedar otro remedio que renombrar el campo.

Saludos.

leogobo 02-06-2011 04:35:22

pues finalmente si me toco cambiar el nombre del campo.

Gracias.

leogobo 02-06-2011 04:40:32

Tengo otra preguntica, no se si se puede en este mismo post.

Como puedo hacer para que cuando presione una letra en un TDBComboBox, me comience a ubicar desde el primer item con esta letra en toda la lista que esta organizada alfabéticamente ???

ecfisa 02-06-2011 05:23:45

Hola.

Creo que deberías crear otro hilo con tu nueva pregunta y te explico el motivo de esta recomendación.
Suponé que estás buscando: DBComboBox posicionarme alfabéticamente, te vá a ser muy difícil encontrarlo
si la respuesta está en un hilo titulado: Filtrar por campo con TCalendar. ;)

Saludos.:)


La franja horaria es GMT +2. Ahora son las 20:37:56.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi