# EVENTI_DET_OSPITI_TRG_AI ## Informazioni - **Tabella**: EVENTI_DET_OSPITI - **Evento**: UPDATE - **Tipo**: AFTER EACH ROW - **Stato**: ENABLED ## Codice Sorgente ```sql TRIGGER "APOLLINARECATERINGPROD"."EVENTI_DET_OSPITI_TRG_AI" --AFTER INSERT OR UPDATE OR DELETE ON EVENTI_DET_OSPITI AFTER UPDATE ON EVENTI_DET_OSPITI FOR EACH ROW -- solo update, tutti i tipi ospiti vengono inseriti con l'inserimento della testata dell'evento con QTA def = 0 declare v_cod_art varchar2(10); v_coeff number; v_ospiti number; v_azione varchar2(10); v_id_evento number; v_count number; BEGIN v_azione := ''; v_id_evento := nvl(:NEW.ID_EVENTO,:OLD.ID_EVENTO); --RAISE_APPLICATION_ERROR(-20001,'ididididididid: ' + to_char('hhhhhhhhhhh') ); if DELETING THEN --RAISE_APPLICATION_ERROR(-20000, ':NEW.NUMERO' || :NEW.NUMERO || ':OLD.NUMERO' || :OLD.NUMERO); v_azione := 'DELETE'; v_id_evento := :OLD.ID_EVENTO; elsif INSERTING THEN v_azione := 'INSERT'; v_id_evento := :NEW.ID_EVENTO; END IF; --/* --Controllo esistenza id testata (caso default righe dett) -- v_count := 0; -- select count(*) into v_count -- from eventi where id = :NEW.ID_EVENTO; -- if v_count > 0 then --RAISE_APPLICATION_ERROR(-20000,'id: ' + to_char(v_id_evento) + ' :NEW.NUMERO' || to_char(:NEW.NUMERO) || ' :OLD.NUMERO' || to_char(:OLD.NUMERO) + ' azione: ' + v_azione); --Calcola la qta tot ospiti di Testata: --EVENTI_AGGIORNA_N_OSPITI(v_id_evento,:NEW.NUMERO,:OLD.NUMERO,v_azione); -- end if; --*/ exception when others then RAISE_APPLICATION_ERROR(-20000, 'Errore: ' || SQLCODE || ' - ' || SUBSTR(SQLERRM, 1 , 64)); END; ```