Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Trabajo Prctico
Despliegue DER Compra/Venta Moneda
Extranjera
Profesor
Jose Fernando Maubet Ferreira
Alumnos
Denis Omar Chaparro
Martin Victor Antonio Martinez Paredes
Luis Antonio Menchaca Ramirez
Maximiliano Gabriel Rodriguez Rodriguez
Indic
Diagrama de Entidad Relacionar (DER)
3
Polticas de la Base de Datos
4
Creacin de tablas, restricciones y disparadores
5
Scripts de Insercin de datos
30
);
-- Table: public.funcionario
-- Index: public.ifk_persona_funcionario
ON public.funcionario
USING btree
(cod_funcionario);
-- Table: public.pais
);
-- Table: public.sucursal
);
-- Table: public.moneda
);
-- Index: public.ifk_pais_moneda
ON public.moneda
USING btree
-- Table: public.boleta
);
-- Index: public.ifk_funcionario_boleta
ON public.boleta
USING btree
(cod_funcionario);
-- Index: public.ifk_persona_boleta
ON public.boleta
USING btree
(cod_persona);
-- Index: public.ifk_sucursal_boleta
ON public.boleta
USING btree
(cod_sucursal);
cambio_unitario_compra numeric,
total numeric,
);
-- Index: public.ifk_boleta_compra
ON public.compra
USING btree
(cod_boleta);
ON public.compra
USING btree
(cod_moneda);
-- Table: public.venta
cambio_unitario_venta integer,
total integer,
);
-- Index: public.ifk_boleta_venta
ON public.venta
USING btree
(cod_boleta);
-- Index: public.ifk_moneda_venta
ON public.venta
USING btree
(cod_moneda);
-- Function: public.tr_boleta_insert()
RETURNS trigger AS
$tr_boleta_insert$
DECLARE
BEGIN
RAISE EXCEPTION 'No se puede ingresar BOLETA con un estado distinto a PENDIENTE';
RETURN NEW;
END;
$tr_boleta_insert$
LANGUAGE plpgsql;
-- Function: public.tr_boleta_update()
RETURNS trigger AS
$tr_boleta_update$
DECLARE
cantidad_sub_tipo integer;
cantidad_aux integer;
moneda_aux integer;
BEGIN
END IF;
END IF;
END IF;
-- CONTROL DE SUBTIPO
END IF;
END IF;
END IF;
RETURN NEW;
END;
$tr_boleta_update$
LANGUAGE plpgsql;
-- Function: public.tr_compra_insert()
RETURNS trigger AS
$tr_compra_insert$
DECLARE
cod_boleta_aux integer;
BEGIN
NEW.cambio_unitario_compra = valor_unitario;
RETURN NEW;
END;
$tr_compra_insert$
LANGUAGE plpgsql;
-- Function: public.tr_compra_update()
RETURNS trigger AS
$tr_compra_update$
DECLARE
valor_unitario_compra integer;
BEGIN
END IF;
END IF;
END IF;
NEW.cambio_unitario_compra = valor_unitario_compra;
RETURN NEW;
END;
$tr_compra_update$
LANGUAGE plpgsql;
RETURNS trigger AS
$tr_delete$
DECLARE
BEGIN
END;
$tr_delete$
LANGUAGE plpgsql;
-- Function: public.tr_moneda()
RETURNS trigger AS
$tr_moneda$
DECLARE
BEGIN
NEW.fec_hora_actualizacion = current_date;
RETURN NEW;
END;
$tr_moneda$
-- Function: public.tr_venta_insert()
RETURNS trigger AS
$tr_venta_insert$
DECLARE
cod_boleta_aux integer;
valor_unitario integer;
BEGIN
NEW.cambio_unitario_venta = valor_unitario;
RETURN NEW;
END;
$tr_venta_insert$
LANGUAGE plpgsql;
RETURNS trigger AS
$tr_venta_update$
DECLARE
valor_unitario_venta integer;
valor_estado varchar;
BEGIN
END IF;
END IF;
END IF;
NEW.cambio_unitario_venta = valor_unitario_venta;
RETURN NEW;
END;
$tr_venta_update$
LANGUAGE plpgsql;
BEFORE DELETE
ON public.venta
BEFORE INSERT
ON public.venta
BEFORE UPDATE
ON public.venta
ON public.moneda
ON public.compra
BEFORE UPDATE
ON public.compra
BEFORE DELETE
ON public.boleta
BEFORE INSERT
ON public.boleta
BEFORE UPDATE
ON public.boleta
-- MONEDA
--PERSONA
--FUNCIONARIO
--SUCURSAL
--BOLETA
--COMPRA
--VENTA