Ver Mensaje Individual
  #2 (permalink)  
Antiguo 11/04/2007, 14:52
rusinho
 
Fecha de Ingreso: agosto-2006
Mensajes: 179
Antigüedad: 17 años, 8 meses
Puntos: 0
Re: como pasar parametros cuando quiero ejecutar una funcion

Es sencillo solo coloca algo como lo siguiente:

CREATE OR REPLACE FUNCTION abmusuarios(tipo1 smallint,codigo1 character,paterno1 "character varying",materno1 "character varying",nombre1 "character varying",usuario1 "character varying",clave1 "character varying",categoria1 smallint,estado1 character,clave2 "character varying")
RETURNS void AS
$BODY$declare
BEGIN
IF tipo1 = 1 THEN BEGIN
clave2 := md5(clave1);
INSERT INTO empleado (codigo,paterno,materno,nombre,usuario,clave,categ oria,estado) VALUES (codigo1,paterno1,materno1,nombre1,usuario1,clave2 ,categoria1,estado1);
ELSE
clave2:=md5(clave1);
UPDATE empleado SET codigo=codigo1,paterno=paterno1,materno=materno1,n ombre=nombre1,usuario=usuario1,clave=clave2,catego ria=categoria1,estado=estado1 WHERE usuario=usuario1;
END IF;
RETURN;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE;
ALTER FUNCTION abmusuarios(tipo1 smallint,codigo1 character,paterno1 "character varying",materno1 "character varying",nombre1 "character varying",usuario1 "character varying",clave1 "character varying",categoria1 smallint,estado1 character,clave2 "character varying") OWNER TO postgres;

y para ejecutar la funcion:

select abmusuarios(1,'cod1','pat1','mat1','nom1','user1', 'cla1',1,'est1','cla2');

Y listo asi te debe funcionar.

Espero te funcione.