Saludos. solicito ayuda sobre el siguiente caso.
Uso firebird 2.5, delphi 7 y recupero fechas desde un procedimiento almacenado el cual recibe un parámetro de la siguiente manera.
Código SQL
[-] select fUltima from OBT_ULTIMAFECHACIERRE(:id_igl);
La estructura interna de dicho procedimiento es esta.
Código SQL
[-] for select max(c_fecha) from cierre where (c_id_igl = :id_igl)
into :fUltima do
suspend;
Debo aclarar que ejecutando esta consulta devuelve la fecha correcta, pero hay no es el problema, el problema esta cuando intento utilizar la fecha devuelta por esta consulta para realizar otra consulta que es la siguiente:
Procedimiento que ejecuto desde delphi dentro de un ibquery:
Código SQL
[-] SELECT * FROM OBT_FECHASTESOROCIERRE(:id_igl, :fecha0, :fecha1)
Esta es la estructura interna del procedimiento en el servidor:
Código SQL
[-]for select distinct(t_fechaingreso) from tfonigl
where (t_fechaingreso between :fUltima and :fechaActual)and(t_id_igl = :id_igl)
into :fechas_dcierre do
suspend;
En vez de devolverme las fechas en el rango especificado en el Where, también devuelve las fechas anteriores a la primera fecha (fUltima) lo cual es incorrecto.