From: | José Fermín francisco ferreras <josefermin54(at)hotmail(dot)com> |
---|---|
To: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | trigger q no funcioná |
Date: | 2005-12-10 15:59:25 |
Message-ID: | BAY23-F89FD9F9B8585991BDCDF4C6440@phx.gbl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Hola foro, en dias anteriores me ayudaron (siempre agradecido d ustedes!!) a
hacer un trigger para calcular el porciento d ganancia d los articulos.
Los datos se tomaban d dos tablas: articulo y precio (un articulo puede
tener ningun, uno o muchos precios, por eso cree la tabla d precios), pero
no se porque no me funcionó.
Aquí les mando el trigger y las estructuras d las tablas.
CREATE OR REPLACE FUNCTION calcularganancia()
RETURNS "trigger" AS
$BODY$
DECLARE
costo_art numeric(11,2);
BEGIN
/* New function body */
SELECT INTO costo_art costo_art FROM miesquema.articulo
WHERE codigo_art = new.codigo_art;
new.porciento_pre := (new.precio_pre - costo_art) / costo_art * 100;
RETURN new;
END;
$BODY$
LANGUAGE 'plpgsql' STABLE;
ALTER FUNCTION calcularganancia() OWNER TO postgres;
CREATE TABLE miesquema.articulo
(
codigo_art int8 NOT NULL,
descripcion_art varchar,
referencia_art text,
costo_art numeric(11,2) DEFAULT 0.00,
codigo_gru int4,
existencia_art numeric(10,2) DEFAULT 0.00,
existenciaminima_art numeric(10,2) DEFAULT 0.00,
unidadmedida_art varchar(25),
fechavencimiento_art date,
ubicacion_art varchar(80),
CONSTRAINT articulo_pkey PRIMARY KEY (codigo_art),
CONSTRAINT articulo_codigo_gru_fkey FOREIGN KEY (codigo_gru)
REFERENCES grupo_articulo (codigo_gru) MATCH SIMPLE
ON UPDATE CASCADE ON DELETE SET NULL
)
WITH OIDS;
ALTER TABLE miesquema.articulo OWNER TO postgres;
CREATE TABLE miesquema.precio
(
codigo_pre int8 NOT NULL DEFAULT
nextval('precio_codigo_pre_seq'::regclass),
precio_pre numeric(11,2) DEFAULT 0.00,
porciento_pre numeric(5,2) DEFAULT 0.00,
itbis_pre numeric(8,2) DEFAULT 0.00,
codigo_art int8,
CONSTRAINT precio_pkey PRIMARY KEY (codigo_pre),
CONSTRAINT precio_codigo_art_fkey FOREIGN KEY (codigo_art)
REFERENCES miesquema.articulo (codigo_art) MATCH SIMPLE
ON UPDATE CASCADE ON DELETE SET NULL
)
WITH OIDS;
ALTER TABLE miesquema.precio OWNER TO postgres;
ing. José Fermín Francisco Ferreras
San Francisco de Macorís, Rep. Dom.
_________________________________________________________________
Visita MSN Latino Noticias: Todo lo que pasa en el mundo y en tu paín, ¡en
tu idioma! http://latino.msn.com/noticias/
From | Date | Subject | |
---|---|---|---|
Next Message | Mario Guerrero | 2005-12-10 16:14:51 | Diferencia de fechas |
Previous Message | Jaime Casanova | 2005-12-10 03:27:41 | Re: Probando el PITR |