egdb3_11_7
.authority
Tables
(current)
Columns
Constraints
Relationships
Orphan Tables
Anomalies
Routines
apply_propagate_changes(aid bigint, bid bigint)
Parameters
Name
Type
Mode
aid
bigint
IN
bid
bigint
IN
Definition
DECLARE bib_forced BOOL := FALSE; bib_rec biblio.record_entry%ROWTYPE; new_marc TEXT; BEGIN SELECT INTO bib_rec * FROM biblio.record_entry WHERE id = bid; new_marc := vandelay.merge_record_xml( bib_rec.marc, authority.generate_overlay_template(aid)); IF new_marc = bib_rec.marc THEN -- Authority record change had no impact on this bib record. -- Nothing left to do. RETURN aid; END IF; PERFORM 1 FROM config.global_flag WHERE name = 'ingest.disable_authority_auto_update_bib_meta' AND enabled; IF NOT FOUND THEN -- update the bib record editor and edit_date bib_rec.editor := ( SELECT editor FROM authority.record_entry WHERE id = aid); bib_rec.edit_date = NOW(); END IF; PERFORM action.set_queued_ingest_force('ingest.queued.biblio.update.disabled'); UPDATE biblio.record_entry SET marc = new_marc, editor = bib_rec.editor, edit_date = bib_rec.edit_date WHERE id = bid; PERFORM action.clear_queued_ingest_force(); RETURN aid; END;