Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » PostgreSQL »

llamadas dinamicas a funcion

Estas en el tema de llamadas dinamicas a funcion en el foro de PostgreSQL en Foros del Web. ayuda por favor.. Lo que estoy haciendo es: tengo una tabla que contiene nombres de funciones que se deben gatillar, esto lo hago a traves ...
  #1 (permalink)  
Antiguo 28/06/2008, 15:13
 
Fecha de Ingreso: octubre-2005
Mensajes: 28
Antigüedad: 19 años
Puntos: 1
llamadas dinamicas a funcion

ayuda por favor..
Lo que estoy haciendo es:

tengo una tabla que contiene nombres de funciones que
se deben gatillar, esto lo hago a traves de un cursor que
recorre las filas de la tabla de además las funciones
retornan un dato de tipo money:

Les muestro un extracto de la funcion:
Código PHP:
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);
   
v_par_cobro money;
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
el tema es que al ejecutarlo me señala un error:

Código PHP:
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:
1) p_gen_cargakihgo es la funcion que contiene el cursor q debe armar el llamado.
2) p_gen_interes('CL001',1,'gerardo') es la funcion que se arma y se debe ejecutar

Que estoy haciendo mal o existe optra manera de hacerlo?

Gracias de antemano.
Gerardo.
  #2 (permalink)  
Antiguo 01/07/2008, 01:27
 
Fecha de Ingreso: febrero-2007
Mensajes: 1.292
Antigüedad: 17 años, 9 meses
Puntos: 13
Respuesta: llamadas dinamicas a funcion

El problema es que falla la función (cerca de la linea 110).

Salu2
  #3 (permalink)  
Antiguo 01/07/2008, 01:28
 
Fecha de Ingreso: febrero-2007
Mensajes: 1.292
Antigüedad: 17 años, 9 meses
Puntos: 13
Respuesta: llamadas dinamicas a funcion

Note: The money type is deprecated. Use numeric or decimal instead, in combination with the to_char function.
  #4 (permalink)  
Antiguo 02/07/2008, 22:03
 
Fecha de Ingreso: octubre-2005
Mensajes: 28
Antigüedad: 19 años
Puntos: 1
Respuesta: llamadas dinamicas a funcion

eso del tipo money deprecated es para la version 8.2 yo estoy trabajando en la version 8.3 la cual no tiene ese problema.

y seiko se que el problema esta en la linea 110, pero ese tema ya lo solucione trabajando con un for ..execute

gracias.
  #5 (permalink)  
Antiguo 03/07/2008, 02:06
 
Fecha de Ingreso: febrero-2007
Mensajes: 1.292
Antigüedad: 17 años, 9 meses
Puntos: 13
Respuesta: llamadas dinamicas a funcion

Siempre prefiero un FOR para trabajar con cursores.

Cita:
eso del tipo money deprecated es para la version 8.2 yo estoy trabajando en la version 8.3 la cual no tiene ese problema.
Tienes razón, no lo sabia.

Salu2
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:38.