[Pgsql-ayuda] Traer (1 a n) registros desde FUNCTION
   
    jorge medina
     
    jorge@dcenter.cl
       
    Sun, 17 Aug 2003 12:26:01 -0400
    
    
  
Hola Amigos:
He intentado una cántidad de formas de traer multiples registros desde una
function Postgres y no he podido.
Abajo hay un procedimiento Interbase el cual recibe un Integer que sirve de
filtro para devolver tuplas agrupadas.
Yo Se que esto debe ser super simple, pero estoy estancado y necesito hacer
el traspaso como para hayer.
Entonces la idea es si alguien pudiera guiarme en la sintaxis postgres
necesaria para realizar lo mismo que abajo les muestro.
Ejemplo:
 id   id_pallet  kilos (Extracto de estructura)
1          1        15.0
1          1        10.3
1          1        05.2
1          2        12.0
2          4        20.3
2          5        20.0
3          6        14.2
4          7        20.3
Select * FROM FUN_TOTALIZAR( 1 )     // Llamada a SP
Me Devuelve
id_pallet  Cajas Kilos
     1            3      30.5
     2            1      12.0
CREATE PROCEDURE FUN_TOTALIZAR ( nSalida Integer)
RETURNS ( id_pallet Integer, Cajas Integer, Kilos Numeric(10,3))
AS
begin
  FOR Select id_Pallet, count(id_caja) Cajas , Sum(Kilos) Kilos
    FROM Stock_Camaras
    WHERE id =  :nSalida           // los ":" identifican variables
ej:( $1 )
    GROUP BY id_Pallet
    INTO :id_pallet, :Cajas,:Kilos
  DO
  BEGIN
     SUSPEND;       // LOOP
  END
end
Gracias Amigos...