Ver Mensaje Individual
  #5  
Antiguo 14-07-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Reputación: 30
jhonny Va camino a la famajhonny Va camino a la fama
Puedes intentar usar el Execute Statement, nunca lo he usado con parámetros de fechas pero me supongo que asi debería funcionar:

Código SQL [-]
 
CREATE PROCEDURE REPNUM (
    E_LIMITE INTEGER = 1,
    E_INICIAL DATE,
    E_FINAL DATE)
RETURNS (
    S_PREFIJO VARCHAR(3),
    S_NUMERO VARCHAR(20),
    S_LLAMADAS INTEGER)
AS
begin
  FOR
  execute statement 'select first ' || CAST(E_limite AS CHAR(1)) || 'Prefijo , Numero, count(numero) as numlla from llamadas where fecha between '||
  CAST(E_Inicial AS CHAR(11)) || ' and '||
  CAST(E_Final AS CHAR(11)) || ' group by prefijo, numero order by prefijo, numlla desc'
  INTO :S_Prefijo, :S_Numero, :S_Llamadas DO
  suspend;
end

Pruebalo y si te funciona, espero te sirva .
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita