Oracle - triggers

   
Vista:

triggers

Publicado por carlos (2 intervenciones) el 16/07/2017 00:51:57
necesito ayuda urgente porfavor ayudenmeee lo mas pronto posible
necesito hacer un trigger que se active despues de insertar un registo

estas son las tablas

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
create table vendedor(
id_vendedor number(5) primary key,
primer_nombre varchar2(20),
apell_paterno varchar2(25),
fecha_contrato date,
estado varchar2(15))
 
create table boleta(
nro_boleta number(8) primary key,
fecha_boleta date,
monto_boleta number(8),
id_vendedor references vendedor,
estado varchar2(15))
 
create table venta_mes(
id_venta_mes number(8) primary key,
id_vendedor references vendedor,
nro_boleta references boleta,
estado varchar2(15),
comision_venta number(8))

esto es lo que me piden:

Cuando se inserte una nueva Boleta el Trigger debe calcular la comisión de la venta e insertar una nueva fila en tabla VENTA_MES. La comisión de la venta corresponde al 13% del Monto Total de la Boleta.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

triggers

Publicado por Jose (16 intervenciones) el 17/07/2017 14:40:22
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
CREATE OR REPLACE TRIGGER TR_VENTA_MES
  AFTER INSERT ON BOLETA
  REFERENCING NEW AS NEW OLD AS OLD
  FOR EACH ROW
DECLARE
  V_COMISION   NUMBER;
  VALOR_MAXIMO NUMBER;
BEGIN
  IF INSERTING THEN
    V_COMISION := (13 * :NEW.MONTO_BOLETA) / 100;
    BEGIN
      SELECT NVL(MAX(ID_VENTA_MES), 0) + 1
        INTO VALOR_MAXIMO
        FROM VENTA_MES;
    END;
    INSERT INTO VENTA_MES
      (ID_VENTA_MES, ID_VENDEDOR, NRO_BOLETA, ESTADO, COMISION_VENTA)
    VALUES
      (VALOR_MAXIMO, :NEW.ID_VENDEDOR, :NEW.NRO_BOLETA, :NEW.ESTADO, V_COMISION);
  END IF;
END;


Espero que te sirva, entendí algo así

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de ELVIS STALYN MUÑOZ PRUNA

triggers

Publicado por ELVIS STALYN MUÑOZ PRUNA servitecniec@gmail.com (70 intervenciones) el 17/07/2017 15:59:26
No comprendo el porqué del FORO ya que se debería tratar de ayudar a la comunidad a resolver nuevos problemas que ayuden a desarollar algo nuevo en oracle o con ideas para la solución de la novedad y no ayudar a hacer la tarea.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

triggers

Publicado por Marcela (1 intervención) el 17/07/2017 23:56:38
Consulta, de la misma pregunta que hiciste, cómo puedo realizar la actualización .
Después de lo que realizaste, si piden esto, como debería ser?
Cuando se actualice el Monto Total de una boleta el Trigger debe actualizar tabla VENTA_MES asignando como comisión de la venta el 13% del nuevo Monto Total correspondiente a la boleta.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Revisar política de publicidad