Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-11-2005
Avatar de alcides
alcides alcides is offline
Miembro
 
Registrado: dic 2003
Ubicación: Republica Dominicana
Posts: 204
Poder: 21
alcides Va por buen camino
Duda en parametro de fecha?

Hola a todos,
tengo una duda. en este qry el parametro de fecha no se cumple, me explico:

introduzco fecha inicial 01/02/2005 y fecha final 28/02/2005
y toma en cuenta los registros del mes de enero.

si por favor me pueden ayudar a saber porque?

esto es lo que tengo

Código PHP:
 SELECT *
 
FROM Catalogo INNER JOIN (Detalle inner join Encabezado 
             ON Detalle
.Numero_Transacion Encabezado.Numero_Transacion)
             
ON Catalogo.Cuenta Detalle.Cuenta 
where   Detalle
.fecha_transacion   >= :pfecha_inicial
and       Detalle.fecha_transacion   <= :pfecha_final
and       Encabezado.Nulo 'NO'
order by Detalle.CuentaDetalle.fecha_transacion

Gracias mil,


Alcides
Rep.Dom.
Responder Con Cita
  #2  
Antiguo 16-11-2005
Avatar de epuigdef
epuigdef epuigdef is offline
Miembro
 
Registrado: jul 2005
Posts: 196
Poder: 19
epuigdef Va por buen camino
El tipo de los parámetros es de fecha? Con este tema he tenido mil problemas, e incluso he acabado formateando los campos y los parámetros a yyyymmdd para controlar intervalos.


Un saludo

Edu
Responder Con Cita
  #3  
Antiguo 16-11-2005
Avatar de alcides
alcides alcides is offline
Miembro
 
Registrado: dic 2003
Ubicación: Republica Dominicana
Posts: 204
Poder: 21
alcides Va por buen camino
hola epuigdef,
gracias por tu observación,
de todas maneras espero que me den una manito con este problemita.




Gracias mil,


Alcides
Rep.Dom.
Responder Con Cita
  #4  
Antiguo 16-11-2005
Avatar de epuigdef
epuigdef epuigdef is offline
Miembro
 
Registrado: jul 2005
Posts: 196
Poder: 19
epuigdef Va por buen camino
Qué base de datos estás utilizando?


Edu
Responder Con Cita
  #5  
Antiguo 16-11-2005
Avatar de alcides
alcides alcides is offline
Miembro
 
Registrado: dic 2003
Ubicación: Republica Dominicana
Posts: 204
Poder: 21
alcides Va por buen camino
hola epuigdef,

estoy utilizando access y delphi 7



Gracias mil,


Alcides
Rep.Dom.
Responder Con Cita
  #6  
Antiguo 16-11-2005
Avatar de epuigdef
epuigdef epuigdef is offline
Miembro
 
Registrado: jul 2005
Posts: 196
Poder: 19
epuigdef Va por buen camino
Entonces prueba lo siguiente:

SELECT *
FROM Catalogo INNER JOIN (
Detalle inner join Encabezado
ON Detalle
.Numero_Transacion = Encabezado.Numero_Transacion
)
ON Catalogo.Cuenta = Detalle.
Cuenta
where

format(Detalle.fecha_transacion, 'yyyyMMdd') >=
format(:pfecha_inicial, 'yyyyMMdd')
and

format(Detalle.fecha_transacion, 'yyyyMMdd) <=
format(:pfecha_final, 'yyyyMMdd')
and Encabezado.Nulo =
'NO'
order by Detalle.Cuenta, Detalle.fecha_transacion;
Responder Con Cita
  #7  
Antiguo 16-11-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Saludos

Para sentencias SQL existe la etiqueta [ SQl]sentencia[ /sql](sin espacio), no necesitan usar otra mas ni formatiar su texto

Alcides, porque no usas mejor Betweens
Código SQL [-]
Select * 
from tabla 
where fecha between :fechaini and :fechafin
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #8  
Antiguo 16-11-2005
Avatar de alcides
alcides alcides is offline
Miembro
 
Registrado: dic 2003
Ubicación: Republica Dominicana
Posts: 204
Poder: 21
alcides Va por buen camino
hola epuigdef,

trabaje con el ejemplo que me diste y marca un error:
Error de sintaxis (falta operador) en la expresión de consulta


Gracias mil,

Alcides
Rep.Dom.
Responder Con Cita
  #9  
Antiguo 16-11-2005
Avatar de alcides
alcides alcides is offline
Miembro
 
Registrado: dic 2003
Ubicación: Republica Dominicana
Posts: 204
Poder: 21
alcides Va por buen camino
hola vtdeleon,

gracias, por el consejo, voy a intentar y te hago saber.


Gracias mil,



Alcides
Rep.Dom.
Responder Con Cita
  #10  
Antiguo 16-11-2005
Avatar de epuigdef
epuigdef epuigdef is offline
Miembro
 
Registrado: jul 2005
Posts: 196
Poder: 19
epuigdef Va por buen camino
Ups! Olvidé cerrar la comilla en la línea

Código SQL [-]
format(Detalle.fecha_transacion, 'yyyyMMdd) <= 


debes ponerlo así:

Código SQL [-]
format(Detalle.fecha_transacion, 'yyyyMMdd') <= 


De todas formas prueba la solución que te ha dado vtdeleon, que seguro que sabe bastante más que yo!

Edu
Responder Con Cita
  #11  
Antiguo 16-11-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
El tema de fechas a todos nos ha dado quebraderos de cabeza alguna vez.

Al usar un formato determinado, nos obliga a utilizar el "format" cada vez que usamos una fecha, y si no lo hacemos, nos devolverá valores incorrectos.

La solución de parámetros que ofrece vtdeleon tiene como principal ventaja, que delphi se encarga de transformar las fechas al formato que espera nuestro motor de bases de datos.

Código Delphi [-]
query.Close;
query.Sql.text := 'Select * '+
         'from tabla '+
         'where fecha between :fechaini and :fechafin';
query.paramsbyname('fechaini').AsDate := Timepicker1.date;
query.paramsbyname('fechafin').AsDate := Timepicker2.date;
query.Open;

En caso de un Adoquery, creo que no existe ParamsByName, sino Parameters. XXX

saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #12  
Antiguo 16-11-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Saludos

Cita:
Empezado por Lepe
...,sino Parameters. XXX
Creo que se utiliza asi:
Parameters.ParamByName('blabla').value;
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #13  
Antiguo 16-11-2005
Avatar de alcides
alcides alcides is offline
Miembro
 
Registrado: dic 2003
Ubicación: Republica Dominicana
Posts: 204
Poder: 21
alcides Va por buen camino
hola a todos,


vtdeleon todo salio bien con el between,
mil gracias.

gracias Lepe, gracias epuigdef por su ayuda.


Gracias mil,

Alcides
Rep.Dom.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 11:05:28.


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
Copyright 1996-2007 Club Delphi