![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Bien, amigo, pero nada de msn ni email privado, ni nada de eso, porque entonces no sirve de nada los foros. Como bien sabrás, en los foros se hacen preguntas y se contestan para que otras personas con problemas o dudas similares puedan hacer búsquedas y encontrar la respuesta. Si se hace "privadamente" entonces no hay soluciones y los foros no sirven de nada.
Bien, una vez soltado el rollo, y en espera de que hayas leído nuestra guía de estilo ![]() Tú tienes una tabla en la base de datos con productos y entre los campos están su CODIGO, NOMBRE Y FECHACADUCIDAD. Ahora quieres consultar los productos que caduquen en xx días a partir de la fecha actual, ¿es eso? Bien, entonces debes preguntar el número de días que quieras y luego hacer el select, algo así: Suponemos que el usuario escribe: 20 días, entonces sería:
Ahora bien, si el usuario puede poner cualquier fecha y cualquier cantidad de días, entonces es mejor que te crees el select con parámetros y se los pases, por ejemplo, tienes un query:
Evidentemente, el query estará asociado a un datasource y el datasource al dbgrid donde quieras mostrar los datos. |
#2
|
|||
|
|||
bueno entendi, pero poseemos problemas ejje tienes qe tenerme un poco de pasiencia.
estoy trabajando con componentes ADO cuando copio el codigo le pongo ADO a el query que me posteas en tu ejemplo y me arroja error en el datetimepicker y en los parametros de hecho esos parametros son os que arrojan error el error dice algo de que se desconoce la palabra 'params'... y el codigo si lo entiendo hasta mira no se me habia ocurrido de que el cliente puede listar escojiendo el mismo los numeros de dias restantes elcodigo lo entiendo pero no se como meterlo a la forma |
#3
|
||||
|
||||
Claro, el código que he puesto antes "no funciona", era sólo como referencia para adaptarlo a lo que estás haciendo tú, que como no tengo ni idea de qué código usas, ni qué componentes, ni nada de nada... es sólo eso, para que te hagas una idea.
|
#4
|
|||
|
|||
bueno mira traduciendo lo que me escribes hago esto
ADOQuery1.close; ADOQuery1.sql.text:='select * from MEDICAMENTOS where fechacaducidad < :lafecha + :numerodias'; ADOQuery1.Parameters.ParamByName('0') := datetimepicker1.date; ADOTable1.parameters.parambyname('1') := strtoint(edit1.text); ADOQUERY1.open los corchetes que contienen los parametros dan error y los parentesis no... el error da a la asigacion!!! |
#5
|
|||
|
|||
base de datos hecha en microsoft access
uso delphi 7 esta base de datos esta conectada a delphi mediante componentes ADO y tengo esto: ADOconection ADOtable ADOQuery (2) dataSource 1 DBGrid el adoconection esta con el motor de la base de datos o algo asi el adotable contiene la tabla 'MEDICAMENTOS' de la base de datos el adoquery pues esta conectado con el adoconection y en el SQL la consuta select* from MEDICAMENTOS F_CADUCIDAD y el dbgrid asociado al ADOQuery el datasource 2 con el adoquery1 y el datasource1 con el adotable1 de esta manera |
#6
|
||||
|
||||
cual es la sentencia que estas colocando en el Adoquery?
tiene parametros?
si adecuas tu sentencia a la que te mostro casimiro en el ejemplo anterior, te deberia funcionar
__________________
Dulce Regalo que Satanas manda para mi..... |
#7
|
||||
|
||||
Creo que falta el tipo de campo, se supone que serán esos, como tampoco lo has dicho. |
#8
|
||||
|
||||
Hola
Cita:
Es una de las cosas que cambia con IBX. Ado usa Parameters[ ]. Saludos
__________________
Siempre Novato |
#9
|
|||
|
|||
mira lo cooque asi:
Adoquery1.close; Adoquery1.sql.text:='select * from MEDICAMENTOS where F_CADUCIDAD < :lafecha + :numerodias'; Adoquery1.Parameters.ParamByName('0') := datetimepicker1.date; Adoquery1.Parameters.ParamByName('1') := strtoint(edit1.text); Adoquery1.open; y en el SQL del ADOQUERY: select * from MEDICAMENTOS where F_CADUCIDAD < :lafecha + :numerodias al compilar salen estos errores: left sides cannot assigned ((supongo que es en la asignacion del datetimepicker1.date caundo se lo asignamos al parambyname('0')..)) incompatible types 'Tparameter and Tdate la raya roja del error fatal jeje señala las lineas de los parametros |
#10
|
||||
|
||||
los nombres de los parametros estan mal
pruebalo asi
__________________
Dulce Regalo que Satanas manda para mi..... |
#11
|
|||
|
|||
haber ya habia practicado con algo de la siguiente forma pero este solo me trae los vencidos y los que estan por vencerse cuando inserto el codigo del medicamento...
que hace??? consulta la tabla y compara el codigo del medicamento, consulta su fecha de caducidad y la compara con un datetimepicker y asi si me funciona... pero quiero hacer lo que vengo explicando desde arriba en el foro var c:string; begin if (edit1.text<>'')then begin c:=''; C:='select MEDICAMENTOS.F_CADUCIDAD from MEDICAMENTOS where MEDICAMENTOS.COD='+comilla.Text + edit1.Text + comilla.text; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add(c); ADOQuery1.Active:=True; edit2.Text:=ADOQuery1.Fields.Fields[0].AsString; c:='select MEDICAMENTOS.COD, MEDICAMENTOS.NOMBRE, MEDICAMENTOS.F_CADUCIDAD from MEDICAMENTOS where MEDICAMENTOS.COD='+comilla.Text + edit1.Text + comilla.text; ADOQuery2.SQL.Clear; ADOQuery2.SQL.Add(c); ADOQuery2.Active:=True; Edit1.Clear; end; if Edit2.Text=DateToStr(DateTimePicker1.Date) then begin Application.MessageBox('Medicamento Expiró','FarmaSoft',MB_OK); end else begin Application.MessageBox('No Hay Medicamentos Vencidos','FarmaSoft',MB_OK); end; end; el campo comilla.text es un edit que contiene una comilla puesto delphi molesta con las consultas que llevan multiples ' ' espero me entiendan |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Manejo de Fechas - Sumar o restar días | r1d2m3 | OOP | 2 | 30-10-2010 03:06:24 |
Manejo de Fechas en Firebird 2.1 | Jose Roman | SQL | 3 | 17-02-2009 17:15:03 |
Manejo de Fechas en Delphi para enviar una consulta | rgstuamigo | OOP | 7 | 09-10-2008 23:26:14 |
Manejo de fechas | nazly | Varios | 2 | 14-03-2008 19:05:23 |
Manejo de fechas | Leogiro | OOP | 2 | 11-09-2004 00:22:39 |
![]() |
|