aonestar
.public
Tables
(current)
Columns
Constraints
Relationships
Orphan Tables
Anomalies
Routines
sp_tr_guest_request_save_log
Parameters
Name
Type
Mode
Definition
DECLARE old_text text; new_text text; inc_name TEXT; BEGIN IF NOT is_log_started() THEN RETURN NULL; END IF; CASE TG_OP WHEN 'INSERT' THEN inc_name := (SELECT name FROM inclusion WHERE id = NEW.inclusion_id); new_text := fn_get_inclusion_desc(inc_name, NEW.qty, NEW.charge_rate, NEW.multiplier, NEW.frequency, NEW.start_date, NEW.end_date); PERFORM sp_append_log('* Add requirement: '||new_text); WHEN 'UPDATE' THEN IF (OLD.inclusion_id IS DISTINCT FROM NEW.inclusion_id) OR (OLD.qty IS DISTINCT FROM NEW.qty) OR (OLD.charge_rate IS DISTINCT FROM NEW.charge_rate) OR (OLD.multiplier IS DISTINCT FROM NEW.multiplier) OR (OLD.frequency IS DISTINCT FROM NEW.frequency) OR (OLD.start_date IS DISTINCT FROM NEW.start_date) OR (OLD.end_date IS DISTINCT FROM NEW.end_date) THEN inc_name := (SELECT name FROM inclusion WHERE id = NEW.inclusion_id); new_text := fn_get_inclusion_desc(inc_name, NEW.qty, NEW.charge_rate, NEW.multiplier, NEW.frequency, NEW.start_date, NEW.end_date); IF (OLD.inclusion_id <> NEW.inclusion_id) THEN inc_name := (SELECT name FROM inclusion WHERE id = OLD.inclusion_id); END IF; old_text := fn_get_inclusion_desc(inc_name, OLD.qty, OLD.charge_rate, OLD.multiplier, OLD.frequency, OLD.start_date, OLD.end_date); PERFORM sp_append_log(E'* Change requirement\n From: '||old_text||E'\n To : '||new_text); END IF; WHEN 'DELETE' THEN inc_name := (SELECT name FROM inclusion WHERE id = OLD.inclusion_id); old_text := fn_get_inclusion_desc(inc_name, OLD.qty, OLD.charge_rate, OLD.multiplier, OLD.frequency, OLD.start_date, OLD.end_date); PERFORM sp_append_log('* Delete requirement: '||old_text); ELSE END CASE; RETURN NULL; END