select * from p_gen_interes('CL001',1,'gerardo');
y en duro dentro la funcion p_gen_cargakihgo:
a:= p_gen_interes('CL001',1,'gerardo');
me funciona tb.
Pero la idea es generarla en forma dinamica:
por poder ejecutar una variedad de funciones
Ojo la funcion tb retorna un dato que es Money.
Atte.,
Gerardo.
________________________________
Date: Fri, 27 Jun 2008 12:37:08 -0700
From: lennin.caro@yahoo.com
Subject: RE: [pgsql-es-ayuda] llamadas dinamicas
To: jurasec@gmail.com; gergonvel@hotmail.com
CC: pgsql-es-ayuda@postgresql.org
si usas p_gen_interes('CL001',1,'gerardo') desde una consola te funciona perfectamente?
--- On Fri, 6/27/08, Gerardo Gonzalez wrote:
From: Gerardo Gonzalez
Subject: RE: [pgsql-es-ayuda] llamadas dinamicas
To: "Julio Cesar Rodriguez Dominguez"
Cc: "Ayuda Postgres"
Date: Friday, June 27, 2008, 5:36 PM
Señores me pueden ayudar?:
Lo que estoy haciendo es:
declare
c_par_cobro refcursor;
r_par_cobro record;
vquery varchar(100);
inp_age_id char(05);
inp_cli_folio int;
inp_usu_id varchar(10);
Begin
....
....
fetch
c_par_cobro into r_par_cobro;
while found loop
v_query:= r_par_cobro.cob_prc_almacenado || '(' ||
quote_literal(inp_age_id) ||
','||inp_cli_folio||','||quote_literal(inp_usu_id)||')';
raise notice '%', v_query;
execute v_query into v_par_cobro;
end loop;
close c_par_cobro;
.....
....
end
con esto obtengo la siguiente cadena:
p_gen_interes('CL001',1,'gerardo')
la cual la executo con:
execute v_query into v_par_cobro;
pero lo que sucede es que me arroja el siguiente error:
ERROR: error de sintaxis en o cerca de «p_gen_interes» at character 1
QUERY: p_gen_interes('CL001',1,'gerardo')
CONTEXT: PL/pgSQL function "p_gen_cargakihgo" line 110 at EXECUTE
statement
PD Utilizo el postgres 8.3
Muchas Gracias de antemano....
Gerardo
> From:
gergonvel@hotmail.com
> To: jurasec@gmail.com
> CC: pgsql-es-ayuda@postgresql.org
> Subject: RE: [pgsql-es-ayuda] llamadas dinamicas
> Date: Wed, 11 Jun 2008 23:14:50 -0400
>
>
> Te agradezco Julio;
>
> Me surge otra duda y como sería la formacion de l execute si la funcion a
la que
> se llama devuelve un valor.
>
> Atte.,
> Gerardo
>
> ----------------------------------------
>> Date: Wed, 11 Jun 2008 20:38:24 -0500
>> From: jurasec@gmail.com
>> To: gergonvel@hotmail.com
>> Subject: Re: [pgsql-es-ayuda] llamadas dinamicas
>> CC: pgsql-es-ayuda@postgresql.org
>>
>> 2008/6/11 Gerardo Gonzalez :
>>> hola lista.. me pueden ayudar. como se puede hacer una funcion que
llame a
>>> otra funcion pero de forma dinamica., es decir, tengo una tabla q
tiene la
>>> sigte
estructura: create table funciones ( orden int , funcion
varchar(25) )
>>> con los siguientes datos orden | Funcion --------------------- 1 |
funcion1
>>> 2 | funcion2 y lo que necesito es crear una funcion q pueda
ejecutar las
>>> funciones que se indican en la tabla en el ordenque se indican.
Les
>>> agredezco su ayuda. gracias. atte., Gerardo.
>>
>> Puedes usar execute dentro de un pl/pgSql, con esta puedes ir armando
>> tu llamada con la cadena que consultes de la tabla de funciones.
>>
>> Por ejemplo:
>>
>> select into cadena_funcion funcion from funciones where .... ;
>>
>> execute cadena_funcion||'('||parametro||')';
>>
>>> ________________________________
>>> Ingresa ya a MSN en Concierto y disfruta los recitales en vivo de
tus
>>> artistas favoritos. MSN en
Concierto
>>
>>
>>
>> --
>> :: God bless you, every day and every night ::
>> --
>> TIP 5: ¿Has leído nuestro extenso FAQ?
>> http://www.postgresql.org/docs/faqs.FAQ.html
>
> _________________________________________________________________
> ¿Aburrido? Ingresa ya y diviertete como nunca en MSN Juegos.
> http://juegos.cl.msn.com/--
> TIP 10: no uses HTML en tu pregunta, seguro que quien responda no podrá
leerlo
_________________________________________________________________
Ingresa ya a MSN en Concierto y disfruta los recitales en vivo de tus artistas
favoritos.
http://msninconcert.msn.com/music/archive/es-la/archive.aspx--
TIP 7: no olvides aumentar la configuración del "free space map"
_________________________________________________________________
Ingresa ya a MSN Deportes y entérate de las últimas novedades del mundo deportivo.
http://msn.foxsports.com/fslasc/--
TIP 6: ¿Has buscado en los archivos de nuestra lista de correo?
No comments:
Post a Comment