DBA Data[Home] [Help]

TRIGGER: APPS.CZ_ITEM_PROPERTY_VALUES_T2

Source

Description
CZ_ITEM_PROPERTY_VALUES_T2
  BEFORE UPDATE OR DELETE
 ON CZ_ITEM_PROPERTY_VALUES
 REFERENCING OLD AS OLD NEW AS NEW
 FOR EACH ROW
Type
BEFORE EACH ROW
Event
UPDATE OR DELETE
Column
When
Referencing
REFERENCING NEW AS NEW OLD AS OLD
Body
BEGIN
IF((DELETING AND NVL(:old.DELETED_FLAG, '0') = '0') OR
   ((NVL(:new.DELETED_FLAG, 0) <> NVL(:old.DELETED_FLAG, 0)) OR
    (NVL(:new.PROPERTY_VALUE, 0) <> NVL(:old.PROPERTY_VALUE, 0)) OR
    (NVL(:new.PROPERTY_NUM_VALUE, 0) <> NVL(:old.PROPERTY_NUM_VALUE, 0))))THEN

--This may update more models than necessary. A model may use a property of a ps_node_id not as
--the item_id's property, but as an item_type_id's property, or ps_node_id's property. However,
--it is not always possible to determine until the generation time.

UPDATE cz_devl_projects SET last_logic_update = SYSDATE,
       post_migr_change_flag = DECODE(post_migr_change_flag, 'N', 'R', 'Z', 'R', post_migr_change_flag)
 WHERE deleted_flag = '0'
   AND devl_project_id IN (
    SELECT devl_project_id FROM cz_rules
     WHERE deleted_flag = '0'
       AND disabled_flag = '0'
       AND rule_id IN (
        SELECT rule_id FROM cz_expression_nodes
         WHERE deleted_flag = '0'
           AND expr_type = 207
           AND property_id = :old.property_id
       )
   );
END IF;
END;