• Viernes 8 de Noviembre de 2024, 21:52

Autor Tema:  Consulta Sql Con Fechas Que Se Ingresan Con Un  (Leído 2937 veces)

ambarrerar

  • Nuevo Miembro
  • *
  • Mensajes: 17
    • Ver Perfil
Consulta Sql Con Fechas Que Se Ingresan Con Un
« en: Viernes 5 de Mayo de 2006, 16:28 »
0
Hola

Tengo un problema muy grande en una consulta de SQL.

Resulta que estoy haciendo un programa que haga una consulta que devuelva los datos que hay entre una fecha y otra. La idea es que el usuario ingresa las 2 fechas mediante un DateTimePicker, el problema es que me sale un error y no se como arreglarlo.

Este es el codigo que estoy utilizando

AnsiString consulta;
String fecha1, fecha2;
TDate FechaInicial, FechaFinal;
FechaInicial=fechain->Date;
FechaFinal=fechafin->Date;

Word an, mn, dn;
Word ahoy, mhoy, dhoy ;
DecodeDate(FechaInicial, an, mn, dn);
DecodeDate(FechaFinal, ahoy, mhoy, dhoy);
fecha1= IntToStr(dn) + '.' + IntToStr(mn)+ '.' + IntToStr(an) ;
fecha2= IntToStr(dhoy)+ '.' + IntToStr(mhoy) + '.' + IntToStr(ahoy);
ShowMessage(fecha1);
ShowMessage(fecha2);

consulta = "SELECT * FROM RIPS.db WHERE FechaProced >=fecha1 AND FechaProced <=fecha2 AND CodigoEntidad='EPS016'";
consulta = consulta + "order by FechaProced";
Query1->Close();
Query1->SQL->Clear();
Query1->SQL->Add(consulta);
Query1->Open();

El error es este
'Invalid field name, fecha1'

Porfa si alguien sabe como puedo hacer que me funcione la consulta le agradeceria mucho.

SkaJaf

  • Miembro activo
  • **
  • Mensajes: 37
    • Ver Perfil
Re: Consulta Sql Con Fechas Que Se Ingresan Con Un
« Respuesta #1 en: Viernes 5 de Mayo de 2006, 19:17 »
0
Prueba a hacer:

consulta="SELECT * FROM rips.db WHERE fechaproced>="+AnsiString(fecha1)+" AND fechaproced<="+AnsiString(fecha2)+" AND CodigoEntidad=\"EPS016\"";

consulta=consulta+" order by fechaproced;";

Nota: Ten cuidado con los espacios, y he supuesto que EPS016 es un varchar;

Espero que te sea de ayuda.

ambarrerar

  • Nuevo Miembro
  • *
  • Mensajes: 17
    • Ver Perfil
Re: Consulta Sql Con Fechas Que Se Ingresan Con Un
« Respuesta #2 en: Viernes 5 de Mayo de 2006, 21:54 »
0
Hola!

No mira que no me funcionó

Linspire

  • Miembro MUY activo
  • ***
  • Mensajes: 232
    • Ver Perfil
    • http://www.cedrela.com.mx
Re: Consulta Sql Con Fechas Que Se Ingresan Con Un
« Respuesta #3 en: Viernes 5 de Mayo de 2006, 23:12 »
0
Quiza si publicas la tabla en donde quieres hacer la consulta yo pueda ayudarte, al parecer no es un problema tan grande o revisa que los nombres de tus campos estan bien escritos porque el error que pones si no me equivoco solo sale cuando un campo está mal escrito.

Suerte!..
[size=109]My Blog de Programación[/i][/b][/size]
´


[size=109]Tan solo quiero pensar que todo es un sueño y que no quiero despertar
porque quiero controlarlo como yo quiera.
[/size]

Todo es posible, lo imposible solo cuesta un poco más. Dan Drown.

ambarrerar

  • Nuevo Miembro
  • *
  • Mensajes: 17
    • Ver Perfil
Re: Consulta Sql Con Fechas Que Se Ingresan Con Un
« Respuesta #4 en: Domingo 7 de Mayo de 2006, 05:12 »
0
Hola

Mira este es el programa que estoy tratando de hacer.

Si me puedes ayudar te lo agradeceria.

Muchas gracias!

Me falto un archivo aqui lo vuelvo a mandar
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.

Linspire

  • Miembro MUY activo
  • ***
  • Mensajes: 232
    • Ver Perfil
    • http://www.cedrela.com.mx
Re: Consulta Sql Con Fechas Que Se Ingresan Con Un
« Respuesta #5 en: Martes 9 de Mayo de 2006, 00:40 »
0
Bueno, ya revisé tu tabla (disculpa que sea hasta ahora, lo que pasa es que ese día tuve que ser hospitalizado de urgencia por una infección en una herida de una cirugía reciente) y dejame ´preguntarte ¿Cómo diablos piensas hacer esa consulta si en tu tabla no existen algunos campos que tratas de utilizar?, por ejemplo el campo "fechaproced" no existe en la tabla, por lo tanto SQL no puede encontrar ese campo. O si entendí mal pues vuelveme a explicar.

Precisamente el error que te sale dice "Nombre de campo inválido, fecha1". Significa que no existe o tiene otro nombre.
[size=109]My Blog de Programación[/i][/b][/size]
´


[size=109]Tan solo quiero pensar que todo es un sueño y que no quiero despertar
porque quiero controlarlo como yo quiera.
[/size]

Todo es posible, lo imposible solo cuesta un poco más. Dan Drown.

ambarrerar

  • Nuevo Miembro
  • *
  • Mensajes: 17
    • Ver Perfil
Re: Consulta Sql Con Fechas Que Se Ingresan Con Un
« Respuesta #6 en: Martes 9 de Mayo de 2006, 17:09 »
0
hola!

Espero que estes mejor de tu salud.

Mira yo no te entiendo bien, porque revise la tabla y si hay cun campo que se llama FechaProced, entonces no se bien que es lo que pasa.

Lo que yo quiero hacer es esto:
Se abre el programa, hay dos DataTimePicker uno es para que escojan la fecha inicial y el otro la feha final.
El programa deberia hacer una busqueda y dar como resultados los datos que se encuentren entre esas 2 fechas.

En el programa yo cogi las fechas de los DataTime Picker y las separe para poder ponerlas de esta forma 02.04.2006 que es como supuestamente SQL acepta las fechas.

En el codigo SQL le digo que muestre todos los campos de la tabla RIPS donde la FechaProced este entre fecha1 y fecha2.

Mira yo he estado probando y si yo en vez de poner fecha1 y fecha 2 pongo por ejemplo '02.05.2006' y '30.05.2006' ejemplo:
consulta = "SELECT * FROM RIPS.db WHERE FechaProced >= ''02.05.2006' AND FechaProced <= '30.05.2006' AND CodigoEntidad='EPS016'";no me genera ningun error y hace bien la busqueda, entonces yo pienso que lo que estoy haciendo mal es la adquisicion de las fechas por medio del DataTimePicker, o tambien como los estoy declarando, la verdad he probado muchas cosas y nada, siempre me sale un error, porfa necesito mucha ayuda.

Gracias!

Espero que te mejores...

Te vuelvo a mandar la tabla.
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.

Linspire

  • Miembro MUY activo
  • ***
  • Mensajes: 232
    • Ver Perfil
    • http://www.cedrela.com.mx
Re: Consulta Sql Con Fechas Que Se Ingresan Con Un
« Respuesta #7 en: Miércoles 10 de Mayo de 2006, 00:56 »
0
Pues bien my friend, ya revise tu código y en realidad era solo un detalle, lo correcto es así, todo lo demás esta bién (creo), lo correcto es:

Word an, mn, dn;
Word ahoy, mhoy, dhoy ;
DecodeDate(FechaInicial, an, mn, dn);
DecodeDate(FechaFinal, ahoy, mhoy, dhoy);
fecha1= IntToStr(dn) + '.' + IntToStr(mn)+ '.' + IntToStr(an) ;
fecha2= IntToStr(dhoy)+ '.' + IntToStr(mhoy) + '.' +IntToStr(ahoy);
ShowMessage(fecha1);
ShowMessage(fecha2);
consulta = "SELECT * FROM RIPS WHERE FechaProced >= '" + fecha1 + "' AND FechaProced <= '" + fecha2 + "' AND CodigoEntidad='CA1309'";
Query1->Close();
Query1->SQL->Clear();
Query1->SQL->Add(consulta);
Query1->Open();

Si no te funciona publica otro mensaje, por cierto la última tabla que enviaste no es la misma que publicaste junto con el proyecto.

PD. Estoy mejor, solo tengo una herida como de 4 cm de largo, 0.5 de ancho y 1cm de profundo, es para hacer las curaciones (que por cierto duelen un p...), los médicos dicen que en unas tres semanas el tejido se regenerará y la herida cerrará por si sola, solo tengo que estar bajo estricto control médico. Gracias por la buena suerte.

Suerte!..
[size=109]My Blog de Programación[/i][/b][/size]
´


[size=109]Tan solo quiero pensar que todo es un sueño y que no quiero despertar
porque quiero controlarlo como yo quiera.
[/size]

Todo es posible, lo imposible solo cuesta un poco más. Dan Drown.

ambarrerar

  • Nuevo Miembro
  • *
  • Mensajes: 17
    • Ver Perfil
Re: Consulta Sql Con Fechas Que Se Ingresan Con Un
« Respuesta #8 en: Miércoles 10 de Mayo de 2006, 16:17 »
0
Hola!!

Si me funciono!!!

Muchas gracias por tu ayuda!!!

Espero que te mejores pronto...

Linspire

  • Miembro MUY activo
  • ***
  • Mensajes: 232
    • Ver Perfil
    • http://www.cedrela.com.mx
Re: Consulta Sql Con Fechas Que Se Ingresan Con Un
« Respuesta #9 en: Miércoles 10 de Mayo de 2006, 18:36 »
0
Ok, por nada, si necesitas algo más no dudes en preguntar, por supuesto que este dentro de mis posibilades.
[size=109]My Blog de Programación[/i][/b][/size]
´


[size=109]Tan solo quiero pensar que todo es un sueño y que no quiero despertar
porque quiero controlarlo como yo quiera.
[/size]

Todo es posible, lo imposible solo cuesta un poco más. Dan Drown.