Filtrar por fecha dinamicamente sql y delphi7
Saludos tengo un sistema de personal donde me gustaria filtrar por fecha una base de datos utilizo sql y delphi 7 me gustaria poder hacer un filtro dinamico que pueda seleccionar en un datetimepicker la fecha y que me filtre la tabla por esa feha pero es que no se como hacer lo en codigo solo tengo la idea
si pueden ayudar me Gracias una vez mas. |
Hola...
Podrías hacer algo como esto:
Este método recibe dos parámetros, la fecha que quieres usar para filtrar tu tabla y un objeto TQuery que es sobre el que quieres hacer el filtro... Para llamarlo desde una forma que tenga un TDateTimePicke, un TDBGrid, un TQuery, un TDataSource y un TButton haces esto:
Saludos... |
Das muy pocos datos, no dices si estas trabajando con alguna tabla en un grid o con una quer??
Te puedo dar un par de consejos: Lo puedes hacer con un boton despues de seleccionar la fecha o en el evento OnCloseUp del datetime picker y podria ser algo asi como: Si lo haces con un query:
Si lo haces con un TTable:
Espero te sirvan estas ideas Saludos |
quiero filtrar una fecha en un dateTimePicker1
hola,he leido muchos foros aca adentro y no logro encontrar mi error, necesito ayuda, primero, uso BD access el campo "fecha" es de fecha/hora, utilizo AdoQuery en delphi, un dateTimePicker, un dbgrid y para indicar el filtro seria eligiendo desde el dateTimePicker y luego presionar un button.
intente cambiar formato, ya q en mi BD se almacena dd/mm/aaaa y en el dbgrid se ve mm/dd/aaaa, eso me funciono, ya que el valor lo hacia copiar en un edit, tamb intente crear una variable vfecha y darle el valor del dateTimePicker convirtiendolo, pero se me rompe en la condicion q le doy para el sql. he leido de hacer parametros, eso nunca lo vi en clases, me explicarian como se asigna y si se debe declarar en la seccion VAR??? aca les mando una parte del codigo.... no se asusten ya que lo que he encontrado lo ponia ahi, y comentaba y descomentaba. si alguien me ayuda a ordenar eso se lo agradezco, de ser asi, aun denme el fragmento de codigo y si debo declarar algo en la seccion var o donde , gracias esto es: (hoy un desorden jaja) procedure TFormListadoVentas.ButtonfiltrofechaClick(Sender: TObject); var vFecha:String; begin //ShortDateFormat:= 'd/m/yyyy'; vFecha:=FormatDateTime('dd/mm/yyyy',dateTimePicker1.DateTime);//Componente Month Calendar //el formato lo puedes cambiar a dd/mm/yyyy o mm/dd/yyyy editfiltrofecha.Text := vfecha; formlistadoVentas.ADOQueryFiltro.Active := false; // Utilizamos quotedString para ponerle comillas simple a la cadena (en el caso que sea de tipo string ;) ) FormListadoVentas.AdoQueryFiltro.SQL.Text := 'SELECT * FROM tVentas WHERE Fecha ='+quotedstr(xfecha); ParamByName('xFecha').AsDate := DateTimePicker1.Date; formlistadoVentas.ADOQueryFiltro.Active := true; FormListadoVentas.dbgridVentas.DataSource := datasourceFiltro; FormListadoVentas.DBNavigator1.DataSource := datasourceFiltro; end; se los agradezco, como veran saque mucho de aca, y aun los comentarios de quien posteo estan , help me, please gracias , |
Cita:
Muy buen dia a todos, estuve buscando sobre como filtrar un dbgrid con la fecha seleccionada de un datetimepicker y encontre este hilo.. Lo que me gustaria saber es donde pones este código:
Desde ya muchas gracias.. Saludos!! |
Cita:
Bueno depende del efecto que busques, por ejemplo: Si deseas que se vaya filtrando a medida que se producen cambios en el TDateTimePicker:
Si deseas que lo haga al salir del TDateTimePicker:
O si deseas que el filtrado se decida manualmente: También podría ser filtrado en el evento OnCloseUp del TDateTimePicker, ... Saludos. |
Hola...
ecfisa, yo creo que más bien se refiere a donde coloca el código del método y no desde donde hace la llamada al método... En dado caso, sería algo así:
Saludos... |
Cita:
Saludos. |
Muchas gracias por sus respuestas... En realidad tiene razon maeyanes pero igual no estaba de mas la explicacin de ecfisa...
Yo quería saber donde iba el código del método, porque no soy muy ducha en esto y nunca había utilizado un método.. Pero ya me sacaron la duda.. Muchas gracias.. |
Buen dia..
Eh estado aplicando los códigos como me han dicho
Pero me salta el siguiente error, cuando presiono el boton (donde llamo al metodo DateSearch) Cita:
Necesito saber porque salta ese error, que estoy haciendo mal... Muchas gracias |
estas seguro (a) que el parametro (el valor) se llama Date?
no deberia ser ADate?? |
Me fije bien y en esta codigo, solamente me toma Date..
Pero a este codigo si cambie Date por ADate.. Yo le habia puesto Date, porque a ADate no me lo tomaba..
Pero el error me sigue saltando de igual manera y en el mismo lugar.. |
|
Hola...
El error te está indicando que el token select es desconocido, esto te sucede por que estás usando el método Add cada vez que usas el método, entonces lo que te hace es agregar una línea más. Esto es: Código:
1era vez que usas el método DateSearch:
Si te fijas, el código origina que yo puse usa la propiedad Text:
Otro detalle que noto es que haces uso del componente Q_agen_tur directamente en el código del método, lo cual no debería ser ya que para eso está el parámetro AQuery. Saludos... |
Claro me falto esa linea de codigo, ahora no me salta mas el error..
El problema ahora es que no me busca, me muestra la grilla vacia... Tiene algo que ver la forma en que yo cargue las fechas..??? Porque yo a las fechas no las cargaba con el datetimepicker, directamente las cargada desde un dbedit, conectado al campo FECHA de la tabla AGENDA_TURNOS.. El campo FECHA, tiene la propiedad EditMask a la cual yo le puse Date, para que tome el formato '__/__/__'. No se la verdad porque no me busca.. |
Ahh ok, entonces interprete mal el codigo, ahora veo si lo soluciono....
Yo utilice el Add tambien porque en las consultas siempre utilice esa forma, pero voy a hacer como vos me decis maeyanes asi corroboro que este alli el problema.. Muchas gracias por sus respuestas.. |
La franja horaria es GMT +2. Ahora son las 03:03:37. |
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